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

Make iteration more robust and give more options in LaplaceNaulin #3061

Merged
merged 4 commits into from
Jan 17, 2025

Conversation

johnomotani
Copy link
Contributor

I found this old branch. Maybe it's still useful? I have no time to test/update now though, so if it needs work, volunteers needed!

Previously a cycle decreasing the underrelax_factor was triggered if the error increased on an iteration. However sometimes it can be more robust to just continue the iteration with moderate increases in the error - there are cases when decreasing the underrelax_factor never results in a decreasing error, but continuing the main iteration loop for a few steps would. This commit tries to handle this kind of case, with several new parameters which can be adjusted to control how and when underrelax_factor is decreased.

Also documents more options.

Previously a cycle decreasing the underrelax_factor was triggered if the
error increased on an iteration. However sometimes it can be more robust
to just continue the iteration with moderate increases in the error -
there are cases when decreasing the underrelax_factor never results in a
decreasing error, but continuing the main iteration loop for a few steps
would. This commit tries to handle this kind of case, with several new
parameters which can be adjusted to control how and when
underrelax_factor is decreased.
@bendudson
Copy link
Contributor

Thanks, @johnomotani ! I'm using the Naulin solver for electromagnetic Hermes-3 simulations so will try this out. I added #2983 a while ago that does something a bit similar: It tries to reach a given atol/rtol, but if they are not reached after maxits iterations then it will accept a looser tolerance. Often the error will be go back down on the next call / time step.

@bendudson bendudson merged commit 5d4ee04 into next Jan 17, 2025
1 check passed
@bendudson bendudson deleted the naulin-laplace-upgrades branch January 17, 2025 18:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants