Lodestar
An integrated real-time control package in C++
ls::primitives::RungeKuttaFehlberg78< TType, TScalarType > Class Template Reference

Public Types

typedef std::function< TType(TScalarType, TType)> TDFunction
 

Static Public Member Functions

static void integrateSimple (const TDFunction &f, TScalarType &t, TType &y, TScalarType h, size_t N=1)
 Simple integration using the eighth-order scheme in the Runge-Kutta-Fehlberg method. More...
 
static TType integrateEmbedded (const TDFunction &f, TScalarType &t, TType &y, TScalarType h, size_t N=1)
 Integrate using the Runge-Kutta-Fehlberg method (rk78) with truncation error output. More...
 

Static Public Attributes

static const short int kLowerErrorOrder = 7
 
static const short int kLigherErrorOrder = 8
 
static const short int kStages = 13
 

Member Function Documentation

◆ integrateEmbedded()

template<typename TType , typename TScalarType >
TType ls::primitives::RungeKuttaFehlberg78< TType, TScalarType >::integrateEmbedded ( const TDFunction &  f,
TScalarType &  t,
TType &  y,
TScalarType  h,
size_t  N = 1 
)
static

Integrate using the Runge-Kutta-Fehlberg method (rk78) with truncation error output.

Parameters
fFunction to be integrated.
tInitial time.
yInitial state.
hIntegration step.
NNumber of integration scheme executions.
Returns
Local truncation error.

◆ integrateSimple()

template<typename TType , typename TScalarType >
void ls::primitives::RungeKuttaFehlberg78< TType, TScalarType >::integrateSimple ( const TDFunction &  f,
TScalarType &  t,
TType &  y,
TScalarType  h,
size_t  N = 1 
)
static

Simple integration using the eighth-order scheme in the Runge-Kutta-Fehlberg method.

Parameters
fFunction to be integrated.
tInitial time.
yInitial state.
hIntegration step.
NNumber of integration scheme executions.

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