hpp-constraints  4.9.1
Definition of basic geometric constraints for motion planning
hpp::constraints::MatrixOfExpressions< ValueType, JacobianType > Class Template Reference

Matrix having Expression elements. More...

#include <hpp/constraints/symbolic-calculus.hh>

Inheritance diagram for hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >:
Collaboration diagram for hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >:

Public Types

typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > Value_t
 
typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > Jacobian_t
 
typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > PseudoInv_t
 
typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > PseudoInvJacobian_t
 
typedef CalculusBase< MatrixOfExpressions, Value_t, Jacobian_tParent_t
 
typedef CalculusBaseAbstract< ValueType, JacobianType > Element_t
 
typedef Traits< Element_t >::Ptr_t ElementPtr_t
 
typedef Eigen::JacobiSVD< Value_tSVD_t
 
- Public Types inherited from hpp::constraints::CalculusBaseAbstract< Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > >
typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > ValueType_t
 
typedef Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > JacobianType_t
 

Public Member Functions

 MatrixOfExpressions (const Eigen::Ref< const Value_t > &value, const Eigen::Ref< const Jacobian_t > &jacobian)
 
 MatrixOfExpressions (const Parent_t &other)
 
 MatrixOfExpressions (const MatrixOfExpressions &matrix)
 
void setSize (std::size_t nRows, std::size_t nCols)
 
ElementPtr_toperator() (std::size_t i, std::size_t j)
 
void set (std::size_t i, std::size_t j, const ElementPtr_t ptr)
 
void impl_value (const ConfigurationIn_t arg)
 
void impl_jacobian (const ConfigurationIn_t arg)
 
const PseudoInv_tpinv () const
 
const PseudoInvJacobian_tpinvJacobian () const
 
void computeSVD (const ConfigurationIn_t arg)
 
void computePseudoInverse (const ConfigurationIn_t arg)
 
void computePseudoInverseJacobian (const ConfigurationIn_t arg, const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &rhs)
 
void jacobianTimes (const ConfigurationIn_t arg, const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &rhs, Eigen::Ref< Jacobian_t > cache) const
 
void jacobianTransposeTimes (const ConfigurationIn_t arg, const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &rhs, Eigen::Ref< Jacobian_t > cache) const
 
Eigen::JacobiSVD< Value_t > & svd ()
 
void invalidate ()
 
- Public Member Functions inherited from hpp::constraints::CalculusBase< MatrixOfExpressions< ValueType, JacobianType >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > >
 CalculusBase ()
 
 CalculusBase (const Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > &value, const Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > &jacobian)
 
 CalculusBase (const CalculusBase &o)
 
const Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > & value () const
 
const Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > & jacobian () const
 
void computeValue (const ConfigurationIn_t arg)
 
void computeJacobian (const ConfigurationIn_t arg)
 
void invalidate ()
 
const CrossMatrixcross () const
 
void computeCrossValue (const ConfigurationIn_t arg)
 

Public Attributes

std::size_t nRows_
 
std::size_t nCols_
 
std::vector< std::vector< ElementPtr_t > > elements_
 

Additional Inherited Members

- Protected Member Functions inherited from hpp::constraints::CalculusBase< MatrixOfExpressions< ValueType, JacobianType >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > >
void init (const typename Traits< MatrixOfExpressions< ValueType, JacobianType > >::Ptr_t &ptr)
 
- Protected Attributes inherited from hpp::constraints::CalculusBase< MatrixOfExpressions< ValueType, JacobianType >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic >, Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > >
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > value_
 
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > jacobian_
 
CrossMatrix cross_
 
bool vValid_
 
bool jValid_
 
bool cValid_
 

Detailed Description

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
class hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >

Matrix having Expression elements.

Member Typedef Documentation

◆ Element_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef CalculusBaseAbstract<ValueType, JacobianType> hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::Element_t

◆ ElementPtr_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Traits<Element_t>::Ptr_t hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::ElementPtr_t

◆ Jacobian_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Eigen::Matrix<value_type, Eigen::Dynamic, Eigen::Dynamic > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::Jacobian_t

◆ Parent_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef CalculusBase<MatrixOfExpressions, Value_t, Jacobian_t > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::Parent_t

◆ PseudoInv_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Eigen::Matrix<value_type, Eigen::Dynamic, Eigen::Dynamic > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::PseudoInv_t

◆ PseudoInvJacobian_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Eigen::Matrix<value_type, Eigen::Dynamic, Eigen::Dynamic > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::PseudoInvJacobian_t

◆ SVD_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Eigen::JacobiSVD<Value_t> hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::SVD_t

◆ Value_t

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
typedef Eigen::Matrix<value_type, Eigen::Dynamic, Eigen::Dynamic > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::Value_t

Constructor & Destructor Documentation

◆ MatrixOfExpressions() [1/3]

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::MatrixOfExpressions ( const Eigen::Ref< const Value_t > &  value,
const Eigen::Ref< const Jacobian_t > &  jacobian 
)
inline

◆ MatrixOfExpressions() [2/3]

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::MatrixOfExpressions ( const Parent_t other)
inline

◆ MatrixOfExpressions() [3/3]

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::MatrixOfExpressions ( const MatrixOfExpressions< ValueType, JacobianType > &  matrix)
inline

Member Function Documentation

◆ computePseudoInverse()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::computePseudoInverse ( const ConfigurationIn_t  arg)
inline

◆ computePseudoInverseJacobian()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::computePseudoInverseJacobian ( const ConfigurationIn_t  arg,
const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &  rhs 
)
inline

◆ computeSVD()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::computeSVD ( const ConfigurationIn_t  arg)
inline

◆ impl_jacobian()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::impl_jacobian ( const ConfigurationIn_t  arg)
inline

◆ impl_value()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::impl_value ( const ConfigurationIn_t  arg)
inline

◆ invalidate()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::invalidate ( )
inlinevirtual

◆ jacobianTimes()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::jacobianTimes ( const ConfigurationIn_t  arg,
const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &  rhs,
Eigen::Ref< Jacobian_t cache 
) const
inline

◆ jacobianTransposeTimes()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::jacobianTransposeTimes ( const ConfigurationIn_t  arg,
const Eigen::Ref< const Eigen::Matrix< value_type, Eigen::Dynamic, 1 > > &  rhs,
Eigen::Ref< Jacobian_t cache 
) const
inline

◆ operator()()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
ElementPtr_t& hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::operator() ( std::size_t  i,
std::size_t  j 
)
inline

◆ pinv()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
const PseudoInv_t& hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::pinv ( ) const
inline

◆ pinvJacobian()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
const PseudoInvJacobian_t& hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::pinvJacobian ( ) const
inline

◆ set()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::set ( std::size_t  i,
std::size_t  j,
const ElementPtr_t  ptr 
)
inline

◆ setSize()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
void hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::setSize ( std::size_t  nRows,
std::size_t  nCols 
)
inline

◆ svd()

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
Eigen::JacobiSVD<Value_t>& hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::svd ( )
inline

Member Data Documentation

◆ elements_

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
std::vector<std::vector <ElementPtr_t> > hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::elements_

◆ nCols_

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
std::size_t hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::nCols_

◆ nRows_

template<typename ValueType = eigen::vector3_t, typename JacobianType = JacobianMatrix>
std::size_t hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >::nRows_

The documentation for this class was generated from the following file: