CAPD DynSys Library  5.2.0
capd::pdes::PdeCurve< SeriesT > Class Template Reference

This class is a data structure for storing of a parametric curve together with first order derivatives with respect to initial point. More...

#include <capd/pdes/PdeCurve.h>

Public Types

typedef SeriesT VectorType
 
typedef capd::IVector FiniteVectorType
 
typedef capd::IMatrix MatrixType
 
typedef capd::diffAlgebra::CurveInterface< capd::IMatrix >::HessianType HessianType
 
typedef capd::diffAlgebra::CurveInterface< capd::IMatrix >::JetType JetType
 
typedef MatrixType::ScalarType ScalarType
 
typedef TypeTraits< ScalarType >::Real Real
 
typedef MatrixType::size_type size_type
 
typedef std::vector< VectorTypeVectorArray
 
typedef std::vector< VectorArrayMatrixArray
 

Public Member Functions

 PdeCurve (size_type dim, size_type order)
 
virtual ~PdeCurve ()
 
PdeCurveoperator= (const PdeCurve &c)
 
virtual VectorType operator() (const ScalarType &h) const
 
virtual VectorType valueAtCenter (const ScalarType &h) const
 
virtual VectorType remainder (const ScalarType &h) const
 
virtual MatrixType oneStepDerivativeOfNumericalMethod (const ScalarType &h) const
 
virtual VectorType getCenter () const
 
virtual MatrixType derivative (const ScalarType &h) const
 
virtual 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 relevant dynamics is observed. More...
 
void clearCoefficients ()
 sets all coefficients to zero More...
 
const ScalarType centerCoefficient (size_type i, size_type j) const
 
const ScalarType coefficient (size_type i, size_type j) const
 
const ScalarType remainderCoefficient (size_type i, size_type j) const
 
const ScalarType coefficient (size_type i, size_type j, size_type k) const
 
const ScalarType remainderCoefficient (size_type i, size_type j, size_type k) const
 
VectorArraygetCoefficientsAtCenter ()
 
VectorArraygetCoefficients ()
 
VectorArraygetRemainderCoefficients ()
 
MatrixArraygetMatrixCoefficients ()
 
MatrixArraygetMatrixRemainderCoefficients ()
 
MatrixArraygetDyxCoefficients ()
 
MatrixArraygetDyxRemainderCoefficients ()
 
const VectorArraygetCoefficientsAtCenter () const
 
const VectorArraygetCoefficients () const
 
const VectorArraygetRemainderCoefficients () const
 
const MatrixArraygetMatrixCoefficients () const
 
const MatrixArraygetMatrixRemainderCoefficients () const
 
const MatrixArraygetDyxCoefficients () const
 
const MatrixArraygetDyxRemainderCoefficients () const
 
void setInitMatrix (const MatrixType &M)
 
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
 

Protected Member Functions

template<class V >
void sumTaylorSeries (V &x, const VectorArray &c, ScalarType h, int p, size_type dim) const
 
void sumTaylorSeries (MatrixType &A, const MatrixArray &J, ScalarType h, int p, size_type dim) const
 
void realloc (size_type dimension)
 

Protected Attributes

VectorArray m_coefficientsAtCenter
 
VectorArray m_coefficients
 
VectorArray m_remainderCoefficients
 
MatrixArray m_matrixCoefficients
 
MatrixArray m_matrixRemainderCoefficients
 
MatrixArray m_dyxCoefficients
 
MatrixArray m_dyxRemainderCoefficients
 
size_type m_order
 
MatrixType initMatrix
 
Real m_left
 
Real m_right
 domain More...
 

Detailed Description

template<class SeriesT>
class capd::pdes::PdeCurve< SeriesT >

This class is a data structure for storing of a parametric curve together with first order derivatives with respect to initial point.

More precisely, a curve c(t,x) is represented as c(t,x_0) + d/dx c(t,x)(x-x_0) + smallRemainder(t,x)

This class provides a member functions for accessing of all coefficients.

Member Typedef Documentation

◆ FiniteVectorType

template<class SeriesT >
typedef capd::IVector capd::pdes::PdeCurve< SeriesT >::FiniteVectorType

◆ HessianType

◆ JetType

◆ MatrixArray

template<class SeriesT >
typedef std::vector<VectorArray> capd::pdes::PdeCurve< SeriesT >::MatrixArray

◆ MatrixType

