sotRotationComposed Class Reference

#include <sot/core/rotation-simple.hh>

Inheritance diagram for sotRotationComposed:
[legend]

Public Types

enum  GivenRotationModifior {
  GR_FIRST,
  GR_SECOND,
  GR_BOTH
}
 

Public Member Functions

 sotRotationComposed (void)
 
 sotRotationComposed (const sotRotationComposed &clone)
 
virtual ~sotRotationComposed (void)
 
template<typename TemplateRotation >
void pushBack (const TemplateRotation &R)
 
void pushBack (const sotRotationSimpleGiven &R)
 
void pushBack (const sotRotationSimpleHouseholder &R)
 
void pushBack (const RotationSimple *R)
 
void pushBack (const sotRotationComposed &R)
 
void popBack (void)
 
void clear (void)
 
template<typename bubTemplateMatrix >
void householderQRinit (const bubTemplateMatrix &RQ, const bubVector &betas, const int nbVector=-1)
 
void resetGRindex (const GivenRotationModifior modifior, const unsigned int k1, const unsigned int k2=1)
 
void increaseGRindex (const GivenRotationModifior modifior, const unsigned int k1, const unsigned int k2=1)
 
template<typename bubTemplateVector >
void multiplyRightVectorTemplate (bubTemplateVector &v) const
 
template<typename bubTemplateVector >
void multiplyLeftVectorTemplate (bubTemplateVector &v) const
 
template<typename bubTemplateMatrix >
void multiplyRightMatrixTemplate (bubTemplateMatrix &M) const
 
template<typename bubTemplateMatrix >
void multiplyLeftMatrixTemplate (bubTemplateMatrix &M) const
 
template<typename bubTemplateMatrix >
void multiplyRightTransposeMatrixTemplate (bubTemplateMatrix &M) const
 
template<typename bubTemplateMatrix >
void multiplyLeftTransposeMatrixTemplate (bubTemplateMatrix &M) const
 
template<typename bubTemplate >
void multiplyLeftTemplate (bubTemplate &Rx) const
 
template<typename bubTemplate >
void multiplyRightTemplate (bubTemplate &Rx) const
 
template<typename bubTemplate >
void multiplyLeftTransposeTemplate (bubTemplate &Rx) const
 
template<typename bubTemplate >
void multiplyRightTransposeTemplate (bubTemplate &Rx) const
 
virtual std::ostream & display (std::ostream &os) const
 
template<typename bubTemplateMatrix >
void householderTrigonalisation (bubTemplateMatrix &R)
 
template<typename bubTemplateMatrix >
void regularizeRankDeficientTriangle (bubTemplateMatrix &Rx, const unsigned int xn=0)
 
template<typename bubTemplateMatrix >
void regularizeRankDeficientTriangle (bubTemplateMatrix &Rx, bub::indirect_array<> orderCol, const unsigned int xn)
 
- Public Member Functions inherited from RotationSimple
virtual ~RotationSimple (void)
 
template<typename bubTemplateVectorIN , typename bubTemplateVectorOUT >
void multiplyRangeRight (const bubTemplateVectorIN &M, bubTemplateVectorOUT &res, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 
template<typename bubTemplateVector >
void multiplyRangeRight (bubTemplateVector &M, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 
template<typename bubTemplateVectorIN , typename bubTemplateVectorOUT >
void multiplyRangeLeft (const bubTemplateVectorIN &M, bubTemplateVectorOUT &res, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 
template<typename bubTemplateVector >
bub::vector_range< bubTemplateVector > multiplyRangeLeft (bubTemplateVector &m, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 
virtual void multiplyRangeRight (const bubMatrix &M, bubMatrix &res, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 
virtual void multiplyRangeRight (bubMatrix &M, const unsigned int zeroBefore, const unsigned int zeroAfter) const
 

Public Attributes

std::list< RotationSimple *> listRotationSimple
 
std::list< sotRotationSimpleHouseholderlistHouseholder
 
std::list< sotRotationSimpleGivenlistGivenRotation
 

Member Enumeration Documentation

◆ GivenRotationModifior

Enumerator
GR_FIRST 
GR_SECOND 
GR_BOTH 

Constructor & Destructor Documentation

◆ sotRotationComposed() [1/2]

sotRotationComposed::sotRotationComposed ( void  )
inline

◆ sotRotationComposed() [2/2]

sotRotationComposed::sotRotationComposed ( const sotRotationComposed clone)
inline

◆ ~sotRotationComposed()

virtual sotRotationComposed::~sotRotationComposed ( void  )
inlinevirtual

Member Function Documentation

◆ clear()

void sotRotationComposed::clear ( void  )
inline

◆ display()

virtual std::ostream& sotRotationComposed::display ( std::ostream &  os) const
inlinevirtual

Implements RotationSimple.

◆ householderQRinit()

template<typename bubTemplateMatrix >
void sotRotationComposed::householderQRinit ( const bubTemplateMatrix &  RQ,
const bubVector betas,
const int  nbVector = -1 
)
inline

◆ householderTrigonalisation()

template<typename bubTemplateMatrix >
void sotRotationComposed::householderTrigonalisation ( bubTemplateMatrix &  R)
inline

◆ increaseGRindex()

void sotRotationComposed::increaseGRindex ( const GivenRotationModifior  modifior,
const unsigned int  k1,
const unsigned int  k2 = 1 
)
inline

◆ multiplyLeftMatrixTemplate()

template<typename bubTemplateMatrix >
void sotRotationComposed::multiplyLeftMatrixTemplate ( bubTemplateMatrix &  M) const
inline

◆ multiplyLeftTemplate()

template<typename bubTemplate >
void sotRotationComposed::multiplyLeftTemplate ( bubTemplate &  Rx) const
inline

◆ multiplyLeftTransposeMatrixTemplate()

template<typename bubTemplateMatrix >
void sotRotationComposed::multiplyLeftTransposeMatrixTemplate ( bubTemplateMatrix &  M) const
inline

◆ multiplyLeftTransposeTemplate()

template<typename bubTemplate >
void sotRotationComposed::multiplyLeftTransposeTemplate ( bubTemplate &  Rx) const
inline

◆ multiplyLeftVectorTemplate()

template<typename bubTemplateVector >
void sotRotationComposed::multiplyLeftVectorTemplate ( bubTemplateVector &  v) const
inline

◆ multiplyRightMatrixTemplate()

template<typename bubTemplateMatrix >
void sotRotationComposed::multiplyRightMatrixTemplate ( bubTemplateMatrix &  M) const
inline

◆ multiplyRightTemplate()

template<typename bubTemplate >
void sotRotationComposed::multiplyRightTemplate ( bubTemplate &  Rx) const
inline

◆ multiplyRightTransposeMatrixTemplate()

template<typename bubTemplateMatrix >
void sotRotationComposed::multiplyRightTransposeMatrixTemplate ( bubTemplateMatrix &  M) const
inline

◆ multiplyRightTransposeTemplate()

template<typename bubTemplate >
void sotRotationComposed::multiplyRightTransposeTemplate ( bubTemplate &  Rx) const
inline

◆ multiplyRightVectorTemplate()

template<typename bubTemplateVector >
void sotRotationComposed::multiplyRightVectorTemplate ( bubTemplateVector &  v) const
inline

◆ popBack()

void sotRotationComposed::popBack ( void  )
inline

◆ pushBack() [1/5]

template<typename TemplateRotation >
void sotRotationComposed::pushBack ( const TemplateRotation &  R)
inline

◆ pushBack() [2/5]

void sotRotationComposed::pushBack ( const sotRotationSimpleGiven R)
inline

◆ pushBack() [3/5]

void sotRotationComposed::pushBack ( const sotRotationSimpleHouseholder R)
inline

◆ pushBack() [4/5]

void sotRotationComposed::pushBack ( const RotationSimple R)
inline

◆ pushBack() [5/5]

void sotRotationComposed::pushBack ( const sotRotationComposed R)
inline

References listRotationSimple.

◆ regularizeRankDeficientTriangle() [1/2]

template<typename bubTemplateMatrix >
void sotRotationComposed::regularizeRankDeficientTriangle ( bubTemplateMatrix &  Rx,
const unsigned int  xn = 0 
)
inline

◆ regularizeRankDeficientTriangle() [2/2]

template<typename bubTemplateMatrix >
void sotRotationComposed::regularizeRankDeficientTriangle ( bubTemplateMatrix &  Rx,
bub::indirect_array<>  orderCol,
const unsigned int  xn 
)
inline

References sotDEBUG.

◆ resetGRindex()

void sotRotationComposed::resetGRindex ( const GivenRotationModifior  modifior,
const unsigned int  k1,
const unsigned int  k2 = 1 
)
inline

Member Data Documentation

◆ listGivenRotation

std::list< sotRotationSimpleGiven > sotRotationComposed::listGivenRotation

◆ listHouseholder

std::list< sotRotationSimpleHouseholder > sotRotationComposed::listHouseholder

◆ listRotationSimple

std::list< RotationSimple* > sotRotationComposed::listRotationSimple

Referenced by pushBack().