PrevUpHomeNext

Function template integrate_times

boost::numeric::odeint::integrate_times — Integrates the ODE with observer calls at given time points.

Synopsis

// In header: <boost/numeric/odeint/integrate/integrate_times.hpp>


template<typename Stepper, typename System, typename State, 
         typename TimeIterator, typename Time, typename Observer> 
  size_t integrate_times(Stepper stepper, System system, State & start_state, 
                         TimeIterator times_start, TimeIterator times_end, 
                         Time dt, Observer observer);

Description

Integrates the ODE given by system using the given stepper. This function does observer calls at the subsequent time points given by the range times_start, times_end. If the stepper has not step size control, the step size might be reduced occasionally to ensure observer calls exactly at the time points from the given sequence. If the stepper is a ControlledStepper, the step size is adjusted to meet the error bounds, but also might be reduced occasionally to ensure correct observer calls. If a DenseOutputStepper is provided, the dense output functionality is used to call the observer at the given times. The end time of the integration is always *(end_time-1).

Parameters:

dt

The time step between observer calls, not necessarily the time step of the integration.

observer

Function/Functor called at equidistant time intervals.

start_state

The initial condition x0.

stepper

The stepper to be used for numerical integration.

system

Function/Functor defining the rhs of the ODE.

times_end

Iterator to the end time

times_start

Iterator to the start time

Returns:

The number of steps performed.


PrevUpHomeNext