CMS 3D CMS Logo

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, NVector
 

Public Member Functions

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

Detailed Description

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

ABC for Runge-Kutta solvers.

Definition at line 14 of file RKSolver.h.

Member Typedef Documentation

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

Definition at line 17 of file RKSolver.h.

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

Definition at line 18 of file RKSolver.h.

Constructor & Destructor Documentation

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

Definition at line 20 of file RKSolver.h.

20 {}

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,
float  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 >.