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

Add diffrax time integrators #185

Open
Tracked by #221
astanziola opened this issue Jun 23, 2023 · 0 comments
Open
Tracked by #221

Add diffrax time integrators #185

astanziola opened this issue Jun 23, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@astanziola
Copy link
Member

The current time integrator is only "optimal" for FourierSeries fields thanks to the k-space operator correction. For finite differences, it would probably be better to allow the user to experiment with different kind of integrators.

This is a good reason for using diffrax as the main ODE integrator library for time domain solvers.

Another good reason would be to expose to the user the advanced checkpointing methods enabled by diffrax.

An initial attempt to code the modified semi-implicit Eluer integrator used by the k-space equations is here: https://github.com/astanziola/diffrax/blob/main/diffrax/solver/semi_implicit_euler.py
It works pretty well, timings are roughly the same, and checkpointing works.

The API needs to be changed to make sure that the user can generally choose his favorite integrator.

@astanziola astanziola added the enhancement New feature or request label Jun 23, 2023
@astanziola astanziola self-assigned this Jun 23, 2023
@astanziola astanziola mentioned this issue Nov 24, 2023
12 tasks
@astanziola astanziola added this to the Version 0.2 milestone Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant