CAPD::DynSys Library
6.0.0
|
Files | |
file | GridSet.h |
file | GridSets.h |
file | HSet3D.h |
file | HSetMD.hpp |
file | HSetND.h |
file | HSetND.hpp |
file | HSet2D.cpp |
file | HSet3D.cpp |
file | HSetMD.cpp |
file | HSetND.cpp |
file | TripleSet.cpp |
Classes | |
class | capd::covrel::HSet< VectorT, IVectorT > |
this is an abstract class for h-sets - from paper by Gidea-Zgliczynski 'Covering relations ...' http://www.im.uj.edu.pl/~zgliczyn More... | |
class | capd::covrel::HSet2D< MatrixT, IMatrixT > |
This class provides a h-set in R^2 with one unstable and one stable direction. More... | |
struct | capd::covrel::CheckCoveringRelation2DParameters |
class | capd::covrel::HSetMD< MatrixT, IMatrixT > |
This class provides a h-set in an arbitrary dimension. More... | |
class | capd::covrel::HSetWithCones< HSetT, QFormT > |
class | capd::covrel::QuadraticForm< MatrixT > |
class | capd::covrel::TripleSet |
TripleSet - a planar h-set with one unstable direction Authors: Implementation of derived classes and functions: Jaroslaw Dulak and Daniel Wilczak. More... | |
Enumerations | |
enum | capd::covrel::Side { capd::covrel::leftSide = -1 , capd::covrel::bothSides = 0 , capd::covrel::rightSide = 1 } |
Functions | |
template<typename MatrixType > | |
bool | capd::covrel::isPositiveDefined (const MatrixType &A) |
template<typename Map , typename HSet2D , typename QuadraticForm > | |
bool | capd::covrel::checkConesCondition (Map &f, const HSet2D &N1, const HSet2D &N2, const QuadraticForm &Q1, const QuadraticForm &Q2) |
Function checks cones condition. More... | |
template<typename Map , typename HSetWithCones > | |
bool | capd::covrel::checkConesCondition (Map &f, const HSetWithCones &N1, const HSetWithCones &N2, const capd::covrel::CheckCoveringRelation2DParameters ¶m=capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1)) |
Function checks cones condition. More... | |
template<typename C0SetType , typename Map , typename DynSys , typename HSetWithCones > | |
bool | capd::covrel::checkCoveringRelationAndConesCondition (Map &f, DynSys &ds, const HSetWithCones &N1, const HSetWithCones &N2, const capd::covrel::CheckCoveringRelation2DParameters ¶m=capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1)) |
Checks covering relation and corresponding cones condition. More... | |
template<typename C0SetType , typename Map , typename DynSys , typename HSetWithCones > | |
bool | capd::covrel::checkCoveringRelationAndConesCondition (Map &f, const HSetWithCones &N1, const HSetWithCones &N2, const capd::covrel::CheckCoveringRelation2DParameters ¶m=capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1)) |
Checks covering relation and corresponding cones condition. More... | |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::outside (const HSetType &hset, const SetType &set) |
verifies if set does not intersect the support of h-set More... | |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::inside (const HSetType &hset, const SetType &set) |
verifies if set is inside the support of h-set More... | |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::across (const HSetType &hset, const SetType &set) |
verifies if set does not intersect N^+ More... | |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::mapaway (const HSetType &hset, const SetType &set) |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::onLeft (const HSetType &hset, const SetType &set) |
Checks if set in on the left side of the hset (works only in 2D) More... | |
template<typename HSetType , typename SetType > | |
bool | capd::covrel::onRight (const HSetType &hset, const SetType &set) |
Checks if set in on the right side of the hset (works only in 2D) More... | |
template<typename MatrixType , typename VectorType > | |
MatrixType | capd::covrel::convertColumnsTo (const VectorType &column1, const VectorType &column2) |
Converts two column vectors to given MatrixType. More... | |
template<typename C0SetType , typename DynSysT , typename MatrixT , typename IMatrixT > | |
bool | capd::covrel::checkCoveringRelation2D (DynSysT &dynsys, const capd::covrel::HSet2D< MatrixT, IMatrixT > &N1, const capd::covrel::HSet2D< MatrixT, IMatrixT > &N2, const CheckCoveringRelation2DParameters ¶m=CheckCoveringRelation2DParameters(1, 1, 1, 1)) |
template<typename Vector1 , typename Vector2 > | |
void | capd::covrel::embedVector (const Vector1 &v1, Vector2 &v2, const std::vector< typename Vector1::size_type > &d) |
template<typename Vector1 , typename Vector2 > | |
void | capd::covrel::embedVector (const Vector1 &vector, Vector2 &result, size_t fullDimension, const std::vector< typename Vector1::size_type > &d) |
it embeds vector into a space of fullDimension in d[i] we pass coordiante where to put i-th coordinate of given vector other coordinates are set to 0. More... | |
template<typename Matrix1 , typename Matrix2 > | |
void | capd::covrel::embedMatrix (const Matrix1 &m1, Matrix2 &m2, const std::vector< typename Matrix1::size_type > &d) |
template<typename IVector > | |
bool | capd::covrel::InSide (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::InSide (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IVector > | |
bool | capd::covrel::OutSide (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::OutSide (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IVector > | |
bool | capd::covrel::Across (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::Across (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IVector > | |
bool | capd::covrel::MapAway (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::MapAway (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IVector > | |
bool | capd::covrel::LeftSide (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::LeftSide (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IVector > | |
bool | capd::covrel::RightSide (const TripleSet &S, const IVector &IV, typename IVector::size_type d1, typename IVector::size_type d2) |
bool | capd::covrel::RightSide (const TripleSet &S, const TripleSet::IntervalVector &v) |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSetMD< MatrixT, IMatrixT >::gridSet (GridSet< IMatrix > &G, const std::vector< size_type > &grid, const std::vector< size_type > &d, size_type totalDimension) const |
this procedure creates a grid of the whole h-set in the following form: G.center[i] + G.C * G.r d is a vector of indices of coordinates if the set is embeded in higher dimension More... | |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSetMD< MatrixT, IMatrixT >::gridFace (GridSet< IMatrix > &grid, const std::vector< size_type > &gridSizes, const std::vector< size_type > &dimensions, size_type totalDimension, size_type coordinateToFix, Side side=bothSides) const |
in the grid it returns uniform grid of the given face More... | |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::TripleSet::gridLeftEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const |
in the G it returns uniform grid of the left edge More... | |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::TripleSet::gridRightEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::TripleSet::gridBottomEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::TripleSet::gridTopEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::TripleSet::gridSet (GridSet< IMatrix > &G, size_type grid1, size_type grid2, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSet2D< MatrixT, IMatrixT >::gridLeftEdge (GridSet< IMatrix > &G, size_type gridSize, size_type totalDimension=2, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSet2D< MatrixT, IMatrixT >::gridRightEdge (GridSet< IMatrix > &G, size_type gridSize, size_type totalDimension=2, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSet2D< MatrixT, IMatrixT >::gridBottomEdge (GridSet< IMatrix > &G, size_type gridSize, size_type totalDimension=2, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSet2D< MatrixT, IMatrixT >::gridTopEdge (GridSet< IMatrix > &G, size_type gridSize, size_type totalDimension=2, size_type d1=0, size_type d2=1) const |
template<typename IMatrix > | |
GridSet< IMatrix > & | capd::covrel::HSet2D< MatrixT, IMatrixT >::gridSet (GridSet< IMatrix > &G, size_type grid1, size_type grid2, size_type totalDimension=2, size_type d1=0, size_type d2=1) const |
enum capd::covrel::Side |
|
inline |
verifies if set
does not intersect N^+
bool capd::covrel::Across | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |
bool capd::covrel::checkConesCondition | ( | Map & | f, |
const HSet2D & | N1, | ||
const HSet2D & | N2, | ||
const QuadraticForm & | Q1, | ||
const QuadraticForm & | Q2 | ||
) |
Function checks cones condition.
Definition of cones condition: , where f_c is map f expressed in coordinates of N1 and N2 Cones condition is satisfied if matrix is positive defined.
f | map R^n -> R^n |
N1 | first h-set |
N2 | second h-set |
Q1 | quadratic for associated with N1 |
Q2 | quadratic for associated with N2 |
bool capd::covrel::checkConesCondition | ( | Map & | f, |
const HSetWithCones & | N1, | ||
const HSetWithCones & | N2, | ||
const capd::covrel::CheckCoveringRelation2DParameters & | param = capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1) |
||
) |
Function checks cones condition.
Definition of cones condition: , where f_c is map f expressed in coordinates of N1 and N2 Cones condition is satisfied if matrix is positive defined.
f | map R^n -> R^n |
N1 | first h-set with connes |
N2 | second h-set with connes |
param | parameters of the computation |
bool capd::covrel::checkCoveringRelation2D | ( | DynSysT & | dynsys, |
const capd::covrel::HSet2D< MatrixT, IMatrixT > & | N1, | ||
const capd::covrel::HSet2D< MatrixT, IMatrixT > & | N2, | ||
const CheckCoveringRelation2DParameters & | param = CheckCoveringRelation2DParameters(1, 1, 1, 1) |
||
) |
bool capd::covrel::checkCoveringRelationAndConesCondition | ( | Map & | f, |
const HSetWithCones & | N1, | ||
const HSetWithCones & | N2, | ||
const capd::covrel::CheckCoveringRelation2DParameters & | param = capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1) |
||
) |
Checks covering relation and corresponding cones condition.
f | map R^n -> R^n used to check cones condition |
N1 | first h-set with cones |
N2 | second h-set with cones |
bool capd::covrel::checkCoveringRelationAndConesCondition | ( | Map & | f, |
DynSys & | ds, | ||
const HSetWithCones & | N1, | ||
const HSetWithCones & | N2, | ||
const capd::covrel::CheckCoveringRelation2DParameters & | param = capd::covrel::CheckCoveringRelation2DParameters(1, 1, 1, 1) |
||
) |
Checks covering relation and corresponding cones condition.
f | map R^n -> R^n used to check cones condition |
ds | dynamical system used to move set in checking covering relation |
N1 | first h-set with cones |
N2 | second h-set with cones |
MatrixType capd::covrel::convertColumnsTo | ( | const VectorType & | column1, |
const VectorType & | column2 | ||
) |
Converts two column vectors to given MatrixType.
Example: convertColumnsTo<DMatrix>( v1, v2);
void capd::covrel::embedMatrix | ( | const Matrix1 & | m1, |
Matrix2 & | m2, | ||
const std::vector< typename Matrix1::size_type > & | d | ||
) |
void capd::covrel::embedVector | ( | const Vector1 & | v1, |
Vector2 & | v2, | ||
const std::vector< typename Vector1::size_type > & | d | ||
) |
void capd::covrel::embedVector | ( | const Vector1 & | vector, |
Vector2 & | result, | ||
size_t | fullDimension, | ||
const std::vector< typename Vector1::size_type > & | d | ||
) |
it embeds vector
into a space of fullDimension in d[i] we pass coordiante where to put i-th coordinate of given vector other coordinates are set to 0.
it resizes result vector (if needed).
GridSet< IMatrix > & capd::covrel::TripleSet::gridBottomEdge | ( | GridSet< IMatrix > & | G, |
size_type | grid, | ||
size_type | d1 = 0 , |
||
size_type | d2 = 1 |
||
) | const |
|
inline |
GridSet< IMatrix > & capd::covrel::HSetMD< MatrixType, IMatrixType >::gridFace | ( | GridSet< IMatrix > & | grid, |
const std::vector< size_type > & | gridSizes, | ||
const std::vector< size_type > & | dimensions, | ||
size_type | totalDimension, | ||
size_type | coordinateToFix, | ||
Side | side = bothSides |
||
) | const |
in the grid
it returns uniform grid of the given face
gridSizes | number of pieces in the grid |
coordinateToFix | which wall should be grided |
side | which side of given coordinate should be grided : both, left or right |
totalDimension | dimension of the space (can be bigger than 2 if we embed the set) |
dimensions | if hset is embedded in higher dimension then we put first coordinate in dimensions[0] coordinate, second in dimensions[1], ... and the rest set to 0. |
GridSet< IMatrix > & capd::covrel::TripleSet::gridLeftEdge | ( | GridSet< IMatrix > & | G, |
size_type | grid, | ||
size_type | d1 = 0 , |
||
size_type | d2 = 1 |
||
) | const |
in the G it returns uniform grid of the left edge
grid | number of pieces in the grid |
d1,d2 | if hset is embeded in higher dimension than we put first coordinate in d1, second in d2 the rest sets to 0. |
|
inline |
GridSet< IMatrix > & capd::covrel::TripleSet::gridRightEdge | ( | GridSet< IMatrix > & | G, |
size_type | grid, | ||
size_type | d1 = 0 , |
||
size_type | d2 = 1 |
||
) | const |
|
inline |
GridSet< IMatrix > & capd::covrel::HSetMD< MatrixType, IMatrixType >::gridSet | ( | GridSet< IMatrix > & | G, |
const std::vector< size_type > & | grid, | ||
const std::vector< size_type > & | d, | ||
size_type | totalDimension | ||
) | const |
this procedure creates a grid of the whole h-set in the following form: G.center[i] + G.C * G.r d is a vector of indices of coordinates if the set is embeded in higher dimension
GridSet< IMatrix > & capd::covrel::TripleSet::gridSet | ( | GridSet< IMatrix > & | G, |
size_type | grid1, | ||
size_type | grid2, | ||
size_type | d1 = 0 , |
||
size_type | d2 = 1 |
||
) | const |
|
inline |
GridSet< IMatrix > & capd::covrel::TripleSet::gridTopEdge | ( | GridSet< IMatrix > & | G, |
size_type | grid, | ||
size_type | d1 = 0 , |
||
size_type | d2 = 1 |
||
) | const |
|
inline |
|
inline |
verifies if set
is inside the support of h-set
bool capd::covrel::InSide | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |
bool capd::covrel::isPositiveDefined | ( | const MatrixType & | A | ) |
bool capd::covrel::LeftSide | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |
|
inline |
bool capd::covrel::MapAway | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |
|
inline |
Checks if set
in on the left side of the hset
(works only in 2D)
|
inline |
Checks if set
in on the right side of the hset
(works only in 2D)
|
inline |
verifies if set
does not intersect the support of h-set
bool capd::covrel::OutSide | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |
bool capd::covrel::RightSide | ( | const TripleSet & | S, |
const IVector & | IV, | ||
typename IVector::size_type | d1, | ||
typename IVector::size_type | d2 | ||
) |
|
inline |