CAPD::DynSys Library
6.0.0
|
Set representation for differential inclusions based on capd::dynset::Rect2Set class. More...
#include <capd/diffIncl/InclRect2Set.h>
Public Types | |
typedef MatrixT | MatrixType |
typedef MatrixType::RowVectorType | VectorType |
typedef MatrixType::ScalarType | ScalarType |
typedef capd::vectalg::Norm< VectorType, MatrixType > | NormType |
typedef capd::dynset::C0DoubletonSet< MatrixT, capd::C0Rect2Policies > | BaseSet |
typedef MatrixType::size_type | size_type |
typedef C0Set< MatrixT >::SetType | SetType |
typedef C0Set< MatrixT >::DynSysType | DynSysType |
typedef DoubletonData< MatrixT > | Data |
typedef capd::C0Rect2Policies | 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 | |
InclRect2Set (const VectorType &the_x) | |
Constructors. More... | |
InclRect2Set (const VectorType &the_x, const VectorType &the_r0) | |
InclRect2Set (const VectorType &the_x, const MatrixType &the_C, const VectorType &the_r0) | |
InclRect2Set (const VectorType &the_x, const MatrixType &the_C, const VectorType &the_r0, const VectorType &the_r) | |
template<typename DiffIncl > | |
void | move (DiffIncl &dynsys) |
template<typename DiffIncl > | |
void | move (DiffIncl &dynsys, InclRect2Set &result) const |
std::vector< VectorType > | getCorners () const |
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... | |
ScalarType | evalAt (const Functional &f) const |
This method computes value of functor f at interval vector represented by this set. More... | |
std::string | show () const |
returns a set detailed information More... | |
std::string | name () const |
returns set's name More... | |
template<class Vector > | |
bool | isReorganizationNeeded (const Vector &r, const Vector &r0) const |
template<class SetType > | |
bool | isReorganizationNeeded (const SetType &result) const |
template<class SetType > | |
bool | reorganizeIfNeeded (SetType &result) const |
makes reorganization if needed. More... | |
template<class Matrix1 , class Matrix2 , class Vector > | |
bool | reorganizeIfNeeded (Matrix1 &B, Matrix2 &invB, Vector &r, Matrix1 &C, Vector &r0) const |
template<class SetType > | |
bool | isC1ReorganizationNeeded (const SetType &result) const |
template<class Matrix > | |
bool | isC1ReorganizationNeeded (const Matrix &R, const Matrix &R0) const |
template<class Matrix > | |
bool | reorganizeC1IfNeeded (Matrix &B, Matrix &invB, Matrix &R, Matrix &C, Matrix &R0) const |
template<class SetType > | |
bool | reorganizeC1IfNeeded (SetType &result) const |
makes reorganization if needed. return true if reorganization was performed More... | |
template<class HessianT > | |
bool | isC2ReorganizationNeeded (const HessianT &R, const HessianT &R0) const |
template<class MatrixT , class HessianT > | |
bool | reorganizeC2IfNeeded (MatrixT &B, MatrixT &invB, HessianT &R, MatrixT &C, HessianT &R0) const |
template<class Matrix , class Hessian > | |
bool | reorganizeC2IfNeeded (Matrix &, Matrix &, Hessian &, Matrix &, Hessian &) const |
void | reorganize (SetType &result) const |
void | reorganize (Matrix1 &B, Matrix2 &invB, Vector &r, Matrix1 &C, Vector &r0) const |
void | reorganizeC1 (SetType &result) const |
void | reorganizeC1 (Matrix &B, Matrix &invB, Matrix &R, Matrix &C, Matrix &R0) const |
void | reorganizeC2 (Matrix &B, Matrix &invB, HessianT &R, Matrix &C, HessianT &R0) const |
void | setFactor (double A_factor) |
sets c0,c1,c2 factors to new value More... | |
void | setC0Factor (double A_factor) |
sets new value of c0Factor; More... | |
void | setC1Factor (double A_factor) |
sets new value of c1Factor; More... | |
void | setC2Factor (double A_factor) |
sets new value of c2Factor; More... | |
double | getC0Factor () const |
returns current value of c0Factor; More... | |
double | getC1Factor () const |
returns current value of c1Factor; More... | |
double | getC2Factor () const |
returns current value of c2Factor; More... | |
void | onoffReorganization (bool flag) |
sets the flag which controls possibility of reorganization to new value More... | |
bool | isReorganizationEnabled () const |
returns current value of the flag which controls possibility of reorganization More... | |
std::string | toString () const |
std::string | toString () const |
returns set detailed information More... | |
template<class VectorT , class MatrixT > | |
void | computeBinvB (MatrixT &B, MatrixT &invB, const VectorT &) const |
void | disableReorganization () |
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 | |
virtual VectorType | affineTransformation (const MatrixType &M, const VectorType &x0) 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 &x0) 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... | |
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) |
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 | |
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 | |
double | m_c0Factor |
double | m_c1Factor |
double | m_c2Factor |
bool | m_onoff |
ScalarType | m_currentTime |
MatrixT::RowVectorType | m_currentSet |
MatrixT::RowVectorType | m_lastEnclosure |
Set representation for differential inclusions based on capd::dynset::Rect2Set class.
set is represented as: x + C*r0 + B*r where C*r0 - basic 'Lipschitz part' B*r - QR-decomposition of the remaining errors
typedef capd::dynset::C0DoubletonSet<MatrixT, capd::C0Rect2Policies> capd::diffIncl::InclRect2Set< MatrixT >::BaseSet |
|
inherited |
|
inherited |
|
inherited |
typedef MatrixT capd::diffIncl::InclRect2Set< MatrixT >::MatrixType |
typedef capd::vectalg::Norm<VectorType,MatrixType> capd::diffIncl::InclRect2Set< MatrixT >::NormType |
|
inherited |
|
inherited |
|
inherited |
typedef MatrixType::ScalarType capd::diffIncl::InclRect2Set< MatrixT >::ScalarType |
|
inherited |
|
inherited |
typedef MatrixType::RowVectorType capd::diffIncl::InclRect2Set< MatrixT >::VectorType |
|
inlineexplicit |
Constructors.
|
inline |
|
inline |
|
inline |
|
inlinestaticinherited |
|
inlineinherited |
returns dimension of a set
|
inlineinherited |
|
inlineinherited |
This method computes value of functor f at interval vector represented by this set.
|
inlineinherited |
|
inlineinherited |
returns matrix C
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns r0
|
inlineinherited |
|
inlineinherited |
returns current value of c0Factor;
|
inlineinherited |
returns current value of c1Factor;
|
inlineinherited |
returns current value of c2Factor;
|
inlineinherited |
|
inlineinherited |
returns j-th column of C
std::vector< typename InclRect2Set< MatrixType >::VectorType > capd::diffIncl::InclRect2Set< MatrixType >::getCorners |
|
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
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
returns current value of the flag which controls possibility of reorganization
|
inlineinherited |
|
inlineinherited |
|
staticinherited |
this computes next representation of the set given computed one-step enclosure of the form y + jacPhi*deltaX + rem
void capd::diffIncl::InclRect2Set< MatrixType >::move | ( | DiffIncl & | dynsys | ) |
void capd::diffIncl::InclRect2Set< MatrixType >::move | ( | DiffIncl & | dynsys, |
InclRect2Set< MatrixT > & | result | ||
) | const |
|
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
|
inlinevirtualinherited |
returns set's name
Reimplemented from capd::geomset::CenteredDoubletonSet< MatrixT >.
|
inlineinherited |
sets the flag which controls possibility of reorganization to new value
|
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 |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
makes reorganization if needed. return true if reorganization was performed
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
makes reorganization if needed.
|
inlineinherited |
|
inlineinherited |
sets matrix C:= B
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
sets r0
|
inlineinherited |
|
inlineinherited |
sets new value of c0Factor;
|
inlineinherited |
sets new value of c1Factor;
|
inlineinherited |
sets new value of c2Factor;
|
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 |
|
inlineinherited |
sets c0,c1,c2 factors to new value
|
inlineprotectedinherited |
|
inlineinherited |
|
inlineinherited |
sets i-th row of C to v
|
inlineinherited |
|
virtualinherited |
returns a set detailed information
Implements capd::dynset::AbstractSet< MatrixT::RowVectorType >.
|
inlineinherited |
|
inherited |
B is a coordinate system.
|
inherited |
C is a coordinate system of the 'Lipschitz' part.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
inherited |
|
protectedinherited |
|
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