CAPD::DynSys Library
6.0.0
|
Class C0HODoubletonSet represents a subset of R^n as doubleton, i.e. More...
#include <capd/dynset/C0HODoubletonSet.h>
Public Types | |
typedef C0DoubletonSet< MatrixT, Policies > | BaseSet |
typedef BaseSet::MatrixType | MatrixType |
typedef BaseSet::VectorType | VectorType |
typedef MatrixType::ScalarType | ScalarType |
typedef MatrixType::size_type | size_type |
typedef BaseSet::DynSysType | DynSysType |
typedef capd::vectalg::Norm< VectorType, MatrixType > | NormType |
typedef C0Set< MatrixT >::SetType | SetType |
typedef DoubletonData< MatrixT > | Data |
typedef Policies | Policy |
typedef BaseSet::ColumnVectorType | ColumnVectorType |
typedef MatrixType::template rebind< typename ScalarType::BoundType >::other | RealMatrix |
typedef VectorType::template rebind< typename ScalarType::BoundType >::other | RealVector |
Public Member Functions | |
template<class Functional > | |
ScalarType | evalAt (const Functional &f) const |
This method computes value of functor f at interval vector represented by this set. It computes the value as an intersection of evalAt for two representations of this set: predictor and corrector. More... | |
VectorType | affineTransformation (const MatrixType &M, const VectorType &c) const |
This method computes value of an affine map f at interval vector represented by this set. This set is represented as tripleton X=x+C*r0+intersection(B*r,Q*q). Then f(X) = M*(X-x0) can be computed as M*(x-x0) + (M*C)*r0 + intersection( M*B)*r, (M*Q)*q ) More... | |
virtual ScalarType | evalAffineFunctional (const VectorType &gradient, const VectorType &u) const |
This method computes value of an affine functional f at the vector represented by this set. This set is represented as doubleton X=x+C*r0+B*r. Then f(X) = grad*(X-x0) can be computed as grad*(x-x0) + (grad*C)*r0 + (grad*B)*r. More... | |
template<class Solver > | |
void | move (Solver &solver) |
std::string | name () const |
returns set's name More... | |
void | move (DynSysType &dynsys) |
computes image of the set after one step/iterate of the dynamical system More... | |
void | move (DynSysType &dynsys, C0DoubletonSet &result) const |
computes image of the set after one step/iterate of the dynamical system and stores it in result More... | |
std::string | show () const |
returns a set detailed information More... | |
const ScalarType | getCurrentTime () const |
ScalarType & | refCurrentTime () |
void | setCurrentTime (const ScalarType &t) |
const MatrixT::RowVectorType & | getLastEnclosure () const |
virtual | operator MatrixT::RowVectorType () const |
returns an enclosure of the set in the canonical coordinates More... | |
void | setCurrentSet (const MatrixT::RowVectorType &x) |
virtual | operator VectorType () const=0 |
operator VectorType () const | |
std::string | toString () const |
returns set detailed information More... | |
const VectorType & | get_r0 () const |
returns r0 More... | |
const ScalarType & | getElement_r0 (size_type i) const |
returns i-th coordinate of r0 More... | |
void | set_r0 (const VectorType &r) |
sets r0 More... | |
void | setElement_r0 (size_type i, const ScalarType &s) |
sets i-th coordinate of r0 More... | |
const MatrixType & | get_C () const |
returns matrix C More... | |
const ScalarType & | getElement_C (size_type i, size_type j) const |
returns element C[i][j] More... | |
VectorType | getRow_C (size_type i) const |
returns i-th row of C More... | |
ColumnVectorType | getColumn_C (size_type j) const |
returns j-th column of C More... | |
void | set_C (const MatrixType &B) |
sets matrix C:= B More... | |
void | setElement_C (size_type i, size_type j, const ScalarType &s) |
sets C[i][j] := s More... | |
template<typename VectorT > | |
void | setRow_C (size_type i, const VectorT &v) |
sets i-th row of C to v More... | |
template<typename VectorT > | |
void | setColumn_C (size_type j, const VectorT &v) |
sets j-th columne of C to v More... | |
size_type | dimension () const |
returns dimension of a set More... | |
const VectorType & | get_x () const |
const ScalarType & | getElement_x (int i) const |
void | set_x (const VectorType &x) |
void | setElement_x (size_type i, const ScalarType &s) |
const VectorType & | get_r () const |
const ScalarType & | getElement_r (size_type i) const |
void | set_r (const VectorType &r) |
void | setElement_r (size_type i, const ScalarType &s) |
const MatrixType & | get_B () const |
const MatrixType & | get_invB () const |
void | setToIdentity () |
const ScalarType & | getElement_B (size_type i, size_type j) const |
VectorType | getRow_B (size_type i) const |
ColumnVectorType | getColumn_B (size_type j) const |
void | set_B (const MatrixType &B) |
void | set_invB (const MatrixType &B) |
void | setElement_B (size_type i, size_type j, const ScalarType &s) |
template<typename VectorT > | |
void | setRow_B (size_type i, const VectorT &v) |
template<typename VectorT > | |
void | setColumn_B (size_type j, const VectorT &v) |
C0HODoubletonSet (BaseSet &set) | |
C0HODoubletonSet (const VectorType &x, ScalarType t=TypeTraits< ScalarType >::zero()) | |
C0HODoubletonSet (const VectorType &x, const VectorType &r0, ScalarType t=TypeTraits< ScalarType >::zero()) | |
C0HODoubletonSet (const VectorType &x, const MatrixType &C, const VectorType &r0, ScalarType t=TypeTraits< ScalarType >::zero()) | |
C0HODoubletonSet (const VectorType &x, const MatrixType &C, const VectorType &r0, const VectorType &r, ScalarType t=TypeTraits< ScalarType >::zero()) | |
C0HODoubletonSet (const VectorType &x, const MatrixType &C, const VectorType &r0, const MatrixType &B, const VectorType &r, ScalarType t=TypeTraits< ScalarType >::zero()) | |
template<class Solver > | |
void | move (Solver &solver, C0HODoubletonSet &result) |
Static Public Member Functions | |
static void | move (const BaseSet &set, BaseSet &result, VectorType &bound, Data &data) |
this computes next representation of the set given computed one-step enclosure of the form y + jacPhi*deltaX + rem More... | |
static const size_type | degree () |
Public Attributes | |
BaseSet | predictor |
MatrixType | m_C |
C is a coordinate system of the 'Lipschitz' part. More... | |
VectorType | m_r0 |
r0 is a interval set in given coordinate system that represents 'Lipschitz' part More... | |
VectorType | m_x |
x is a center of the set More... | |
MatrixType | m_B |
B is a coordinate system. More... | |
MatrixType | m_invB |
VectorType | m_r |
r is a interval set in given coordinate system More... | |
VectorType | x |
VectorType | deltaX |
VectorType | y |
VectorType | deltaY |
VectorType | rem |
VectorType | enc |
MatrixType | jacPhi |
MatrixType | deltaC |
MatrixType | B |
Protected Member Functions | |
void | setLastEnclosure (const MatrixT::RowVectorType &enc) |
Protected Attributes | |
ScalarType | m_currentTime |
MatrixT::RowVectorType | m_currentSet |
MatrixT::RowVectorType | m_lastEnclosure |
Class C0HODoubletonSet represents a subset of R^n as doubleton, i.e.
x + C*r0 + B*r
where x is a (point) interval vector C,B are (point) interval matrices r0,r are interval vectors centered at zero.
The evaluation of the set by an ODE is realized by intersection of two methods: the Taylor method and the Hermite-Obreshkov method.
IMPORTANT: present implementation is valid only for orders of the Taylor method less or equal 32. This is due to capacity of integer type used to store binomial coefficients.
typedef C0DoubletonSet<MatrixT,Policies> capd::dynset::C0HODoubletonSet< MatrixT, Policies >::BaseSet |
|
inherited |
|
inherited |
typedef BaseSet::DynSysType capd::dynset::C0HODoubletonSet< MatrixT, Policies >::DynSysType |
typedef BaseSet::MatrixType capd::dynset::C0HODoubletonSet< MatrixT, Policies >::MatrixType |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
typedef MatrixType::ScalarType capd::dynset::C0HODoubletonSet< MatrixT, Policies >::ScalarType |
|
inherited |
typedef MatrixType::size_type capd::dynset::C0HODoubletonSet< MatrixT, Policies >::size_type |
typedef BaseSet::VectorType capd::dynset::C0HODoubletonSet< MatrixT, Policies >::VectorType |
capd::dynset::C0HODoubletonSet< MatrixT, Policies >::C0HODoubletonSet | ( | BaseSet & | set | ) |
|
explicit |
capd::dynset::C0HODoubletonSet< MatrixT, Policies >::C0HODoubletonSet | ( | const VectorType & | x, |
const VectorType & | r0, | ||
ScalarType | t = TypeTraits<ScalarType>::zero() |
||
) |
capd::dynset::C0HODoubletonSet< MatrixT, Policies >::C0HODoubletonSet | ( | const VectorType & | x, |
const MatrixType & | C, | ||
const VectorType & | r0, | ||
ScalarType | t = TypeTraits<ScalarType>::zero() |
||
) |
capd::dynset::C0HODoubletonSet< MatrixT, Policies >::C0HODoubletonSet | ( | const VectorType & | x, |
const MatrixType & | C, | ||
const VectorType & | r0, | ||
const VectorType & | r, | ||
ScalarType | t = TypeTraits<ScalarType>::zero() |
||
) |
capd::dynset::C0HODoubletonSet< MatrixT, Policies >::C0HODoubletonSet | ( | const VectorType & | x, |
const MatrixType & | C, | ||
const VectorType & | r0, | ||
const MatrixType & | B, | ||
const VectorType & | r, | ||
ScalarType | t = TypeTraits<ScalarType>::zero() |
||
) |
|
inlinevirtual |
This method computes value of an affine map f at interval vector represented by this set. This set is represented as tripleton X=x+C*r0+intersection(B*r,Q*q). Then f(X) = M*(X-x0) can be computed as M*(x-x0) + (M*C)*r0 + intersection( M*B)*r, (M*Q)*q )
Reimplemented from capd::geomset::DoubletonSet< MatrixT >.
|
inlinestaticinherited |
|
inlineinherited |
returns dimension of a set
|
inlinevirtual |
This method computes value of an affine functional f at the vector represented by this set. This set is represented as doubleton X=x+C*r0+B*r. Then f(X) = grad*(X-x0) can be computed as grad*(x-x0) + (grad*C)*r0 + (grad*B)*r.
Reimplemented from capd::geomset::DoubletonSet< MatrixT >.
|
inline |
This method computes value of functor f at interval vector represented by this set. It computes the value as an intersection of evalAt for two representations of this set: predictor and corrector.
|
inlineinherited |
|
inlineinherited |
returns matrix C
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns r0
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns j-th column of C
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns element C[i][j]
|
inlineinherited |
|
inlineinherited |
returns i-th coordinate of r0
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns i-th row of C
|
staticinherited |
this computes next representation of the set given computed one-step enclosure of the form y + jacPhi*deltaX + rem
|
virtualinherited |
computes image of the set after one step/iterate of the dynamical system
Implements capd::dynset::C0Set< MatrixT >.
|
inherited |
computes image of the set after one step/iterate of the dynamical system and stores it in result
|
inline |
void capd::dynset::C0HODoubletonSet< MatrixT, Policies >::move | ( | Solver & | solver, |
C0HODoubletonSet< MatrixT, Policies > & | result | ||
) |
|
inlinevirtual |
returns set's name
Reimplemented from capd::dynset::C0DoubletonSet< MatrixT, Policies >.
|
inlinevirtualinherited |
returns an enclosure of the set in the canonical coordinates
|
inherited |
|
pure virtualinherited |
Implemented in capd::pdes::C0HODoubletonSetGeometricTail< BaseSetT >, capd::pdes::C0DoubletonSetGeometricTail< BaseT >, capd::pdes::C0DoubletonSetGeometricTail< capd::dynset::C1DoubletonSet< GeometricBound< capd::interval >::MatrixType, Policies > >, capd::dynset::CnSet< MatrixT, DEGREE >, capd::dynset::CnSet< MatrixT, 0 >, capd::dynset::C1GraphicalSet< MatrixT, OutputClass >, and capd::dynset::C11Rect2< MatrixT, QRPolicy >.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
sets matrix C:= B
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
sets r0
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
sets j-th columne of C to v
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
sets C[i][j] := s
|
inlineinherited |
|
inlineinherited |
sets i-th coordinate of r0
|
inlineinherited |
|
inlineprotectedinherited |
|
inlineinherited |
|
inlineinherited |
sets i-th row of C to v
|
inlineinherited |
|
virtualinherited |
returns a set detailed information
Implements capd::dynset::AbstractSet< MatrixT::RowVectorType >.
|
inherited |
B is a coordinate system.
|
inherited |
C is a coordinate system of the 'Lipschitz' part.
|
protectedinherited |
|
protectedinherited |
|
inherited |
|
protectedinherited |
|
inherited |
r is a interval set in given coordinate system
|
inherited |
r0 is a interval set in given coordinate system that represents 'Lipschitz' part
|
inherited |
x is a center of the set
BaseSet capd::dynset::C0HODoubletonSet< MatrixT, Policies >::predictor |