Ravelin
|
Computes forward dynamics using composite-rigid body method. More...
#include <CRBAlgorithm.h>
Public Member Functions | |
boost::shared_ptr < RC_ARTICULATED_BODY > | get_body () const |
void | set_body (boost::shared_ptr< RC_ARTICULATED_BODY > body) |
void | calc_fwd_dyn () |
Executes the composite rigid-body method. | |
void | apply_impulse (const SMOMENTUM &w, boost::shared_ptr< RIGIDBODY > link) |
void | calc_generalized_inertia (SHAREDMATRIXN &M) |
Calculates the generalized inertia matrix for the given representation. More... | |
void | calc_generalized_inertia (SHAREDMATRIXN &M, boost::shared_ptr< const POSE3 > P) |
void | calc_generalized_forces (SFORCE &f0, VECTORN &C) |
Computes the vector "C", used for forward dynamics computation, using the recursive Newton-Euler algorithm. More... | |
void | calc_generalized_forces_noinertial (SFORCE &f0, VECTORN &C) |
Computes the vector "C", w/o inertial forces, using the recursive Newton-Euler algorithm. More... | |
bool | factorize_cholesky (MATRIXN &M) |
Factorizes (Cholesky) the generalized inertia matrix, exploiting sparsity. | |
VECTORN & | M_solve (VECTORN &xb) |
Solves for acceleration using the body inertia matrix. | |
SHAREDVECTORN & | M_solve (SHAREDVECTORN &xb) |
Solves for acceleration using the body inertia matrix. | |
MATRIXN & | M_solve (MATRIXN &XB) |
Solves for acceleration using the body inertia matrix. | |
SHAREDMATRIXN & | M_solve (SHAREDMATRIXN &XB) |
Solves for acceleration using the body inertia matrix. | |
Friends | |
class | RC_ARTICULATED_BODY |
Computes forward dynamics using composite-rigid body method.
Computes the vector "C", used for forward dynamics computation, using the recursive Newton-Euler algorithm.
References SVELOCITY::cross(), VECTORN::segment(), and SPARITH::transform_accel().
Referenced by RC_ARTICULATED_BODY::get_generalized_forces().
Computes the vector "C", w/o inertial forces, using the recursive Newton-Euler algorithm.
References VECTORN::segment().
void CRB_ALGORITHM::calc_generalized_inertia | ( | SHAREDMATRIXN & | M | ) |
Calculates the generalized inertia matrix for the given representation.
Generic method provided for use with generalized coordinates.
References SHAREDMATRIXN::block(), SHAREDMATRIXN::resize(), SHAREDMATRIXN::set_sub_mat(), SPARITH::to_matrix(), and MATRIXN::transpose().
Referenced by RC_ARTICULATED_BODY::get_generalized_inertia().