CMS 3D CMS Logo

Public Types | Public Member Functions

RKSolver< T, N > Class Template Reference

ABC for Runge-Kutta solvers. More...

#include <RKSolver.h>

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

List of all members.

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

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

Definition at line 14 of file RKSolver.h.

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

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

Definition at line 15 of file RKSolver.h.


Constructor & Destructor Documentation

template<typename T , int N>
virtual RKSolver< T, N >::~RKSolver ( ) [inline, virtual]

Definition at line 17 of file RKSolver.h.

{}

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 RK4PreciseSolver< T, N >, and RKAdaptiveSolver< T, StepWithPrec, N >.