template<class SeriesT >
typedef capd::IMatrix capd::pdes::PdeCurve< SeriesT >::MatrixType

◆ Real

template<class SeriesT >
typedef TypeTraits<ScalarType>::Real capd::pdes::PdeCurve< SeriesT >::Real

◆ ScalarType

template<class SeriesT >
typedef MatrixType::ScalarType capd::pdes::PdeCurve< SeriesT >::ScalarType

◆ size_type

template<class SeriesT >
typedef MatrixType::size_type capd::pdes::PdeCurve< SeriesT >::size_type

◆ VectorArray

template<class SeriesT >
typedef std::vector<VectorType> capd::pdes::PdeCurve< SeriesT >::VectorArray

◆ VectorType

template<class SeriesT >
typedef SeriesT capd::pdes::PdeCurve< SeriesT >::VectorType

Constructor & Destructor Documentation

◆ ~PdeCurve()

template<class SeriesT >
virtual capd::pdes::PdeCurve< SeriesT >::~PdeCurve ( )
inlinevirtual

Member Function Documentation

◆ derivative()

template<class SeriesT >
virtual MatrixType capd::pdes::PdeCurve< SeriesT >::derivative ( const ScalarType h) const
inlinevirtual

◆ domainErrorMessage()

std::runtime_error capd::diffAlgebra::CurveInterface< capd::IMatrix >::domainErrorMessage ( std::string  msg,
ScalarType  h,
Real  left,
Real  right 
) const
inlineinherited

◆ eval()

virtual void capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::eval ( ScalarType  ,
JetType  
) const
inlinevirtualinherited

◆ getAllocatedOrder()

template<class SeriesT >
size_type capd::pdes::PdeCurve< SeriesT >::getAllocatedOrder ( ) const

Returns maximal allocated order - used to avoid memory reallocation.

◆ getCenter()

template<class SeriesT >
virtual VectorType capd::pdes::PdeCurve< SeriesT >::getCenter ( ) const
inlinevirtual

◆ getCoefficients() [1/2]

template<class SeriesT >
VectorArray& capd::pdes::PdeCurve< SeriesT >::getCoefficients ( )
inline

◆ getCoefficients() [2/2]

template<class SeriesT >
const VectorArray& capd::pdes::PdeCurve< SeriesT >::getCoefficients ( ) const
inline

◆ getCoefficientsAtCenter() [1/2]

template<class SeriesT >
VectorArray& capd::pdes::PdeCurve< SeriesT >::getCoefficientsAtCenter ( )
inline

◆ getCoefficientsAtCenter() [2/2]

template<class SeriesT >
const VectorArray& capd::pdes::PdeCurve< SeriesT >::getCoefficientsAtCenter ( ) const
inline

◆ getDyxCoefficients() [1/2]

template<class SeriesT >
MatrixArray& capd::pdes::PdeCurve< SeriesT >::getDyxCoefficients ( )
inline

◆ getDyxCoefficients() [2/2]

template<class SeriesT >
const MatrixArray& capd::pdes::PdeCurve< SeriesT >::getDyxCoefficients ( ) const
inline

◆ getDyxRemainderCoefficients() [1/2]

template<class SeriesT >
MatrixArray& capd::pdes::PdeCurve< SeriesT >::getDyxRemainderCoefficients ( )
inline

◆ getDyxRemainderCoefficients() [2/2]

template<class SeriesT >
const MatrixArray& capd::pdes::PdeCurve< SeriesT >::getDyxRemainderCoefficients ( ) const
inline

◆ getLeftDomain()

ParametricCurve< capd::IMatrix , SeriesT >::Real capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::getLeftDomain
inlinevirtualinherited

◆ getMatrixCoefficients() [1/2]

template<class SeriesT >
MatrixArray& capd::pdes::PdeCurve< SeriesT >::getMatrixCoefficients ( )
inline

◆ getMatrixCoefficients() [2/2]

template<class SeriesT >
const MatrixArray& capd::pdes::PdeCurve< SeriesT >::getMatrixCoefficients ( ) const
inline

◆ getMatrixRemainderCoefficients() [1/2]

template<class SeriesT >
MatrixArray& capd::pdes::PdeCurve< SeriesT >::getMatrixRemainderCoefficients ( )
inline

◆ getMatrixRemainderCoefficients() [2/2]

template<class SeriesT >
const MatrixArray& capd::pdes::PdeCurve< SeriesT >::getMatrixRemainderCoefficients ( ) const
inline

