FGMassBalance¶
- class jsbsim.FGMassBalance¶
Models weight, balance and moment of inertia information.
Maintains a vector of point masses. Sums the contribution of all, and provides this to FGPropagate. Loads the <mass_balance> section of the aircraft configuration file. There can be any number of <pointmasses>. Each can also have a shape which - if present - causes an associated moment of inertia to be calculated based on the shape. Note that a cylinder is solid, a tube is hollow, a ball is solid and a sphere is hollow.
The inertia tensor must be specified in the structural frame (x axis positive aft, y axis positive out of the right wing and z axis upward). The sign of the inertia cross products are optional by JSBSim. if negated_crossproduct_inertia == “true”, then define: ixy = -integral( x * y * dm ), ixz = -integral( x * z * dm ), iyz = -integral( y * z * dm ). else if negated_crossproduct_inertia == “false”, then define: ixy = integral( x * y * dm ), ixz = integral( x * z * dm ), iyz = integral( y * z * dm ). default is negated_crossproduct_inertia = “true”. We strongly recommend defining negated_crossproduct_inertia = “false”, which is consistent with the specifications in the field of flight dynamics.
Configuration File Format for <mass_balance> Section:
<mass_balance negated_crossproduct_inertia="true|false"> <ixx unit="{SLUG*FT2 | KG*M2}"> {number} </ixx> <iyy unit="{SLUG*FT2 | KG*M2}"> {number} </iyy> <izz unit="{SLUG*FT2 | KG*M2}"> {number} </izz> <ixy unit="{SLUG*FT2 | KG*M2}"> {number} </ixy> <ixz unit="{SLUG*FT2 | KG*M2}"> {number} </ixz> <iyz unit="{SLUG*FT2 | KG*M2}"> {number} </iyz> <emptywt unit="{LBS | KG"> {number} </emptywt> <location name="CG" unit="{IN | FT | M}"> <x> {number} </x> <y> {number} </y> <z> {number} </z> </location> [<pointmass name="{string}"> <form shape="{tube | cylinder | sphere | ball}"> <radius unit="{IN | FT | M}"> {number} </radius> <length unit="{IN | FT | M}"> {number} </length> </form> <weight unit="{LBS | KG}"> {number} </weight> <location name="{string}" unit="{IN | FT | M}"> <x> {number} </x> <y> {number} </y> <z> {number} </z> </location> </pointmass> ... other point masses ...] </mass_balance>
- get_J() ndarray ¶
Returns the inertia matrix expressed in the body frame.
- get_Jinv() ndarray ¶
Returns the inverse of the inertia matrix expressed in the body frame.
- get_xyz_cg() ndarray ¶
Note
This feature is not yet documented.