CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions
RKSolver< T, N > Class Template Referenceabstract

ABC for Runge-Kutta solvers. More...

#include <RKSolver.h>

Inheritance diagram for RKSolver< T, N >:
RK4PreciseSolver< T, N > RKAdaptiveSolver< T, StepWithPrec, N >

Public Types

typedef T Scalar
 
typedef RKSmallVector< T, N > Vector
 

Public Member Functions

virtual Vector operator() (Scalar startPar, const Vector &startState, Scalar step, const RKDerivative< T, N > &deriv, const RKDistance< T, N > &dist, Scalar eps)=0
 
virtual ~RKSolver ()
 

Detailed Description

template<typename T, int N>
class RKSolver< T, N >

ABC for Runge-Kutta solvers.

Definition at line 11 of file RKSolver.h.

Member Typedef Documentation

template<typename T , int N>
typedef T RKSolver< T, N >::Scalar

Definition at line 14 of file RKSolver.h.

template<typename T , int N>
typedef RKSmallVector<T,N> RKSolver< T, N >::Vector

Definition at line 15 of file RKSolver.h.

Constructor & Destructor Documentation

template<typename T , int N>
virtual RKSolver< T, N >::~RKSolver ( )
inlinevirtual

Definition at line 17 of file RKSolver.h.

17 {}

Member Function Documentation

template<typename T , int N>
virtual Vector RKSolver< T, N >::operator() ( Scalar  startPar,
const Vector startState,
Scalar  step,
const RKDerivative< T, N > &  deriv,
const RKDistance< T, N > &  dist,
Scalar  eps 
)
pure virtual

Advance starting state (startPar,startState) by step. The accuracy of the result should be better than eps. The accuracy is computed as the distance (using the "dist" argument) between different internal estimates of the resulting state. The "deriv" argument computes the derivatives.

Implemented in RKAdaptiveSolver< T, StepWithPrec, N >, and RK4PreciseSolver< T, N >.