Source code for RCAIDE.Library.Mission.Common.Update.moments

# RCAIDE/Library/Missions/Common/Update/moments.py
# 
# 
# Created:  Jul 2023, M. Clarke

# ----------------------------------------------------------------------------------------------------------------------
#  IMPORT
# ----------------------------------------------------------------------------------------------------------------------

# RCAIDE imports 
from RCAIDE.Framework.Core  import  orientation_product  

# ----------------------------------------------------------------------------------------------------------------------
#  Update Moments
# ----------------------------------------------------------------------------------------------------------------------
[docs] def moments(segment): """ Updates the total resultant moment on the vehicle Assumptions: N/A Inputs: segment.state.conditions.: frames.wind.force_vector [N] frames.body.thrust_force_vector [N] frames.inertial.gravity_force_vector [N] Outputs: segment.conditions frames.inertial.total_force_vector [N] Properties Used: N/A """ # unpack conditions = segment.state.conditions wind_moment_vector = conditions.frames.wind.moment_vector body_thrust_moment_vector = conditions.frames.body.thrust_moment_vector # unpack transformation matrices T_wind2inertial = conditions.frames.wind.transform_to_inertial T_body2inertial = conditions.frames.body.transform_to_inertial # to inertial frame M_t = orientation_product(T_body2inertial,body_thrust_moment_vector) M_w = orientation_product(T_wind2inertial, wind_moment_vector) M = M_t + M_w # pack conditions.frames.inertial.total_moment_vector[:,:] = M[:,:] return