rotation-simple.hh File Reference
#include <jrl/mal/boost.hh>
#include <boost/numeric/ublas/triangular.hpp>
#include <boost/numeric/ublas/lu.hpp>
#include <sot/core/debug.hh>
#include "sot/core/api.hh"
#include <list>

Classes

class  MATLAB
class  RotationSimple
class  sotRotationSimpleHouseholder
class  sotRotationSimpleGiven
class  sotRotationComposed
class  sotRotationComposedInExtenso

Defines

#define SOT_ROTATION_SIMPLE_MULTIPLY(MATRIX_TYPE)
#define SOT_ROTATION_SIMPLE_MULTIPLY_TRANSPOSE(MATRIX_TYPE)
#define SOT_ROTATION_DERIVATED_MULTIPLY_VECTOR(VECTOR_TYPE)
#define SOT_ROTATION_DERIVATED_MULTIPLY_MATRIX(MATRIX_TYPE)
#define SOT_ROTATION_SIMPLE_TEMPLATE_VECTOR_LIST(A)   A(bubVector) A(bub::vector_range<bubVector>) A(bub::matrix_column<bubMatrix>) A(bub::vector_range<bub::matrix_column<bubMatrix> >) A(__SRS_col_matcolmaj)
#define SOT_ROTATION_SIMPLE_TEMPLATE_MATRIX_LIST(A)   A(bubMatrix) A(bub::matrix_range<bubMatrix>) A(__SRS_matcolmaj) A( __SRS_rang_matcolmaj) A( __SRS_triadup_rang_matcolmaj) A( __SRS_triadup_rang_mat) A(__SRS_triadup_rang_triup ) A(__SRS_triup)

Typedefs

typedef bub::vector< double > bubVector
typedef bub::matrix< double > bubMatrix
typedef bub::matrix< double,
bub::column_major > 
__SRS_matcolmaj
typedef bub::matrix_range
< __SRS_matcolmaj
__SRS_rang_matcolmaj
typedef
bub::triangular_adaptor
< bub::matrix_range
< bub::matrix< double,
bub::column_major >
>, bub::upper > 
__SRS_triadup_rang_matcolmaj
typedef
bub::triangular_adaptor
< bub::matrix_range< bubMatrix >
, bub::upper > 
__SRS_triadup_rang_mat
typedef
bub::triangular_adaptor
< bub::matrix_range
< bub::triangular_matrix
< double, bub::upper >
>, bub::upper > 
__SRS_triadup_rang_triup
typedef bub::triangular_matrix
< double, bub::upper > 
__SRS_triup
typedef bub::matrix_column
< __SRS_matcolmaj
__SRS_col_matcolmaj

Functions

template<class bubTemplateMatrix >
void bubClear (const bubTemplateMatrix &m)
template<class bubTemplateMatrix >
void bubClearMatrix (const bubTemplateMatrix &m)
template<typename bubTemplateMatrix >
void randMatrix (bubTemplateMatrix &M, const unsigned int row, const unsigned int col)
template<typename bubTemplateVector >
void randVector (bubTemplateVector &M, const unsigned int row)

Define Documentation

#define SOT_ROTATION_DERIVATED_MULTIPLY_MATRIX (   MATRIX_TYPE)
Value:
virtual void multiplyRight( MATRIX_TYPE& M ) const  \
  { multiplyRightMatrixTemplate( M ); }   \
  virtual void multiplyLeft( MATRIX_TYPE& M ) const   \
  { multiplyLeftMatrixTemplate( M ); } \
  virtual void multiplyRightTranspose( MATRIX_TYPE& M ) const  \
  { multiplyRightTransposeMatrixTemplate( M ); }   \
  virtual void multiplyLeftTranspose( MATRIX_TYPE& M ) const   \
  { multiplyLeftTransposeMatrixTemplate( M ); }
#define SOT_ROTATION_DERIVATED_MULTIPLY_VECTOR (   VECTOR_TYPE)
Value:
virtual void multiplyRight( VECTOR_TYPE& M ) const  \
  { multiplyRightVectorTemplate( M ); }   \
  virtual void multiplyLeft( VECTOR_TYPE& M ) const   \
  { multiplyLeftVectorTemplate( M ); }
#define SOT_ROTATION_SIMPLE_MULTIPLY (   MATRIX_TYPE)
Value:
virtual void multiplyRight( MATRIX_TYPE& M ) const = 0; /* M:=P.M */  \
  virtual void multiplyLeft( MATRIX_TYPE& M ) const= 0;   /* M:=M.P */
#define SOT_ROTATION_SIMPLE_MULTIPLY_TRANSPOSE (   MATRIX_TYPE)
Value:
virtual void multiplyRightTranspose( MATRIX_TYPE& M ) const = 0; /* M:=P'.M */  \
  virtual void multiplyLeftTranspose( MATRIX_TYPE& M ) const= 0;   /* M:=M.P' */
#define SOT_ROTATION_SIMPLE_TEMPLATE_VECTOR_LIST (   A)    A(bubVector) A(bub::vector_range<bubVector>) A(bub::matrix_column<bubMatrix>) A(bub::vector_range<bub::matrix_column<bubMatrix> >) A(__SRS_col_matcolmaj)

Typedef Documentation

typedef bub::matrix_column<__SRS_matcolmaj> __SRS_col_matcolmaj
typedef bub::matrix<double,bub::column_major> __SRS_matcolmaj
typedef bub::matrix_range<__SRS_matcolmaj> __SRS_rang_matcolmaj
typedef bub::triangular_adaptor<bub::matrix_range< bubMatrix >,bub::upper> __SRS_triadup_rang_mat
typedef bub::triangular_adaptor<bub::matrix_range<bub::matrix<double,bub::column_major> >,bub::upper > __SRS_triadup_rang_matcolmaj
typedef bub::triangular_adaptor<bub::matrix_range<bub::triangular_matrix<double,bub::upper> >,bub::upper > __SRS_triadup_rang_triup
typedef bub::triangular_matrix<double,bub::upper> __SRS_triup
typedef bub::matrix<double> bubMatrix
typedef bub::vector<double> bubVector

Function Documentation

template<class bubTemplateMatrix >
void bubClear ( const bubTemplateMatrix &  m)
template<class bubTemplateMatrix >
void bubClearMatrix ( const bubTemplateMatrix &  m)
template<typename bubTemplateMatrix >
void randMatrix ( bubTemplateMatrix &  M,
const unsigned int  row,
const unsigned int  col 
)
template<typename bubTemplateVector >
void randVector ( bubTemplateVector &  M,
const unsigned int  row 
)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines