- 3.0.2 rigid body dynamics module.
|
#include "rbd.h"
#include "InertiaMatrix.h"
#include "TransformsBase.h"
#include "types.h"
#include "internals.h"
Go to the source code of this file.
Namespaces | |
iit | |
iit::rbd | |
Macros | |
#define | DScalar typename Derived::Scalar |
#define | block33 template block<3,3> |
Functions | |||||||||||||
template<typename Derived > | |||||||||||||
Force< DScalar > | iit::rbd::vxIv (const Velocity< DScalar > &v, const MatrixBase< Derived > &I) | ||||||||||||
template<typename Derived > | |||||||||||||
Force< DScalar > | iit::rbd::vxIv (const DScalar &omegaz, const MatrixBase< Derived > &I) | ||||||||||||
template<typename S = double> | |||||||||||||
void | iit::rbd::motionCrossProductMx (const Velocity< S > &v, Mat66< S > &vx) | ||||||||||||
template<typename S = double> | |||||||||||||
void | iit::rbd::forceCrossProductMx (const Velocity< S > &v, Mat66< S > &vx) | ||||||||||||
template<typename S = double> | |||||||||||||
void | iit::rbd::fillInertia (S mass, const Vec3< S > &com, const internal::SymmMat3x3Coefficients< S > &I3x3, InertiaMat< S > &I) | ||||||||||||
template<typename Scalar = double> | |||||||||||||
void | iit::rbd::transformInertia (const InertiaMat< Scalar > &I_A, const Mat66< Scalar > &XF, InertiaMat< Scalar > &I_B) | ||||||||||||
Articulated inertia - Coordinate transform | |||||||||||||
These functions perform the coordinate transform of a spatial articulated inertia, in the special case of a mass-less handle (see chapter 7 of the RBDA book, §7.2.2, equation 7.23) Two specialized functions are available for the two cases of revolute and prismatic joint (which connects the subtree with the mass-less handle), since the inertia exhibits two different sparsity patterns.
| |||||||||||||
template<typename D1 , typename D2 , typename D3 > | |||||||||||||
void | iit::rbd::ctransform_Ia_revolute (const MatrixBase< D1 > &Ia_A, const MatrixBase< D2 > &XM, const MatrixBase< D3 > &Ia_B_const) | ||||||||||||
template<typename D1 , typename D2 , typename D3 > | |||||||||||||
void | iit::rbd::ctransform_Ia_prismatic (const MatrixBase< D1 > &Ia_A, const MatrixBase< D2 > &XM, const MatrixBase< D3 > &Ia_B_const) | ||||||||||||
Articulated inertia - Computation | |||||||||||||
These functions calculate the spatial articulated inertia of a subtree, in the special case of a mass-less handle (see chapter 7 of the RBDA book, §7.2.2, equation 7.23) Two specialized functions are available for the two cases of revolute and prismatic joint (which connects the subtree with the mass-less handle), since the inertia exhibits two different sparsity patterns.
| |||||||||||||
template<typename D1 , typename D2 > | |||||||||||||
void | iit::rbd::compute_Ia_revolute (const MatrixBase< D1 > &IA, const Vec6< typename D1::Scalar > &U, const typename D1::Scalar &D, const MatrixBase< D2 > &Ia_const) | ||||||||||||
template<typename D1 , typename D2 > | |||||||||||||
void | iit::rbd::compute_Ia_prismatic (const MatrixBase< D1 > &IA, const Vec6< typename D1::Scalar > &U, const typename D1::Scalar &D, const MatrixBase< D2 > &Ia_const) | ||||||||||||
#define block33 template block<3,3> |