@@ -90,7 +90,8 @@ class AttitudeWithCantileverVibrationOde : public numerical_integration::Interfa
9090 (attenuation_coefficient_ * omega_cantilever_rad_s + spring_coefficient_ * euler_angle_cantilever_rad)) -
9191 inverse_inertia_tensor_ * net_torque_b_Nm;
9292
93- math::Vector<3 > rhs = inverse_inertia_tensor_ * (net_torque_b_Nm - inertia_tensor_cantilever_kgm2_ * angular_accelaration_cantilever_rad_s2);
93+ math::Vector<3 > rhs =
94+ inverse_total_inertia_tensor_ * (net_torque_b_Nm - inertia_tensor_cantilever_kgm2_ * angular_accelaration_cantilever_rad_s2);
9495
9596 for (size_t i = 0 ; i < 3 ; ++i) {
9697 output[i] = rhs[i];
@@ -152,6 +153,11 @@ class AttitudeWithCantileverVibrationOde : public numerical_integration::Interfa
152153 * @brief Get inverse of inertia tensor of the cantilever
153154 */
154155 inline math::Matrix<3 , 3 > GetInverseEquivalentInertiaTensorCantilever () { return inverse_equivalent_inertia_tensor_cantilever_; }
156+ /* *
157+ * @fn GetInverseTotalInertiaTensor
158+ * @brief Get inverse of total inertia tensor
159+ */
160+ inline math::Matrix<3 , 3 > GetInverseTotalInertiaTensor () { return inverse_total_inertia_tensor_; }
155161
156162 // Setter
157163 /* *
@@ -209,6 +215,13 @@ class AttitudeWithCantileverVibrationOde : public numerical_integration::Interfa
209215 inline void SetInverseEquivalentInertiaTensorCantilever (const math::Matrix<3 , 3 > inverse_equivalent_inertia_tensor_cantilever) {
210216 inverse_equivalent_inertia_tensor_cantilever_ = inverse_equivalent_inertia_tensor_cantilever;
211217 }
218+ /* *
219+ * @fn SetInverseTotalInertiaTensor
220+ * @brief Set inverse of total inertia tensor
221+ */
222+ inline void SetInverseTotalInertiaTensor (const math::Matrix<3 , 3 > inverse_total_inertia_tensor) {
223+ inverse_total_inertia_tensor_ = inverse_total_inertia_tensor;
224+ }
212225
213226 protected:
214227 double attenuation_coefficient_ = 0.0 ; // !< Attenuation coefficient
@@ -220,6 +233,7 @@ class AttitudeWithCantileverVibrationOde : public numerical_integration::Interfa
220233 math::Matrix<3 , 3 > previous_inertia_tensor_kgm2_{0.0 }; // !< Previous inertia tensor [kgm2]
221234 math::Matrix<3 , 3 > inertia_tensor_cantilever_kgm2_{0.0 }; // !< Inertia tensor of the cantilever [kgm2]
222235 math::Matrix<3 , 3 > inverse_equivalent_inertia_tensor_cantilever_{0.0 }; // !< Inverse of inertia tensor of the cantilever
236+ math::Matrix<3 , 3 > inverse_total_inertia_tensor_{0.0 }; // !< Inverse of total inertia tensor
223237};
224238
225239} // namespace s2e::dynamics::attitude
0 commit comments