The freude
crate will provide steppers and integrators to solve ODEs
(ordinary differential equations). It is inspired by boost::numeric::odeint
.
- Explicit fixed-step ODE solvers:
- Euler
- Heun
- Classical 4-th order Runge Kutta (RK4)
- Implicit methods
- Adaptive steppers
- DOPRI, RKF45
- Symplectic solvers
- Generalized Runge Kutta methods (maybe via Butcher tableaus?)
- 0.7.0
- Require Debug bounds on the steppers (breaking change)
- 0.6.0
- Update ergonomics
- 0.5.0
- Require
ndarray
0.11, bump all related dependencies
- Require
- 0.4.0-dev
- Update benchmarks to work with v0.4.0
- 0.4.0
- Complete rework and simplification of the
Ode
andStepper
logicStepper
no longer contains anOde
system but acts onOde::State
borrows- Removal of
Integrator
: absorbed intoStepper
- Removal of
Observer
trait
- Bump to
ndarray 0.10
- Complete rework and simplification of the
- 0.3.1
- Implement steppers to work on tuples as defined in the tuple crate;
- Implement
ODE
trait for generic functions/closures on tuples.
- 0.3.0
- Update to
ndarray 0.9
- Unify
Vec
andArrayBase
stepper states throughndarray
'sZip
andIntoNdProducer
traits - Provide several examples as benchmarks (Kuramoto and Chaotic Neural Network models)
- Update to
- 0.2.0
- Complete rework of the ODE, stepper, and integrator logic;
- System state is no longer considered an internal property of an ODE, but a parameter passed to the stepper.
- 0.1.1
- Implement Euler and Heun methods
- 0.1.0
- Initial release
- Definition of explicit, fixed step integrators, steppers
- Definition of ODEs
- Implementation of Runge-Kutta-4 method
The crate's name freude
is inspired by Beethoven's Ode an die Freude (“Ode to
Joy”), and can be pronounced either /ˈfʀɔɪ̯də/ or, alternatively, froy-D-E (as
in O-D-E).