boost::numeric::odeint::integrate — Integrates the ODE.
// In header: <boost/numeric/odeint/integrate/integrate.hpp> template<typename System, typename State, typename Time, typename Observer> boost::enable_if< typename has_value_type< State >::type, size_t >::type integrate(System system, State & start_state, Time start_time, Time end_time, Time dt, Observer observer);
Integrates the ODE given by system from start_time to end_time starting with start_state as initial condition and dt as initial time step. This function uses a dense output dopri5 stepper and performs an adaptive integration with step size control, thus dt changes during the integration. This method uses standard error bounds of 1E-6. After each step, the observer is called.
Note | |
---|---|
A second version of this function template exists which explicitly expects the value type as template parameter, i.e. integrate< double >( sys , x , t0 , t1 , dt , obs ); |
Parameters: |
|
||||||||||||
Returns: |
The number of steps performed. |