CAPD DynSys Library
5.2.0
|
MapT constraints: type definitions: More...
#include <capd/dynsys/BasicOdeSolver.h>
Public Types | |
typedef MapT | VectorFieldType |
typedef StepControlT | StepControlType |
typedef VectorFieldType::FunctionType | FunctionType |
typedef VectorFieldType::MatrixType | MatrixType |
typedef MatrixType::RowVectorType | VectorType |
typedef MatrixType::ScalarType | ScalarType |
typedef MatrixType::size_type | size_type |
typedef CurveT | SolutionCurve |
typedef VectorFieldType::JetType | JetType |
typedef JetType::Multipointer | Multipointer |
typedef JetType::Multiindex | Multiindex |
typedef TypeTraits< ScalarType >::Real | Real |
typedef Hessian< ScalarType, VectorType::csDim, VectorType::csDim > | HessianType |
typedef __difference_type | difference_type |
typedef VectorType::iterator | iterator |
typedef VectorType::const_iterator | const_iterator |
Public Member Functions | |
BasicOdeSolver (VectorFieldType &field, size_type order, const StepControlT &stepControl=StepControlT()) | |
VectorType | operator() (VectorType) |
Computes image of vector v after one time step. More... | |
VectorType | operator() (ScalarType &t, const VectorType &u) |
Computes image of vector v after one time step. The argument t is updated in this procedure. More... | |
VectorType | operator() (VectorType, MatrixType &o_resultDerivative) |
Computes image of vector v and derivatives of the flow with respect to init condition (v,identity). Version for autonomous systems. More... | |
VectorType | operator() (ScalarType &t, const VectorType &, MatrixType &o_resultDerivative) |
Computes image of vector v and derivatives of the flow with respect to init condition (v,identity). Version for nonautonomous systems. The argument t is updated in this procedure. More... | |
VectorType | operator() (VectorType, const MatrixType &derivative, MatrixType &o_resultDerivative) |
Computes image of vector v and derivatives of a flow with respect to init condition (v, derivative) More... | |
VectorType | operator() (ScalarType &t, const VectorType &v, const MatrixType &derivative, MatrixType &o_resultDerivative) |
Computes image of vector v and derivatives of a flow with respect to init condition (v, derivative). The argument t is updated in this procedure. More... | |
template<typename JetT > | |
void | operator() (JetT &jet) |
This operator computes image of the set (in given representation) using set.move function, see capd/dynsys/Move.h for details This template together with SetTraits prevent usage of various types of jets with incompatible solvers. The user will get an exception at runtime with clear message instead of unreadable compiler error. In this case a specialization C1JetMove is used meaning that this solver can integrate C^0 and C^1 jets only. More... | |
const VectorFieldType & | getVectorField () const |
Returns vector field. More... | |
VectorFieldType & | getVectorField () |
void | setOrder (size_type order) |
Sets the order of the Taylor method. More... | |
ScalarType | getStep () const |
Returns the time step made in the last call to this solver. More... | |
void | setStep (const ScalarType &newStep) |
Sets fixed time step and turns off step control. More... | |
void | computeCoefficientsAtCenter (const VectorType &x, size_type order) |
void | computeCoefficientsAtCenter (ScalarType t, const VectorType &x, size_type order) |
void | computeCoefficients (const VectorType &x, size_type order) |
void | computeCoefficients (ScalarType t, const VectorType &x, size_type order) |
void | computeCoefficients (const VectorType &x, const MatrixType &M, size_type order) |
void | computeCoefficients (ScalarType t, const VectorType &x, const MatrixType &M, size_type order) |
const SolutionCurve & | getCurve () |
virtual ScalarType | getCoeffNorm (size_type i, size_type degree) const |
size_type | dimension () const |
VectorType | enclosure (const ScalarType &, const VectorType &) |
void | adjustTimeStep (const ScalarType &newStep) |
sets time step but does not change step control settings (compare setStep) More... | |
template<class Iterator > | |
void | setMask (Iterator b, Iterator e) |
The iterator range [b,e) should contain a range of Multiinideces the user requires to compute. More... | |
void | addMultiindexToMask (const Multiindex &mi) |
Adds new multiindex (along with dependencies) to the existing mask. More... | |
void | resetMask () |
Resets the mask of derivatives. More... | |
void | turnOnStepControl () |
void | turnOffStepControl () |
void | onOffStepControl (bool _onOffStepControl) |
const StepControlType & | getStepControl () const |
void | setStepControl (const StepControlType &stepControl) |
bool | isStepChangeAllowed () const |
void | setAbsoluteTolerance (TolScalarType tol) |
void | setRelativeTolerance (TolScalarType tol) |
TolScalarType | getAbsoluteTolerance () const |
TolScalarType | getRelativeTolerance () const |
MapT::ScalarType | getMaxStep () const |
void | setMaxStep (MapT::ScalarType maxStep) |
VectorType | timeDerivative (const ScalarType &h) const |
VectorType | operator() (const ScalarType &h) const |
MatrixType | derivative (const ScalarType &h) const |
MatrixType | operator[] (const ScalarType &h) const |
virtual void | setOrder (size_type order) |
Sets the order of Taylor interpolation. More... | |
size_type | getOrder () const |
Returns the order of Taylor interpolation. More... | |
size_type | getAllocatedOrder () const |
Returns maximal allocated order - used to avoid memory reallocation. More... | |
size_type | dimension () const |
Returns the dimension in which the parametric curve is embedded. More... | |
void | clearCoefficients () |
sets all coefficients to zero More... | |
const ScalarType & | centerCoefficient (size_type i, size_type j) const |
ScalarType & | centerCoefficient (size_type i, size_type j) |
const ScalarType & | coefficient (size_type i, size_type j) const |
const ScalarType & | coefficient (size_type i, size_type j, size_type k) const |
ScalarType & | coefficient (size_type i, size_type j) |
ScalarType & | coefficient (size_type i, size_type j, size_type k) |
const ScalarType & | remainderCoefficient (size_type i, size_type j) const |
const ScalarType & | remainderCoefficient (size_type i, size_type j, size_type k) const |
ScalarType & | remainderCoefficient (size_type i, size_type j) |
ScalarType & | remainderCoefficient (size_type i, size_type j, size_type k) |
const VectorType * | getCoefficientsAtCenter () const |
VectorType * | getCoefficientsAtCenter () |
const VectorType * | getCoefficients () const |
VectorType * | getCoefficients () |
const VectorType * | getRemainderCoefficients () const |
VectorType * | getRemainderCoefficients () |
const MatrixType * | getMatrixCoefficients () const |
MatrixType * | getMatrixCoefficients () |
const MatrixType * | getMatrixRemainderCoefficients () const |
MatrixType * | getMatrixRemainderCoefficients () |
iterator | beginCenterCoefficients (size_type j) |
const_iterator | beginCenterCoefficients (size_type j) const |
iterator | beginCoefficients (size_type j) |
const_iterator | beginCoefficients (size_type j) const |
iterator | beginRemainderCoefficients (size_type j) |
const_iterator | beginRemainderCoefficients (size_type j) const |
iterator | beginMatrixCoefficients (size_type j) |
const_iterator | beginMatrixCoefficients (size_type j) const |
iterator | beginMatrixRemainderCoefficients (size_type j) |
const_iterator | beginMatrixRemainderCoefficients (size_type j) const |
iterator | endCenterCoefficients (size_type j) |
const_iterator | endCenterCoefficients (size_type j) const |
iterator | endCoefficients (size_type j) |
const_iterator | endCoefficients (size_type j) const |
iterator | endRemainderCoefficients (size_type j) |
const_iterator | endRemainderCoefficients (size_type j) const |
iterator | endMatrixCoefficients (size_type j) |
const_iterator | endMatrixCoefficients (size_type j) const |
iterator | endMatrixRemainderCoefficients (size_type j) |
const_iterator | endMatrixRemainderCoefficients (size_type j) const |
void | setInitMatrix (const MatrixType &) |
void | setInitHessian (const HessianType &) |
void | setInitJet (const JetType &) |
std::runtime_error | domainErrorMessage (std::string msg, ScalarType h, Real left, Real right) const |
virtual HessianType | hessian (const ScalarType &) const |
virtual JetType | jet (const ScalarType &) const |
virtual void | eval (ScalarType, JetType &) const |
virtual void | setDomain (Real left, Real right) |
virtual Real | getLeftDomain () const |
virtual Real | getRightDomain () const |
Static Public Member Functions | |
static TolScalarType | getEffectiveTolerance (Solver &solver, const SetType &s) |
Protected Member Functions | |
void | setCurrentTime (const ScalarType &a_time) const |
const ScalarType & | getCurrentTime () const |
const bool * | getMask () const |
bool | getMask (size_type j) const |
void | computeTimeStep (VectorType &v) |
void | sumTaylorSeries (VectorType &v, VectorType *coeff, size_type order) |
void | sumTaylorSeries (VectorType &v, MatrixType &der, VectorType *coeff, MatrixType *matrixCoeff, size_type order) |
void | operator= (const BasicOdeSolver &) |
BasicOdeSolver (const BasicOdeSolver &solver) | |
we do not allow copying of objects More... | |
void | allocate () |
void | deallocate () |
void | copyData (const BasicCurve &c) |
Protected Attributes | |
VectorFieldType * | m_vField |
we do not allow copying of objects More... | |
ScalarType | m_fixedTimeStep |
ScalarType | m_step |
StepControlType | m_stepControl |
bool | m_onOffStepControl |
TolScalarType | m_absoluteTolerance |
TolScalarType | m_relativeTolerance |
MapT::ScalarType | m_maxStep |
VectorType * | m_coefficientsAtCenter |
VectorType * | m_coefficients |
VectorType * | m_remainderCoefficients |
MatrixType * | m_matrixCoefficients |
MatrixType * | m_matrixRemainderCoefficients |
size_type | m_order |
size_type | m_allocatedOrder |
size_type | m_dimension |
Real | m_left |
Real | m_right |
domain More... | |
MapT constraints: type definitions:
methods:
|
inherited |
|
inherited |
typedef VectorFieldType::FunctionType capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::FunctionType |
|
inherited |
|
inherited |
typedef VectorFieldType::JetType capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::JetType |
typedef VectorFieldType::MatrixType capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::MatrixType |
typedef JetType::Multiindex capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::Multiindex |
typedef JetType::Multipointer capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::Multipointer |
|
inherited |
typedef MatrixType::ScalarType capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::ScalarType |
typedef MatrixType::size_type capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::size_type |
typedef CurveT capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::SolutionCurve |
typedef StepControlT capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::StepControlType |
typedef MapT capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::VectorFieldType |
typedef MatrixType::RowVectorType capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::VectorType |
|
inlineprotected |
we do not allow copying of objects
|
inline |
Adds new multiindex (along with dependencies) to the existing mask.
mi | multiindex to be added to the mask |
|
protectedinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inherited |
sets all coefficients to zero
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
protectedinherited |
|
protectedinherited |
|
virtualinherited |
|
inlineinherited |
Returns the dimension in which the parametric curve is embedded.
|
inline |
|
inlineinherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineinherited |
Returns maximal allocated order - used to avoid memory reallocation.
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlineprotected |
|
inlinestaticinherited |
|
inlinevirtualinherited |
|
inlineprotected |
|
inlineprotected |
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Returns the order of Taylor interpolation.
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineinherited |
VectorFieldType& capd::dynsys::BasicOdeSolver< MapT, StepControlT, CurveT >::getVectorField | ( | ) |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineinherited |
|
virtualinherited |
|
inline |
This operator computes image of the set (in given representation) using set.move function, see capd/dynsys/Move.h for details This template together with SetTraits prevent usage of various types of jets with incompatible solvers. The user will get an exception at runtime with clear message instead of unreadable compiler error. In this case a specialization C1JetMove is used meaning that this solver can integrate C^0 and C^1 jets only.
|
inlineprotected |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Resets the mask of derivatives.
In consequence, full jet of derivatives will be computed after call to any method that computes derivative, hessian or jet.
|
inlineinherited |
|
inlineprotected |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
The iterator range [b,e) should contain a range of Multiinideces the user requires to compute.
The method automatically adds all the depending partial derivatives to this collection and defines a mask for computation of partial derivtives.
[b,e) | iterator range which contains collection of multiindices |
|
inlineinherited |
|
virtualinherited |
Sets the order of Taylor interpolation.
Reimplemented in capd::dynsys::BasicOdeSolver< MapT, capd::dynsys::ILastTermsStepControl, capd::diffAlgebra::Curve< capd::diffAlgebra::BasicCurve< typename MapT::MatrixType > > >, capd::dynsys::BasicOdeSolver< MapT, capd::dynsys::ILastTermsStepControl, capd::diffAlgebra::C2Curve< capd::diffAlgebra::BasicC2Curve< typename MapT::MatrixType > > >, capd::dynsys::BasicOdeSolver< MapT, capd::dynsys::DLastTermsStepControl, capd::diffAlgebra::C2Curve< capd::diffAlgebra::BasicC2Curve< typename MapT::MatrixType > > >, capd::diffAlgebra::BasicC2Curve< typename MapT::MatrixType >, and capd::dynsys::OdeSolver< MapT, capd::dynsys::ILastTermsStepControl, HighOrderEnclosure, capd::diffAlgebra::C2Curve< capd::diffAlgebra::BasicC2Curve< typename MapT::MatrixType > > >.
|
inlineinherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
domain
|
protected |
|
protectedinherited |
|
protected |
we do not allow copying of objects