- 3.0.2 rigid body dynamics module.
|
#include <jsim.h>
Public Types | |
typedef TRAIT::Scalar | Scalar |
typedef iit::TestHyQ::tpl::JointState< Scalar > | JointState |
typedef iit::rbd::Core< Scalar > | CoreS |
typedef Base::Index | Index |
typedef iit::rbd::PlainMatrix< Scalar, 18, 18 > | MatrixType |
typedef const Eigen::Block< const MatrixType, 6, 12 > | BlockF_t |
typedef const Eigen::Block< const MatrixType, 12, 12 > | BlockFixedBase_t |
typedef InertiaProperties< TRAIT > | IProperties |
typedef iit::TestHyQ::tpl::ForceTransforms< TRAIT > | FTransforms |
typedef iit::rbd::tpl::InertiaMatrixDense< Scalar > | InertiaMatrix |
Public Types inherited from iit::rbd::StateDependentMatrix< iit::TestHyQ::tpl::JointState< TRAIT::Scalar >, 18, 18, JSIM< TRAIT > > | |
typedef Base::Index | Index |
typedef Base | MatrixType |
Public Member Functions | |
JSIM (IProperties &, FTransforms &) | |
~JSIM () | |
const JSIM & | update (const JointState &) |
void | computeL () |
void | computeInverse () |
const MatrixType & | getL () const |
const MatrixType & | getInverse () const |
const InertiaMatrix & | getWholeBodyInertia () const |
const BlockF_t | getF () const |
const BlockFixedBase_t | getFixedBaseBlock () const |
Public Member Functions inherited from iit::rbd::StateDependentMatrix< iit::TestHyQ::tpl::JointState< TRAIT::Scalar >, 18, 18, JSIM< TRAIT > > | |
StateDependentMatrix () | |
~StateDependentMatrix () | |
StateDependentMatrix & | operator= (const MatrixBase< OtherDerived > &other) |
Public Member Functions inherited from iit::rbd::StateDependentBase< iit::TestHyQ::tpl::JointState< TRAIT::Scalar >, JSIM< TRAIT > > | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW const JSIM< TRAIT > & | operator() (iit::TestHyQ::tpl::JointState< TRAIT::Scalar > const &state) |
const JSIM< TRAIT > & | update (iit::TestHyQ::tpl::JointState< TRAIT::Scalar > const &state) |
Protected Member Functions | |
void | computeLInverse () |
Additional Inherited Members | |
Public Attributes inherited from iit::rbd::StateDependentMatrix< iit::TestHyQ::tpl::JointState< TRAIT::Scalar >, 18, 18, JSIM< TRAIT > > | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef Base::Scalar | Scalar |
The type of the Joint Space Inertia Matrix (JSIM) of the robot TestHyQ.
typedef TRAIT::Scalar iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::Scalar |
typedef iit::TestHyQ::tpl::JointState<Scalar> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::JointState |
typedef iit::rbd::Core<Scalar> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::CoreS |
typedef Base::Index iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::Index |
typedef iit::rbd::PlainMatrix<Scalar, 18, 18> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::MatrixType |
typedef const Eigen::Block<const MatrixType,6,12> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::BlockF_t |
The type of the F sub-block of the floating-base JSIM
typedef const Eigen::Block<const MatrixType,12,12> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::BlockFixedBase_t |
The type of the fixed-base sub-block of the JSIM
typedef InertiaProperties<TRAIT> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::IProperties |
typedef iit::TestHyQ::tpl::ForceTransforms<TRAIT> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::FTransforms |
typedef iit::rbd::tpl::InertiaMatrixDense<Scalar> iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::InertiaMatrix |
iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::JSIM | ( | IProperties & | inertiaProperties, |
FTransforms & | forceTransforms | ||
) |
|
inline |
References iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeInverse(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeL(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeLInverse(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::getF(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::getFixedBaseBlock(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::getInverse(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::getL(), iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::getWholeBodyInertia(), and iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::update().
const iit::TestHyQ::dyn::tpl::JSIM< TRAIT > & iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::update | ( | const JointState & | state | ) |
References iit::rbd::AZ, DATA, F, Fcol, iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_LF_hipassembly(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_LF_upperleg(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_LH_hipassembly(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_LH_upperleg(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_RF_hipassembly(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_RF_upperleg(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_RH_hipassembly(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_RH_upperleg(), iit::TestHyQ::dyn::tpl::InertiaProperties< TRAIT >::getTensor_trunk(), iit::TestHyQ::LF_HAA, iit::TestHyQ::LF_HFE, iit::TestHyQ::LF_KFE, iit::TestHyQ::LH_HAA, iit::TestHyQ::LH_HFE, iit::TestHyQ::LH_KFE, iit::TestHyQ::RF_HAA, iit::TestHyQ::RF_HFE, iit::TestHyQ::RF_KFE, iit::TestHyQ::RH_HAA, iit::TestHyQ::RH_HFE, and iit::TestHyQ::RH_KFE.
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
void iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeL | ( | ) |
Computes and saves the matrix L of the L^T L factorization of this JSIM.
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
void iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeInverse | ( | ) |
Computes and saves the inverse of this JSIM. This function assumes that computeL() has been called already, since it uses L to compute the inverse. The algorithm takes advantage of the branch induced sparsity of the robot, if any.
References iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeLInverse().
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
inline |
Returns an unmodifiable reference to the matrix L. See also computeL()
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
inline |
Returns an unmodifiable reference to the inverse of this JSIM
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
inline |
The spatial composite-inertia tensor of the robot base, ie the inertia of the whole robot for the current configuration. According to the convention of this class about the layout of the floating-base JSIM, this tensor is the 6x6 upper left corner of the JSIM itself.
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
inline |
The matrix that maps accelerations in the actual joints of the robot to the spatial force acting on the floating-base of the robot. This matrix is the F sub-block of the JSIM in Featherstone's notation.
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
inline |
The submatrix of this JSIM related only to the actual joints of the robot (as for a fixed-base robot). This matrix is the H sub-block of the JSIM in Featherstone's notation.
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().
|
protected |
Computes and saves the inverse of the matrix L. See also computeL()
Referenced by iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::computeInverse(), and iit::TestHyQ::dyn::tpl::JSIM< TRAIT >::~JSIM().