Function Karana::Dynamics::Algorithms::evalSerialChainMassMatrixInverse#
Defined in File Algorithms.h
Function Documentation#
-
km::Mat Karana::Dynamics::Algorithms::evalSerialChainMassMatrixInverse(SubTree &st, kc::ks_ptr<CoordData> coord_data = nullptr)#
Calculate serial-chain system mass matrix inverse using {{ SOA }} operator-based decomposition expressions.
This method does not require the mass matrix or matrix inversions to compute the mass matrix inverse! The algorithm instead takes advantage of an analytical operator based decomposition of the mass matrix inverse to carry out the computation much lower cost.
A CoordData argument can be specified to set the specific order for the rows and columns in the computed mass matrix inverse. This method cannot be used for systems containing deformable bodies. This mass matrix inverse computation can also be done via the more general evalTreeMassMatrixInverse() which also works for deformable bodies. We however also have this method since it is considerably simpler for the simpler serial-chain topology.
This method does not allow internal 6 dof hinges to avoid ambiguities about whether mass properties should be coupled across such hinges. Also the prescribed motion flag for any subhinge that has been enabled is reset. This is to ensure that the mass matrix computed from this method are consistent with the results from the alternative dynamics based computation methods.
See the System Properties Algorithms section for more information.