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

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

#include <capd/geomset/MatrixAffineSet.h>

Public Types

typedef MatrixT MatrixType
 
typedef MatrixType::RowVectorType VectorType
 
typedef MatrixType::ColumnVectorType ColumnVectorType
 
typedef MatrixType::ScalarType ScalarType
 
typedef capd::vectalg::Norm< VectorType, MatrixTypeNormType
 
typedef MatrixType::size_type size_type
 

Public Member Functions

 MatrixAffineSet (size_type dim)
 A:=ID, R:=0, B:=Id. More...
 
 MatrixAffineSet (const MatrixType &A)
 A:=mid(v), B:=Id, R:=[-radius(v), radius(v)]. More...
 
 MatrixAffineSet (const MatrixType &D, bool)
 A:=A, B:=Id, R:=0. More...
 
 MatrixAffineSet (const MatrixType &D, const MatrixType &R)
 A:=A R:=R B:=Id. More...
 
 MatrixAffineSet (const MatrixType &D, const MatrixType &Bjac, const MatrixType &R)
 A:=A R:=R B:=B. More...
 
virtual ~MatrixAffineSet ()
 
 operator MatrixType () const
 return interval matrix containing all matrices in the set More...
 
void setToIdentity ()
 sets the set to identity More...
 
virtual std::string toString () const
 returns set detailed information More...
 
virtual std::string name () const
 returns set's name More...
 
virtual MatrixType affineMatrixTransformation (const MatrixType &A_M) const
 returns image of the set after affine transformation 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)
 

Protected Attributes

MatrixType m_D
 D is a center of the set. More...
 
MatrixType m_R
 R is a interval set in given coordinate system. More...
 
MatrixType m_Bjac
 Bjac is a coordinate system. More...
 
MatrixType m_invBjac
 

Detailed Description

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

Set of matrices represented as D + Bjac * R.

Set of matrices is represented as

\[ D + Bjac \cdot R \]

where

  • the matrix D is a center,
  • the matrix Bjac is a coordinate system
  • the matrix R represents the set in a given coordinate system.

Member Typedef Documentation

◆ ColumnVectorType

template<typename MatrixT >
typedef MatrixType::ColumnVectorType capd::geomset::MatrixAffineSet< MatrixT >::ColumnVectorType

◆ MatrixType

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

◆ NormType

template<typename MatrixT >
typedef capd::vectalg::Norm<VectorType,MatrixType> capd::geomset::MatrixAffineSet< MatrixT >::NormType

◆ ScalarType

template<typename MatrixT >
typedef MatrixType::ScalarType capd::geomset::MatrixAffineSet< MatrixT >::ScalarType

◆ size_type

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

◆ VectorType

template<typename MatrixT >
typedef MatrixType::RowVectorType capd::geomset::MatrixAffineSet< MatrixT >::VectorType

Constructor & Destructor Documentation

◆ ~MatrixAffineSet()

template<typename MatrixT >
virtual capd::geomset::MatrixAffineSet< MatrixT >::~MatrixAffineSet ( )
inlinevirtual

Member Function Documentation

◆ get_Bjac()

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

◆ get_D()

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

◆ get_invBjac()

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

◆ get_R()

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

◆ getColumn_Bjac()

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

◆ getColumn_D()

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

◆ getColumn_R()

template<typename MatrixT >
ColumnVectorType capd::geomset::MatrixAffineSet< MatrixT >::getColumn_R ( 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
inline

◆ getElement_D()

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

◆ getElement_R()

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

◆ getRow_Bjac()

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

◆ getRow_D()

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

◆ getRow_R()

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

◆ name()

◆ operator MatrixType()

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

return interval matrix containing all matrices in the set

◆ set_Bjac()

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

◆ set_D()

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

◆ set_R()

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

◆ setColumn_Bjac()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setColumn_Bjac ( 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 
)
inline

◆ setColumn_R()

template<typename MatrixT >
template<typename VectorT >
void capd::geomset::MatrixAffineSet< MatrixT >::setColumn_R ( 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 
)
inline

◆ setElement_D()

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

◆ setElement_R()

template<typename MatrixT >
void capd::geomset::MatrixAffineSet< MatrixT >::setElement_R ( 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 
)
inline

◆ setRow_D()

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

◆ setRow_R()

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

Member Data Documentation

◆ m_Bjac

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

Bjac is a coordinate system.

◆ m_D

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

D is a center of the set.

◆ m_invBjac

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

◆ m_R

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

R is a interval set in given coordinate system.