PrevUpHomeNext

Error Stepper

This concepts specifies the interface an error stepper has to fulfill to be used within a ControlledErrorStepper.

Description

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.

Notation

ErrorStepper

A type that is a model of Error Stepper

State

A type representing the state x of the ODE

Error

A type representing the error calculated by the stepper, usually same as State

Time

A 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

sys

An object defining the ODE, should be a model of either System, Symplectic System, Simple Symplectic System or Implicit System.

Valid Expressions

Name

Expression

Type

Semantics

Do step

stepper.do_step( sys , x , t , dt , xerr )

void

Performs one step of step size dt with error estimation. The newly obtained state is written in-place to x and the estimated error to xerr.

Do step with reference

stepper.do_step( boost::ref(sys) , x , t , dt , xerr )

void

Performs one step of step size dt. The newly obtained state is written in-place to x and the estimated error to xerr.

Models

PrevUpHomeNext