CMS 3D CMS Logo

Public Types | Public Member Functions | Protected Member Functions

RK4PreciseSolver< T, N > Class Template Reference

#include <RK4PreciseSolver.h>

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

List of all members.

Public Types

typedef RKSolver< T, N > Base
typedef Base::Scalar Scalar
typedef Base::Vector 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)
std::pair< Vector, T > stepWithAccuracy (Scalar startPar, const Vector &startState, const RKDerivative< T, N > &deriv, const RKDistance< T, N > &dist, Scalar step)

Protected Member Functions

bool verbose () const

Detailed Description

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

Definition at line 8 of file RK4PreciseSolver.h.


Member Typedef Documentation

template<typename T , int N>
typedef RKSolver<T,N> RK4PreciseSolver< T, N >::Base

Definition at line 11 of file RK4PreciseSolver.h.

template<typename T , int N>
typedef Base::Scalar RK4PreciseSolver< T, N >::Scalar

Reimplemented from RKSolver< T, N >.

Definition at line 12 of file RK4PreciseSolver.h.

template<typename T , int N>
typedef Base::Vector RK4PreciseSolver< T, N >::Vector

Reimplemented from RKSolver< T, N >.

Definition at line 13 of file RK4PreciseSolver.h.


Member Function Documentation

template<typename T , int N>
virtual Vector RK4PreciseSolver< T, N >::operator() ( Scalar  startPar,
const Vector startState,
Scalar  step,
const RKDerivative< T, N > &  deriv,
const RKDistance< T, N > &  dist,
Scalar  eps 
) [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.

Implements RKSolver< T, N >.

template<typename T , int N>
std::pair< Vector, T> RK4PreciseSolver< T, N >::stepWithAccuracy ( Scalar  startPar,
const Vector startState,
const RKDerivative< T, N > &  deriv,
const RKDistance< T, N > &  dist,
Scalar  step 
)
template<typename T , int N>
bool RK4PreciseSolver< T, N >::verbose ( ) const [inline, protected]

Definition at line 27 of file RK4PreciseSolver.h.

References relativeConstraints::value.

                         {
        static bool verb = SimpleConfigurable<bool>(false,"RKSolver:verbose").value();
        return verb;
    }