CAPD::DynSys Library
6.0.0
|
PoicareSection is class that is default PoincareSection for class PoincareMap. More...
#include <capd/poincare/AbstractSection.h>
Public Types | |
typedef MatrixT | MatrixType |
typedef MatrixType::RowVectorType | VectorType |
typedef MatrixType::ScalarType | ScalarType |
typedef VectorType::size_type | size_type |
integral type used to index containers (vectors, matrices, etc) More... | |
typedef capd::dynset::AbstractSet< VectorType > | Set |
type of abstract base class for all sets More... | |
typedef capd::diffAlgebra::Hessian< ScalarType, VectorType::csDim, VectorType::csDim > | HessianType |
typedef capd::diffAlgebra::Jet< MatrixT, 0 > | JetType |
typedef SectionDerivativesEnclosure< MatrixType > | SectionDerivativesEnclosureType |
Public Member Functions | |
virtual | ~AbstractSection ()=default |
virtual ScalarType | operator() (const VectorType &v) const =0 |
evaluates function at a given vector More... | |
virtual VectorType | gradient (const VectorType &u) const =0 |
returns gradient of the function computed at vector u More... | |
virtual ScalarType | gradientByVector (const VectorType &x, const VectorType &u) const |
virtual bool | isSpecialSection () const |
This is very important function. More... | |
virtual ScalarType | evalAt (const Set &set) const =0 |
This function computes value of section function on a given set. More... | |
virtual void | computeDT (const MatrixType &derivativeOfFlow, const VectorType &gradientOnPx, const ScalarType &denominator, VectorType &result) const |
computes gradient of return time More... | |
virtual MatrixType | computeDP (const VectorType &Px, const MatrixType &derivativeOfFlow, const VectorType &fieldOnPx, VectorType &dT) const |
Simultaneous computation of gradient of return time and derivative of Poincare Map dP. More... | |
virtual void | computeDP (const VectorType &Px, const MatrixType &derivativeOfFlow, const HessianType &hessianOfFlow, const VectorType &fieldOnPx, const VectorType &d2Phidt2, const MatrixType &derOfVectorFieldOnPx, MatrixType &DP, HessianType &D2P, VectorType &dT, MatrixType &d2T) const |
Simultaneous computation of first and second Taylor coefficients of return time and Poincare map. More... | |
PoicareSection is class that is default PoincareSection for class PoincareMap.
Internally it wraps a functional object . The Poincare section is defined as .
This class provides methods for checking the sign of evaluated at a point or a set. Efficient implementation of depends on representation of the set.
This class provides also methods for recomputation of partial derivatives of the flow to partial derivatives of Poincare map.
Let
In the following we denote by
typedef capd::diffAlgebra::Hessian<ScalarType,VectorType::csDim,VectorType::csDim> capd::poincare::AbstractSection< MatrixT >::HessianType |
typedef capd::diffAlgebra::Jet<MatrixT,0> capd::poincare::AbstractSection< MatrixT >::JetType |
typedef MatrixT capd::poincare::AbstractSection< MatrixT >::MatrixType |
typedef MatrixType::ScalarType capd::poincare::AbstractSection< MatrixT >::ScalarType |
typedef SectionDerivativesEnclosure<MatrixType> capd::poincare::AbstractSection< MatrixT >::SectionDerivativesEnclosureType |
typedef capd::dynset::AbstractSet<VectorType> capd::poincare::AbstractSection< MatrixT >::Set |
type of abstract base class for all sets
typedef VectorType::size_type capd::poincare::AbstractSection< MatrixT >::size_type |
integral type used to index containers (vectors, matrices, etc)
typedef MatrixType::RowVectorType capd::poincare::AbstractSection< MatrixT >::VectorType |
|
virtualdefault |
|
pure virtual |
This function computes value of section function on a given set.
|
pure virtual |
returns gradient of the function computed at vector u
Implemented in capd::poincare::NonlinearSection< MatrixT >, capd::poincare::CoordinateSection< MatrixT >, capd::poincare::CoordinateSection< MatrixType >, capd::poincare::AffineSection< MatrixT >, and capd::poincare::AffineSection< MatrixType >.
|
inlinevirtual |
Reimplemented in capd::poincare::CoordinateSection< MatrixT >, and capd::poincare::CoordinateSection< MatrixType >.
|
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 in capd::poincare::CoordinateSection< MatrixT >, and capd::poincare::CoordinateSection< MatrixType >.
|
pure virtual |
evaluates function at a given vector
Implemented in capd::poincare::NonlinearSection< MatrixT >, capd::poincare::CoordinateSection< MatrixT >, capd::poincare::CoordinateSection< MatrixType >, capd::poincare::AffineSection< MatrixT >, and capd::poincare::AffineSection< MatrixType >.