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

Internal: Move error-scaling (by the error contraction rate) outside of the controller implementations #795

Merged
merged 10 commits into from
Oct 25, 2024

Conversation

pnkraemer
Copy link
Owner

The controllers are functions of the error, but not the error estimate itself; rather, the error is normalised by atol, rtol, and a current estimate and scaled by the error contraction rate.

This PR applies the error-contraction-rate scaling inside adaptive.rejection_loop() instead of controller.apply(), which reduces the number of arguments of the latter. It also fits better with error normalisation, which already happens in the adaptive solver.

This change is internal. Users are not affected (unless they use the controllers for something non-probdiffeq related, which I find very unlikely)

@pnkraemer pnkraemer merged commit a64ff3b into main Oct 25, 2024
6 checks passed
@pnkraemer pnkraemer deleted the scale-errors-outside-controllers branch October 25, 2024 17:37
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

Successfully merging this pull request may close these issues.

1 participant