adevs
Public Member Functions | List of all members
adevs::corrected_euler< X > Class Template Reference

#include <adevs_corrected_euler.h>

Inheritance diagram for adevs::corrected_euler< X >:
adevs::ode_solver< X >

Public Member Functions

 corrected_euler (ode_system< X > *sys, double err_tol, double h_max)
 
 ~corrected_euler ()
 Destructor.
 
double integrate (double *q, double h_lim)
 
void advance (double *q, double h)
 
- Public Member Functions inherited from adevs::ode_solver< X >
 ode_solver (ode_system< X > *sys)
 
virtual ~ode_solver ()
 Destructor.
 

Additional Inherited Members

- Protected Attributes inherited from adevs::ode_solver< X >
ode_system< X > * sys
 

Detailed Description

template<typename X>
class adevs::corrected_euler< X >

This is the second order accurate RK2 method with adaptive step sizing for error control.

Constructor & Destructor Documentation

template<typename X >
adevs::corrected_euler< X >::corrected_euler ( ode_system< X > *  sys,
double  err_tol,
double  h_max 
)

Create an integrator that will use the specified per step error tolerance and maximum step size.

References adevs::ode_system< X >::numVars().

Member Function Documentation

template<typename X >
void adevs::corrected_euler< X >::advance ( double *  q,
double  h 
)
virtual

Advance the system through exactly h units of time.

Implements adevs::ode_solver< X >.

template<typename X >
double adevs::corrected_euler< X >::integrate ( double *  q,
double  h_lim 
)
virtual

Take an integration step from state q of at most size h_lim and return the step size that was actually used. Copy the result of the integration step to q.

Implements adevs::ode_solver< X >.


The documentation for this class was generated from the following file: