You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
During the original implementation of CyRK I misunderstood how the minimum step size check was supposed to work. Scipy defines the minimum step size based on the actual value of time,
whereas CyRK originally had a constant step size based off of the floating point error,
defines the minimum step size based on the actual value of time,
This latter approach works for when t is close to zero, but is not accurate when t is far from zero since the number of floats between numbers decreases at higher values.
Since min_step is used to set the step_size from becoming too small during integration - having an incorrect value could lead to incorrect or unexpected behavior.
This bug affects both the cyrk_ode and nbrk_ode.
The text was updated successfully, but these errors were encountered:
jrenaud90
changed the title
"next after" potential bug
Min Step Size Bug
Mar 28, 2023
* Fixed min step bug in `nbrk_ode` and `cyrk_ode` (Fixes Issue #20)
* Minor performance improvements for `cyrk_ode`
* Removed fastmath for `nbrk_ode` (Created Issue #24)
Major Changes:
- Fix for Issue #20
- Fix for Issue #3
- Minor performance improvements
- Additional tests
- Refactors and cleanups for `cyrk_ode`
---------
Co-authored-by: David Meyer <dihm@users.noreply.github.com>
During the original implementation of CyRK I misunderstood how the minimum step size check was supposed to work. Scipy defines the minimum step size based on the actual value of time,
whereas CyRK originally had a constant step size based off of the floating point error,
defines the minimum step size based on the actual value of time,
This latter approach works for when t is close to zero, but is not accurate when t is far from zero since the number of floats between numbers decreases at higher values.
Since
min_step
is used to set the step_size from becoming too small during integration - having an incorrect value could lead to incorrect or unexpected behavior.This bug affects both the
cyrk_ode
andnbrk_ode
.The text was updated successfully, but these errors were encountered: