CAPD DynSys Library  5.2.0
capd::geomset::MatrixDoubletonSet< MatrixT > Class Template Reference

Set of matrices represented as D + Cjac * R0 + Bjac * R. More...

#include <capd/geomset/MatrixDoubletonSet.h>

Public Types

typedef MatrixAffineSet< MatrixT > BaseSet
 
typedef BaseSet::MatrixType MatrixType
 
typedef BaseSet::VectorType VectorType
 
typedef BaseSet::ColumnVectorType ColumnVectorType
 
typedef BaseSet::ScalarType ScalarType
 
typedef BaseSet::NormType NormType
 
typedef MatrixType::size_type size_type
 

Public Member Functions

 MatrixDoubletonSet (size_type)
 D:=Id, R0:=0, C:=Id, R:=0, B:=Id. More...
 
 MatrixDoubletonSet (const MatrixType &V)
 D:=mid(V), R0:=[-radius(V),radius(V)], C:=Id, R:=0, B:=Id. More...
 
 MatrixDoubletonSet (const MatrixType &D, bool)
 D:=D, R0:=0, C:=Id, R:=0, B:=Id. More...
 
 MatrixDoubletonSet (const MatrixType &D, const MatrixType &R0)
 D:=D, R0:=R0, C:=Id, R:=0, B:=Id. More...
 
 MatrixDoubletonSet (const MatrixType &D, const MatrixType &Cjac, const MatrixType &R0)
 
 MatrixDoubletonSet (const MatrixType &D, const MatrixType &Cjac, const MatrixType &R0, const MatrixType &R)
 
 MatrixDoubletonSet (const MatrixType &D, const MatrixType &Cjac, const MatrixType &R0, const MatrixType &Bjac, const MatrixType &R)
 
 operator MatrixType () const
 
void setToIdentity (size_type dim)
 
std::string toString () const
 returns set detailed information More...
 
virtual std::string name () const
 returns set's name More...
 
virtual MatrixType affineMatrixTransformation (const MatrixType &) const
 returns image of the set after affine transformation More...
 
const MatrixTypeget_R0 () const
 
const ScalarTypegetElement_R0 (size_type i, size_type j) const
 
VectorType getRow_R0 (size_type i) const
 
ColumnVectorType getColumn_R0 (size_type j) const
 
void set_R0 (const MatrixType &R0)
 
void setElement_R0 (size_type i, size_type j, const ScalarType &s)
 
template<typename VectorT >
void setRow_R0 (size_type i, const VectorT &v)
 
template<typename VectorT >
void setColumn_R0 (size_type j, const VectorT &v)
 
const MatrixTypeget_Cjac () const
 
const ScalarTypegetElement_Cjac (size_type i, size_type j) const
 
VectorType getRow_Cjac (size_type i) const
 
ColumnVectorType getColumn_Cjac (size_type j) const
 
void set_Cjac (const MatrixType &C)
 
void setElement_Cjac (size_type i, size_type j, const ScalarType &s)
 
template<typename VectorT >
void setRow_Cjac (size_type i, const VectorT &v)
 
template<typename VectorT >
void setColumn_Cjac (size_type j, const VectorT &v)
 
void setToIdentity ()
 sets the set to identity More...
 
const MatrixTypeget_D () const
 
const ScalarTypegetElement_D (size_type i, size_type j) const
 
VectorType getRow_D (size_type i) const
 
ColumnVectorType getColumn_D (size_type j) const
 
void set_D (const MatrixType &Bjac)
 
void setElement_D (size_type i, size_type j, const ScalarType &s)
 
template<typename VectorT >
void setRow_D (size_type i, const VectorT &v)
 
template<typename VectorT >
void setColumn_D (size_type j, const VectorT &v)
 
const MatrixTypeget_R () const
 
const ScalarTypegetElement_R (size_type i, size_type j) const
 
VectorType getRow_R (size_type i) const
 
ColumnVectorType getColumn_R (size_type j) const
 
void set_R (const MatrixType &Bjac)
 
void setElement_R (size_type i, size_type j, const ScalarType &s)
 
template<typename VectorT >
void setRow_R (size_type i, const VectorT &v)
 
template<typename VectorT >
void setColumn_R (size_type j, const VectorT &v)
 
const MatrixTypeget_invBjac () const
 
const MatrixTypeget_Bjac () const
 
const ScalarTypegetElement_Bjac (size_type i, size_type j) const
 
VectorType getRow_Bjac (size_type i) const
 
ColumnVectorType getColumn_Bjac (size_type j) const
 
void set_Bjac (const MatrixType &Bjac)
 
void setElement_Bjac (size_type i, size_type j, const ScalarType &s)
 
template<typename VectorT >
void setRow_Bjac (size_type i, const VectorT &v)
 
template<typename VectorT >
void setColumn_Bjac (size_type j, const VectorT &v)
 

Public Attributes

MatrixType m_R0
 r0 is a interval set in given coordinate system that represents 'Lipschitz' part More...
 
MatrixType m_Cjac
 C is a coordinate system of the 'Lipschitz' part. More...
 
MatrixType m_D
 D is a center of the set. More...
 
MatrixType m_Bjac
 Bjac is a coordinate system. More...
 
MatrixType m_R
 R is a interval set in given coordinate system. More...
 
MatrixType m_invBjac
 

Detailed Description

template<typename MatrixT>
class capd::geomset::MatrixDoubletonSet< MatrixT >

Set of matrices represented as D + Cjac * R0 + Bjac * R.

Set of matrices is represented as

\[ D + Cjac \cdot R0 + Bjac \cdot R \]

where

  • the matrix D is a center,
  • matrices Bjac and Cjac are coordinate systems
  • the matrix R0 represents stores set size
  • the matrix R is used as containers for all errors

Member Typedef Documentation

◆ BaseSet

template<typename MatrixT >
typedef MatrixAffineSet<MatrixT> capd::geomset::MatrixDoubletonSet< MatrixT >::BaseSet

◆ ColumnVectorType

template<typename MatrixT >
typedef BaseSet::ColumnVectorType capd::geomset::MatrixDoubletonSet< MatrixT >::ColumnVectorType

◆ MatrixType

template<typename MatrixT >
typedef BaseSet::MatrixType capd::geomset::MatrixDoubletonSet< MatrixT >::MatrixType

◆ NormType

template<typename MatrixT >
typedef BaseSet::NormType capd::geomset::MatrixDoubletonSet< MatrixT >::NormType

◆ ScalarType

template<typename MatrixT >
typedef BaseSet::ScalarType capd::geomset::MatrixDoubletonSet< MatrixT >::ScalarType

◆ size_type

template<typename MatrixT >
typedef MatrixType::size_type capd::geomset::MatrixDoubletonSet< MatrixT >::size_type

◆ VectorType

template<typename MatrixT >
typedef BaseSet::VectorType capd::geomset::MatrixDoubletonSet< MatrixT >::VectorType

Member Function Documentation

◆ get_Bjac()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixAffineSet< MatrixT >::get_Bjac ( ) const
inlineinherited

◆ get_Cjac()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixDoubletonSet< MatrixT >::get_Cjac ( ) const
inline

◆ get_D()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixAffineSet< MatrixT >::get_D ( ) const
inlineinherited

◆ get_invBjac()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixAffineSet< MatrixT >::get_invBjac ( ) const
inlineinherited

◆ get_R()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixAffineSet< MatrixT >::get_R ( ) const
inlineinherited

◆ get_R0()

template<typename MatrixT >
const MatrixType& capd::geomset::MatrixDoubletonSet< MatrixT >::get_R0 ( ) const
inline

◆ getColumn_Bjac()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixAffineSet< MatrixT >::getColumn_Bjac ( size_type  j) const
inlineinherited

◆ getColumn_Cjac()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixDoubletonSet< MatrixT >::getColumn_Cjac ( size_type  j) const
inline

◆ getColumn_D()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixAffineSet< MatrixT >::getColumn_D ( size_type  j) const
inlineinherited

◆ getColumn_R()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixAffineSet< MatrixT >::getColumn_R ( size_type  j) const
inlineinherited

◆ getColumn_R0()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixDoubletonSet< MatrixT >::getColumn_R0 ( size_type  j) const
inline

◆ getElement_Bjac()

template<typename MatrixT >
const ScalarType& capd::geomset::MatrixAffineSet< MatrixT >::getElement_Bjac ( size_type  i,
size_type  j 
) const
inlineinherited

◆ getElement_Cjac()

template<typename MatrixT >
const ScalarType& capd::geomset::MatrixDoubletonSet< MatrixT >::getElement_Cjac ( size_type  i,
size_type  j 
) const
inline

◆ getElement_D()

template<typename MatrixT >
const ScalarType& capd::geomset::MatrixAffineSet< MatrixT >::getElement_D ( size_type  i,
size_type  j 
) const
inlineinherited

◆ getElement_R()

template<typename MatrixT >
const ScalarType& capd::geomset::MatrixAffineSet< MatrixT >::getElement_R ( size_type  i,
size_type  j 
) const
inlineinherited

◆ getElement_R0()

template<typename MatrixT >
const ScalarType& capd::geomset::MatrixDoubletonSet< MatrixT >::getElement_R0 ( size_type  i,
size_type  j 
) const
inline

◆ getRow_Bjac()

template<typename MatrixT >
VectorType capd::geomset::MatrixAffineSet< MatrixT >::getRow_Bjac ( size_type  i) const
inlineinherited

◆ getRow_Cjac()

template<typename MatrixT >
VectorType capd::geomset::MatrixDoubletonSet< MatrixT >::getRow_Cjac ( size_type  i) const
inline

◆ getRow_D()

template<typename MatrixT >
VectorType capd::geomset::MatrixAffineSet< MatrixT >::getRow_D ( size_type  i) const
inlineinherited

◆ getRow_R()

template<typename MatrixT >
VectorType capd::geomset::MatrixAffineSet< MatrixT >::getRow_R ( size_type  i) const
inlineinherited

◆ getRow_R0()

template<typename MatrixT >
VectorType capd::geomset::MatrixDoubletonSet< MatrixT >::getRow_R0 ( size_type  i) const
inline

◆ name()

◆ operator MatrixType()

template<typename MatrixT >
capd::geomset::MatrixDoubletonSet< MatrixT >::operator MatrixType ( ) const

◆ set_Bjac()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::set_Bjac ( const MatrixType Bjac)
inlineinherited

◆ set_Cjac()

template<typename MatrixT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::set_Cjac ( const MatrixType C)
inline

◆ set_D()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::set_D ( const MatrixType Bjac)
inlineinherited

◆ set_R()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::set_R ( const MatrixType Bjac)
inlineinherited

◆ set_R0()

template<typename MatrixT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::set_R0 ( const MatrixType R0)
inline

◆ setColumn_Bjac()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setColumn_Bjac ( size_type  j,
const VectorT &  v 
)
inlineinherited

◆ setColumn_Cjac()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setColumn_Cjac ( size_type  j,
const VectorT &  v 
)
inline

◆ setColumn_D()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setColumn_D ( size_type  j,
const VectorT &  v 
)
inlineinherited

◆ setColumn_R()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setColumn_R ( size_type  j,
const VectorT &  v 
)
inlineinherited

◆ setColumn_R0()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setColumn_R0 ( size_type  j,
const VectorT &  v 
)
inline

◆ setElement_Bjac()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::setElement_Bjac ( size_type  i,
size_type  j,
const ScalarType s 
)
inlineinherited

◆ setElement_Cjac()

template<typename MatrixT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setElement_Cjac ( size_type  i,
size_type  j,
const ScalarType s 
)
inline

◆ setElement_D()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::setElement_D ( size_type  i,
size_type  j,
const ScalarType s 
)
inlineinherited

◆ setElement_R()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::setElement_R ( size_type  i,
size_type  j,
const ScalarType s 
)
inlineinherited

◆ setElement_R0()

template<typename MatrixT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setElement_R0 ( size_type  i,
size_type  j,
const ScalarType s 
)
inline

◆ setRow_Bjac()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setRow_Bjac ( size_type  i,
const VectorT &  v 
)
inlineinherited

◆ setRow_Cjac()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setRow_Cjac ( size_type  i,
const VectorT &  v 
)
inline

◆ setRow_D()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setRow_D ( size_type  i,
const VectorT &  v 
)
inlineinherited

◆ setRow_R()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setRow_R ( size_type  i,
const VectorT &  v 
)
inlineinherited

◆ setRow_R0()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixDoubletonSet< MatrixT >::setRow_R0 ( size_type  i,
const VectorT &  v 
)
inline

Member Data Documentation

◆ m_Bjac

template<typename MatrixT >
MatrixType capd::geomset::MatrixAffineSet< MatrixT >::m_Bjac

Bjac is a coordinate system.

◆ m_Cjac

template<typename MatrixT >
MatrixType capd::geomset::MatrixDoubletonSet< MatrixT >::m_Cjac

C is a coordinate system of the 'Lipschitz' part.

◆ m_D

template<typename MatrixT >
MatrixType capd::geomset::MatrixAffineSet< MatrixT >::m_D

D is a center of the set.

◆ m_invBjac

template<typename MatrixT >
MatrixType capd::geomset::MatrixAffineSet< MatrixT >::m_invBjac

◆ m_R

template<typename MatrixT >
MatrixType capd::geomset::MatrixAffineSet< MatrixT >::m_R

R is a interval set in given coordinate system.

◆ m_R0

template<typename MatrixT >
MatrixType capd::geomset::MatrixDoubletonSet< MatrixT >::m_R0

r0 is a interval set in given coordinate system that represents 'Lipschitz' part