CAPD::DynSys Library
6.0.0
|
#include <capd/dynsys/BasicFadOdeSolver.h>
Public Types | |
typedef FadMapT | VectorFieldType |
typedef StepControlT | StepControlType |
typedef FadMapT::ScalarType | ScalarType |
typedef FadMapT::MatrixType | MatrixType |
typedef FadMapT::VectorType | VectorType |
typedef FadMapT::FunctionType | FunctionType |
typedef MatrixType::size_type | size_type |
typedef fadbad::T< ScalarType > | TScalar |
typedef fadbad::F< ScalarType, FadMapT::VectorType::csDim > | FScalar |
typedef fadbad::T< FScalar > | TFScalar |
typedef VectorType::template rebind< TFScalar >::other | TFVector |
typedef VectorType::template rebind< TScalar >::other | TVector |
typedef VectorType::template rebind< FScalar >::other | FVector |
typedef capd::diffAlgebra::Curve< capd::diffAlgebra::FadCurve< typename FadMapT::MatrixType > > | SolutionCurve |
typedef TypeTraits< ScalarType >::Real | Real |
typedef Hessian< ScalarType, VectorType::csDim, VectorType::csDim > | HessianType |
typedef Jet< MatrixType, 0 > | JetType |
typedef __difference_type | difference_type |
Public Member Functions | |
BasicFadOdeSolver (VectorFieldType &f, size_type _order, const StepControlT &stepControl=StepControlT()) | |
virtual | ~BasicFadOdeSolver () |
VectorType | operator() (VectorType) |
Computes image of vector v after one time step. More... | |
VectorType | operator() (ScalarType &t, VectorType) |
Computes image of vector v after one time step. The argument t is updated in this procedure. More... | |
VectorType | operator() (VectorType v, 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, VectorType v, 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 v, 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, 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 () |
ScalarType | getStep () const |
Returns current time step. More... | |
void | setStep (const ScalarType &newStep) |
Sets time step for the next step of integration and turns off step control. More... | |
virtual ScalarType | getCoeffNorm (size_type i, size_type degree) const |
const SolutionCurve & | getCurve () |
template<typename Description > | |
void | setParameter (Description name, const ScalarType &value) |
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) |
VectorType | enclosure (const ScalarType &, const VectorType &) |
void | adjustTimeStep (const ScalarType &newStep) |
sets time step but does not change step control settings (compare setStep) 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 |
FadMapT::ScalarType | getMaxStep () const |
void | setMaxStep (FadMapT::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) |
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 |
void | computeTimeStep (VectorType &v) |
void | recordDags () |
void | reset () |
template<class AVector > | |
void | computeCoeff (AVector &in, AVector &out, size_type order) |
void | setInitialCondition (const VectorType &u, TVector &in) |
void | setInitialCondition (const VectorType &u, TFVector &in) |
void | setInitialCondition (const VectorType &u, const MatrixType &M, TFVector &in) |
void | sumTaylorSeries (VectorType &u, TVector &in, size_type order) |
void | sumTaylorSeries (MatrixType &M, TFVector &in, size_type order) |
void | sumTaylorSeries (VectorType &u, MatrixType &M, TFVector &in, size_type order) |
Protected Attributes | |
VectorFieldType & | m_vectorField |
TVector | m_centerOut |
TFVector | m_out |
TVector | m_remOut |
TFVector | m_jacRemOut |
TScalar | m_time |
TFScalar | m_ftime |
ScalarType | m_fixedTimeStep |
ScalarType | m_step |
StepControlType | m_stepControl |
bool | m_onOffStepControl |
TolScalarType | m_absoluteTolerance |
TolScalarType | m_relativeTolerance |
FadMapT::ScalarType | m_maxStep |
size_type | m_order |
size_type | m_dimension |
TVector | m_center |
TFVector | m_in |
TVector | m_rem |
TFVector | m_jacRem |
Real | m_left |
Real | m_right |
domain More... | |
|
inherited |
typedef fadbad::F<ScalarType,FadMapT::VectorType::csDim> capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::FScalar |
typedef FadMapT::FunctionType capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::FunctionType |
typedef VectorType::template rebind<FScalar>::other capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::FVector |
|
inherited |
|
inherited |
typedef FadMapT::MatrixType capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::MatrixType |
|
inherited |
typedef FadMapT::ScalarType capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::ScalarType |
typedef MatrixType::size_type capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::size_type |
typedef capd::diffAlgebra::Curve< capd::diffAlgebra::FadCurve<typename FadMapT::MatrixType> > capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::SolutionCurve |
typedef StepControlT capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::StepControlType |
typedef fadbad::T<FScalar> capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::TFScalar |
typedef VectorType::template rebind<TFScalar>::other capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::TFVector |
typedef fadbad::T<ScalarType> capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::TScalar |
typedef VectorType::template rebind<TScalar>::other capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::TVector |
typedef FadMapT capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::VectorFieldType |
typedef FadMapT::VectorType capd::dynsys::BasicFadOdeSolver< FadMapT, StepControlT >::VectorType |
|
inlinevirtual |
|
virtualinherited |
|
inlineinherited |
|
inline |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineprotected |
|
inlinestaticinherited |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlinevirtualinherited |
Reimplemented in capd::diffAlgebra::CnCurve< BaseCurveT, true >, capd::diffAlgebra::CnCurve< BaseCurveT, isInterval >, capd::diffAlgebra::CnCurve< capd::diffAlgebra::BasicCnCurve< typename MapT::MatrixType > >, capd::diffAlgebra::C2Curve< BaseCurveT, true >, and capd::diffAlgebra::C2Curve< BaseCurveT, isInterval >.
|
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.
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineprotected |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
mutableprotected |
|
protectedinherited |
|
protected |
|
mutableprotected |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
mutableprotected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
mutableprotected |
|
protectedinherited |
|
mutableprotectedinherited |
|
mutableprotected |
|
protectedinherited |
domain
|
protected |
|
protectedinherited |
|
mutableprotected |
|
protected |