◆ getRemainderCoefficients() [1/2]

template<class SeriesT >
VectorArray& capd::pdes::PdeCurve< SeriesT >::getRemainderCoefficients ( )
inline

◆ getRemainderCoefficients() [2/2]

template<class SeriesT >
const VectorArray& capd::pdes::PdeCurve< SeriesT >::getRemainderCoefficients ( ) const
inline

◆ getRightDomain()

ParametricCurve< capd::IMatrix , SeriesT >::Real capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::getRightDomain
inlinevirtualinherited

◆ hessian()

virtual HessianType capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::hessian ( const ScalarType ) const
inlinevirtualinherited

◆ jet()

virtual JetType capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::jet ( const ScalarType ) const
inlinevirtualinherited

◆ oneStepDerivativeOfNumericalMethod()

template<class SeriesT >
virtual MatrixType capd::pdes::PdeCurve< SeriesT >::oneStepDerivativeOfNumericalMethod ( const ScalarType h) const
inlinevirtual

◆ operator()()

template<class SeriesT >
virtual VectorType capd::pdes::PdeCurve< SeriesT >::operator() ( const ScalarType h) const
inlinevirtual

◆ operator=()

template<class SeriesT >
PdeCurve& capd::pdes::PdeCurve< SeriesT >::operator= ( const PdeCurve< SeriesT > &  c)

◆ operator[]()

template<class SeriesT >
virtual MatrixType capd::pdes::PdeCurve< SeriesT >::operator[] ( const ScalarType h) const
inlinevirtual

◆ remainder()

template<class SeriesT >
virtual VectorType capd::pdes::PdeCurve< SeriesT >::remainder ( const ScalarType h) const
inlinevirtual

◆ remainderCoefficient()

template<class SeriesT >
const ScalarType capd::pdes::PdeCurve< SeriesT >::remainderCoefficient ( size_type  i,
size_type  j,
size_type  k 
) const

◆ setDomain()

void capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::setDomain ( Real  left,
Real  right 
)
inlinevirtualinherited

◆ setInitHessian()

void capd::diffAlgebra::CurveInterface< capd::IMatrix >::setInitHessian ( const HessianType )
inlineinherited

◆ setInitJet()

void capd::diffAlgebra::CurveInterface< capd::IMatrix >::setInitJet ( const JetType )
inlineinherited

◆ setInitMatrix()

template<class SeriesT >
void capd::pdes::PdeCurve< SeriesT >::setInitMatrix ( const MatrixType M)
inline

◆ valueAtCenter()

template<class SeriesT >
virtual VectorType capd::pdes::PdeCurve< SeriesT >::valueAtCenter ( const ScalarType h) const
inlinevirtual

Member Data Documentation

◆ initMatrix

template<class SeriesT >
MatrixType capd::pdes::PdeCurve< SeriesT >::initMatrix
protected

◆ m_coefficients

template<class SeriesT >
VectorArray capd::pdes::PdeCurve< SeriesT >::m_coefficients
protected

◆ m_coefficientsAtCenter

template<class SeriesT >
VectorArray capd::pdes::PdeCurve< SeriesT >::m_coefficientsAtCenter
protected

◆ m_dyxCoefficients

template<class SeriesT >
MatrixArray capd::pdes::PdeCurve< SeriesT >::m_dyxCoefficients
protected

◆ m_dyxRemainderCoefficients

template<class SeriesT >
MatrixArray capd::pdes::PdeCurve< SeriesT >::m_dyxRemainderCoefficients
protected

◆ m_left

Real capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::m_left
protectedinherited

◆ m_matrixCoefficients

template<class SeriesT >
MatrixArray capd::pdes::PdeCurve< SeriesT >::m_matrixCoefficients
protected

◆ m_matrixRemainderCoefficients

template<class SeriesT >
MatrixArray capd::pdes::PdeCurve< SeriesT >::m_matrixRemainderCoefficients
protected

◆ m_order

template<class SeriesT >
size_type capd::pdes::PdeCurve< SeriesT >::m_order
protected

◆ m_remainderCoefficients

template<class SeriesT >
VectorArray capd::pdes::PdeCurve< SeriesT >::m_remainderCoefficients
protected

◆ m_right

Real capd::diffAlgebra::ParametricCurve< capd::IMatrix , SeriesT >::m_right
protectedinherited

domain