Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Couple pyro and pySDC #200

Open
brownbaerchen opened this issue May 27, 2024 · 1 comment
Open

Couple pyro and pySDC #200

brownbaerchen opened this issue May 27, 2024 · 1 comment

Comments

@brownbaerchen
Copy link

Hello!
I am working on a prototyping framework on spectral deferred corrections called pySDC. Our main focus is parallel-in-time methods such as diagonal SDC or PFASST.
I think it would be nice to get some hydrodynamics test problems in there and @guadabsb15 recommended pyro for this! I see there is some SDC already in pyro.

To implement a problem in pySDC, we basically need two things: A function that returns the right hand side evaluation given the current solution and time and a function that does implicit solves or semi implicit solves given the current solution and time, some right hand side and a step size.

I haven't really looked into the code, but I want to ask if there is a possibility to get such an interface working without too much effort.
I am not an expert on CDF, nor do I have too much time for this right now. But if you are interested in parallel-in-time methods, maybe we can collaborate on this at some point. Once this is in pySDC, it is very easy to measure speedup both in terms of right hand side evaluations as well as wall time using mpi4py. We also run pySDC on GPUs very successfully using cupy as a replacement for numpy. Maybe this could be integrated in pyro with reasonable effort as well. Note that the method introduced in the diagonal SDC paper mentioned above can be quite effective for hyperbolic problems.
pySDC also allows to do more elaborate things in the time stepping. And @lisawim is currently working on SDC for DAEs, which would be useful for some problems.

I am looking forward to hearing from you!
Best,
Thomas

@zingale
Copy link
Collaborator

zingale commented May 27, 2024

Hi Thomas, the SDC solver in pyro implements the pure-hydro solver from this paper:
https://iopscience.iop.org/article/10.3847/1538-4357/ab4e1d

it does 2nd or 4th-order finite-volume reconstruction.

pyro does not include any reactive sources, so the update is purely explicit. There is a function that will return the update needed for the explicit update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants