CAPD::DynSys Library  6.0.0
capd::pdes::PdeCoordinateSection< VectorT, MatrixT > Class Template Reference

TimeMap class provides class that serves as Poincare section of the form x_i = c. More...

#include <capd/pdes/PdeCoordinateSection.h>

Public Types

typedef MatrixT MatrixType
 
typedef VectorT VectorType
 
typedef MatrixType::RowVectorType FiniteVectorType
 
typedef MatrixType::ScalarType ScalarType
 
typedef VectorType::size_type size_type
 integral type used to index containers (vectors, matrices, etc) More...
 
typedef capd::dynset::AbstractSet< FiniteVectorTypeSet
 type of abstract base class for all sets More...
 
typedef capd::diffAlgebra::Hessian< ScalarType, FiniteVectorType::csDim, FiniteVectorType::csDim > HessianType
 
typedef capd::diffAlgebra::Jet< MatrixT, 0 > JetType
 
typedef PdeSectionDerivativesEnclosure< VectorType, MatrixTypeSectionDerivativesEnclosureType
 

Public Member Functions

 PdeCoordinateSection (size_type D, size_type _i, ScalarType _c=TypeTraits< ScalarType >::zero())
 (indices start at 0)$ More...
 
ScalarType operator() (const VectorType &v) const
 evaluates function at a given vector More...
 
void setDirection (size_type i)
 
void setConstant (ScalarType _c)
 
VectorType getNormalVector () const
 
const capd::poincare::AbstractSection< MatrixType > & getProjection (size_type) const
 
VectorType gradient (const VectorType &) const
 returns gradient of the function computed at vector u More...
 
ScalarType gradientByVector (const VectorType &, const VectorType &u) const
 
bool isSpecialSection () const
 This is very important function. More...
 
ScalarType evalAt (const Set &s) const
 This function computes value of section function on a given set. More...
 
virtual MatrixType computeDP (const VectorType &P, const VectorType &vfOnP, const MatrixType &Dxx, const FiniteVectorType &Dy, const ScalarType &Dyx, FiniteVectorType &Py, ScalarType &Pyx) const
 Simultaneous computation of gradient of return time and derivative of Poincare Map dP. More...
 

Detailed Description

template<typename VectorT, typename MatrixT>
class capd::pdes::PdeCoordinateSection< VectorT, MatrixT >

TimeMap class provides class that serves as Poincare section of the form x_i = c.

The section is defined by:

  • integer - index of variable
  • constant c that defines affine hyperplane x_i=c

Member Typedef Documentation

◆ FiniteVectorType

template<typename VectorT , typename MatrixT >
typedef MatrixType::RowVectorType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::FiniteVectorType

◆ HessianType

template<typename VectorT , typename MatrixT >
typedef capd::diffAlgebra::Hessian<ScalarType,FiniteVectorType::csDim,FiniteVectorType::csDim> capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::HessianType

◆ JetType

template<typename VectorT , typename MatrixT >
typedef capd::diffAlgebra::Jet<MatrixT,0> capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::JetType

◆ MatrixType

template<typename VectorT , typename MatrixT >
typedef MatrixT capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::MatrixType

◆ ScalarType

template<typename VectorT , typename MatrixT >
typedef MatrixType::ScalarType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::ScalarType

◆ SectionDerivativesEnclosureType

template<class VectorT , class MatrixT >
typedef PdeSectionDerivativesEnclosure<VectorType,MatrixType> capd::pdes::PdeAbstractSection< VectorT, MatrixT >::SectionDerivativesEnclosureType
inherited

◆ Set

template<typename VectorT , typename MatrixT >
typedef capd::dynset::AbstractSet<FiniteVectorType> capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::Set

type of abstract base class for all sets

◆ size_type

template<typename VectorT , typename MatrixT >
typedef VectorType::size_type capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::size_type

integral type used to index containers (vectors, matrices, etc)

◆ VectorType

template<typename VectorT , typename MatrixT >
typedef VectorT capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::VectorType

Constructor & Destructor Documentation

◆ PdeCoordinateSection()

template<typename VectorT , typename MatrixT >
capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::PdeCoordinateSection ( size_type  D,
size_type  _i,
ScalarType  _c = TypeTraits<ScalarType>::zero() 
)
inline

(indices start at 0)$

Parameters
Dphase space dimension
_iindex of coordinate which defines section (counted from 0)
_cvalue that defines section

Member Function Documentation

◆ computeDP()

template<class VectorT , class MatrixT >
virtual MatrixType capd::pdes::PdeAbstractSection< VectorT, MatrixT >::computeDP ( const VectorType P,
const VectorType vfOnP,
const MatrixType Dxx,
const FiniteVectorType Dy,
const ScalarType Dyx,
FiniteVectorType Py,
ScalarType Pyx 
) const
inlinevirtualinherited

Simultaneous computation of gradient of return time and derivative of Poincare Map dP.

Parameters
[in]P- value of Poincare map
[in]D- finite block of solution to first variational equation computed at return time
[out]vfOnP- vector field evaluated on P

◆ evalAt()

template<typename VectorT , typename MatrixT >
ScalarType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::evalAt ( const Set set) const
inlinevirtual

This function computes value of section function on a given set.

Reimplemented from capd::pdes::PdeAbstractSection< VectorT, MatrixT >.

◆ getNormalVector()

template<typename VectorT , typename MatrixT >
VectorType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::getNormalVector ( ) const
inline

◆ getProjection()

template<typename VectorT , typename MatrixT >
const capd::poincare::AbstractSection<MatrixType>& capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::getProjection ( size_type  ) const
inlinevirtual

◆ gradient()

template<typename VectorT , typename MatrixT >
VectorType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::gradient ( const VectorType u) const
inlinevirtual

returns gradient of the function computed at vector u

Implements capd::pdes::PdeAbstractSection< VectorT, MatrixT >.

◆ gradientByVector()

template<typename VectorT , typename MatrixT >
ScalarType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::gradientByVector ( const VectorType ,
const VectorType u 
) const
inlinevirtual

◆ isSpecialSection()

template<typename VectorT , typename MatrixT >
bool capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::isSpecialSection ( ) const
inlinevirtual

This is very important function.

If it returns true, class PoincareMap delegates computation of value of section(set) to the section. Otherwise it is assumed that the set has more information to compute value of section(set) in most optimal way. This is quite natural as the set knows its own representation. This function returns true for instance if the PoincareSection is given by x_i=c, where x_i is i-th coordinate and c is constant.

Reimplemented from capd::pdes::PdeAbstractSection< VectorT, MatrixT >.

◆ operator()()

template<typename VectorT , typename MatrixT >
ScalarType capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::operator() ( const VectorType v) const
inlinevirtual

evaluates function at a given vector

Implements capd::pdes::PdeAbstractSection< VectorT, MatrixT >.

◆ setConstant()

template<typename VectorT , typename MatrixT >
void capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::setConstant ( ScalarType  _c)
inline

◆ setDirection()

template<typename VectorT , typename MatrixT >
void capd::pdes::PdeCoordinateSection< VectorT, MatrixT >::setDirection ( size_type  i)
inline

The documentation for this class was generated from the following file: