Cholesky decompositions. More...
Classes | |
struct | ContactCholeskyDecompositionAccessorTpl |
Typedefs | |
typedef ContactCholeskyDecompositionAccessorTpl< double, 0 > | ContactCholeskyDecompositionAccessor |
Functions | |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | computeMinv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &Minv) |
Computes the inverse of the joint space inertia matrix M from its Cholesky factorization. More... | |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl> | |
const DataTpl< Scalar, Options, JointCollectionTpl >::RowMatrixXs & | computeMinv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data) |
Computes the inverse of the joint space inertia matrix M from its Cholesky factorization. The results is then directly stored in data.Minv. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | computeMinv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl> | |
const DataTpl< Scalar, Options, JointCollectionTpl >::MatrixXs & | decompose (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data) |
Compute the Cholesky decomposition of the joint space inertia matrix M contained in data. More... | |
template const PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | decompose< context::Scalar, context::Options, JointCollectionDefaultTpl > (const context::Model &, context::Data &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat , typename MatRes > | |
MatRes & | Mv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &min, const Eigen::MatrixBase< MatRes > &mout) |
Performs the multiplication by using the sparsity pattern of the M matrix. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs | Mv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | Mv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
PINOCCHIO_EIGEN_PLAIN_TYPE (Mat) Mv(const ModelTpl< Scalar | |
Performs the multiplication by using the sparsity pattern of the M matrix. More... | |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | solve (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &y) |
Return the solution of using the Cholesky decomposition stored in data given the entry . Act like solveInPlace of Eigen::LLT. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | solve< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | UDUtv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &m) |
Performs the multiplication by using the Cholesky decomposition of M stored in data. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | UDUtv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | Uiv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &v) |
Perform the pivot inversion using the Cholesky decomposition stored in data and acting in place. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | Uiv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | Utiv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &v) |
Perform the pivot inversion using the Cholesky decomposition stored in data and acting in place. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | Utiv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | Utv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &v) |
Perform the sparse multiplication using the Cholesky decomposition stored in data and acting in place. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | Utv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
template<typename Scalar , int Options, template< typename, int > class JointCollectionTpl, typename Mat > | |
Mat & | Uv (const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Mat > &v) |
Perform the sparse multiplication using the Cholesky decomposition stored in data and acting in place. More... | |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs & | Uv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > (const context::Model &, const context::Data &, const Eigen::MatrixBase< context::MatrixXs > &) |
Variables | |
JointCollectionTpl const DataTpl< Scalar, Options, JointCollectionTpl > & | data |
JointCollectionTpl const DataTpl< Scalar, Options, JointCollectionTpl > const Eigen::MatrixBase< Mat > & | min |
JointCollectionTpl & | model |
Options | |
Cholesky decompositions.
typedef ContactCholeskyDecompositionAccessorTpl<double, 0> pinocchio::cholesky::ContactCholeskyDecompositionAccessor |
Definition at line 57 of file unittest/contact-cholesky.cpp.
Mat& pinocchio::cholesky::computeMinv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | Minv | ||
) |
Computes the inverse of the joint space inertia matrix M from its Cholesky factorization.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[out] | Minv | The output matrix where the result is stored. |
const DataTpl<Scalar, Options, JointCollectionTpl>::RowMatrixXs& pinocchio::cholesky::computeMinv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
DataTpl< Scalar, Options, JointCollectionTpl > & | data | ||
) |
Computes the inverse of the joint space inertia matrix M from its Cholesky factorization. The results is then directly stored in data.Minv.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
Definition at line 293 of file cholesky.hpp.
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::computeMinv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
|
inline |
Compute the Cholesky decomposition of the joint space inertia matrix M contained in data.
The result stored in data.U and data.D matrices. One can retrieve the matrice M by performing the computation data.U * data.D * data.U.transpose()
See https://en.wikipedia.org/wiki/Cholesky_decomposition for futher details.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
template const PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::decompose< context::Scalar, context::Options, JointCollectionDefaultTpl > | ( | const context::Model & | , |
context::Data & | |||
) |
MatRes& pinocchio::cholesky::Mv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | min, | ||
const Eigen::MatrixBase< MatRes > & | mout | ||
) |
Performs the multiplication by using the sparsity pattern of the M matrix.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in] | min | The input matrix to multiply with data.M. |
[out] | mout | The output matrix where the result of is stored. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs pinocchio::cholesky::Mv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::Mv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
pinocchio::cholesky::PINOCCHIO_EIGEN_PLAIN_TYPE | ( | Mat | ) | const |
Performs the multiplication by using the sparsity pattern of the M matrix.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in] | min | The input matrix to multiply with data.M. |
Mat & pinocchio::cholesky::solve | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | y | ||
) |
Return the solution of using the Cholesky decomposition stored in data given the entry . Act like solveInPlace of Eigen::LLT.
Perform the sparse inversion using the Cholesky decomposition stored in data and acting in place.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | y | The input matrix to inverse which also contains the result of the inversion. |
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | v | The input matrix to multiply with data.M^{-1} and also storing the result. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::solve< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Mat& pinocchio::cholesky::UDUtv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | m | ||
) |
Performs the multiplication by using the Cholesky decomposition of M stored in data.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | m | The input matrix where the result of is stored. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::UDUtv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Mat& pinocchio::cholesky::Uiv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | v | ||
) |
Perform the pivot inversion using the Cholesky decomposition stored in data and acting in place.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | v | The input matrix to multiply with data.U^{-1} and also storing the result. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::Uiv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Mat& pinocchio::cholesky::Utiv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | v | ||
) |
Perform the pivot inversion using the Cholesky decomposition stored in data and acting in place.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | v | The input matrix to multiply with data.U^{-\top} and also storing the result. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::Utiv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Mat& pinocchio::cholesky::Utv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | v | ||
) |
Perform the sparse multiplication using the Cholesky decomposition stored in data and acting in place.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | v | The input matrix to multiply with data.U.tranpose() and also storing the result. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::Utv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Mat& pinocchio::cholesky::Uv | ( | const ModelTpl< Scalar, Options, JointCollectionTpl > & | model, |
const DataTpl< Scalar, Options, JointCollectionTpl > & | data, | ||
const Eigen::MatrixBase< Mat > & | v | ||
) |
Perform the sparse multiplication using the Cholesky decomposition stored in data and acting in place.
JointCollection | Collection of Joint types. |
[in] | model | The model structure of the rigid body system. |
[in] | data | The data structure of the rigid body system. |
[in,out] | v | The input matrix to multiply with data.U and also storing the result. |
template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI context::MatrixXs& pinocchio::cholesky::Uv< context::Scalar, context::Options, JointCollectionDefaultTpl, context::MatrixXs > | ( | const context::Model & | , |
const context::Data & | , | ||
const Eigen::MatrixBase< context::MatrixXs > & | |||
) |
Definition at line 88 of file cholesky.hpp.
JointCollectionTpl const DataTpl<Scalar, Options, JointCollectionTpl> const Eigen::MatrixBase<Mat>& pinocchio::cholesky::min |
Definition at line 89 of file cholesky.hpp.
JointCollectionTpl& pinocchio::cholesky::model |
Definition at line 87 of file cholesky.hpp.
pinocchio::cholesky::Options |
Definition at line 87 of file cholesky.hpp.