|  | Home | Libraries | People | FAQ | More | 
This concepts specifies the interface an error stepper has to fulfill to be used within a ControlledErrorStepper. An error stepper must always fulfill the stepper concept. This can trivially implemented by
template< class System > error_stepper::do_step( System sys , state_type &x , time_type t , time_type dt ) { state_type xerr; // allocate xerr do_step( sys , x , t , dt , xerr ); }
An error stepper following this Error Stepper concept is capable of doing one step of the solution x(t) of an ODE with step-size dt to obtain x(t+dt) and also computing an error estimate xerr of the result. Error Steppers can be Runge-Kutta steppers, symplectic steppers as well as implicit steppers. Based on the stepper type, the ODE is defined as System, Symplectic System, Simple Symplectic System or Implicit System.
state_type
Stepper::state_type
The type characterizing the state of the ODE, hence x.
deriv_type
Stepper::deriv_type
The type characterizing the derivative of the ODE, hence d x/dt.
time_type
Stepper::time_type
The type characterizing the dependent variable of the ODE, hence the time t.
value_type
Stepper::value_type
The
            numerical data type which is used within the stepper, something like
            float, double,
            complex< double >.
order_type
Stepper::order_type
The
            type characterizing the order of the ODE, typically unsigned
            short.
stepper_category
Stepper::stepper_category
A
            tag type characterizing the category of the stepper. This type must be
            convertible to error_stepper_tag.
ErrorStepperA type that is a model of Error Stepper
StateA type representing the state x of the ODE
Error
              A type representing the error calculated by the stepper, usually same
              as State
            
TimeA type representing the time t of the ODE
stepper
              An object of type ErrorStepper
            
x
              Object of type State
            
xerr
              Object of type Error
            
t, dt
              Objects of type Time
            
sysAn object defining the ODE, should be a model of either System, Symplectic System, Simple Symplectic System or Implicit System.
| Name | Expression | Type | Semantics | 
|---|---|---|---|
| Get the stepper order | 
                   | 
                   | Returns the order of the stepper for one step without error estimation. | 
| Get the stepper order | 
                   | 
                   | Returns the order of the stepper for one error estimation step which is used for error calculation. | 
| Get the error order | 
                   | 
                   | Returns the order of the error step which is used for error calculation. | 
| Do step | 
                   | 
                   | 
                  Performs one step of step size  | 
| Do step with error estimation | 
                   | 
                   | 
                  Performs one step of step size  | 
runge_kutta_cash_karp54
          runge_kutta_dopri5
          runge_kutta_fehlberg78
          rosenbrock4