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

Adaptive timestepping control #131

Open
henry2004y opened this issue Jan 31, 2024 · 1 comment
Open

Adaptive timestepping control #131

henry2004y opened this issue Jan 31, 2024 · 1 comment
Labels
help wanted Extra attention is needed

Comments

@henry2004y
Copy link
Owner

henry2004y commented Jan 31, 2024

When I tried to reproduce a previous Ganymede tracing results with Vern9() using recent versions of OrdinaryDiffEq.jl, I noticed that the performance deceased a lot. After investigating the issue, I noticed that the adaptive timestepping control must have changed between versions, because most of the time is spent in advancing with extremely small dt near the planet boundary where the magnetic field becomes stronger and isoutofdomain may take place.

According to the common solver options, one possible fix to recover the previous speed performance is to set a dtmin. This needs further testing.

P.S. I don't really understand how the adaptive timestepping schemes work.

@henry2004y henry2004y added the help wanted Extra attention is needed label Jan 31, 2024
@henry2004y
Copy link
Owner Author

For the Boris pusher, we can try the adaptive timestepping scheme implemented in FLEKS. Instead of using characteristic wave speeds, we can use local gyroperiod to limit the timesteps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant