Class MassSupport
- Namespace
- NominalSystems.Maths
- Assembly
- NominalSystems.Maths.dll
A static library that helps with converting different mass values between different frames of reference. These include Center of Masses and Moment of Inertias. The frames of reference are: L -> Component (Local) Frame B -> Body Frame (Spacecraft) N -> Inertial Frame
public static class MassSupport
- Inheritance
-
MassSupport
Methods
CenterOfMass_BtoL(Vector3, Matrix3, Vector3)
Converts a Center of Mass in the B frame to a Center of Mass in the L frame. This works for all thre CoM forms; Dot and Prime included, as long as the com_B_B value is the correct B frame form of the value.
public static Vector3 CenterOfMass_BtoL(Vector3 com_B_B, Matrix3 dcm_LB, Vector3 r_LB_B)
Parameters
com_B_B
Vector3[m] The center of mass (standard, dot or prime) in the B frame
dcm_LB
Matrix3[-] The rotation matrix from the L to B frames
r_LB_B
Vector3[m] The location difference between the L and B frames
Returns
- Vector3
[m] The center of mass (standard, dot or prime) in the L frame
CenterOfMass_LtoB(Vector3, Matrix3, Vector3)
Converts a Center of Mass in the L frame to a Center of Mass in the B frame. This works for all thre CoM forms; Dot and Prime included, as long as the com_L_L value is the correct L frame form of the value.
public static Vector3 CenterOfMass_LtoB(Vector3 com_L_L, Matrix3 dcm_LB, Vector3 r_LB_B)
Parameters
com_L_L
Vector3[m] The center of mass (standard, dot or prime) in the L frame
dcm_LB
Matrix3[-] The rotation matrix from the L to B frames
r_LB_B
Vector3[m] The location difference between the L and B frames
Returns
- Vector3
[m] The center of mass (standard, dot or prime) in the B frame
MomentOfInertiaPrime_LtoB(Matrix3, Matrix3, Vector3, Vector3, double)
Converts a Moment of Inertia Prime (which is a derivate) from the L frame to a B frame.
public static Matrix3 MomentOfInertiaPrime_LtoB(Matrix3 moiPrime_L_L, Matrix3 dcm_LB, Vector3 com_B_B, Vector3 comDot_B_B, double mass)
Parameters
moiPrime_L_L
Matrix3[kg m^2/s] The moment of inertia in the L frame
dcm_LB
Matrix3[-] The rotation matrix from the L to B frame
com_B_B
Vector3[m] The center of mass in the B frame
comDot_B_B
Vector3[m] The center of mass change in time in the B frame
mass
double[kg] The mass of the object
Returns
- Matrix3
[kg m^2/s] The moment of inertia in the B frame
MomentOfInertia_BtoL(Matrix3, Matrix3, Vector3, double)
Converts a Moment of Inertia in the B frame to a Moment of Inertia in the L frame.
public static Matrix3 MomentOfInertia_BtoL(Matrix3 moi_B_B, Matrix3 dcm_LB, Vector3 com_B_B, double mass)
Parameters
moi_B_B
Matrix3[kg m^2] The moment of inertia in the B frame
dcm_LB
Matrix3[-] The rotational matrix between the L frame and the B frame
com_B_B
Vector3[m] The center of mass in the B frame
mass
double[kg] The mass of the object
Returns
- Matrix3
[kg m^2] The moment of inertia in the B frame
MomentOfInertia_LtoB(Matrix3, Matrix3, Vector3, double)
Converts a Moment of Inertia in the L frame to a Moment of Inertia in the B frame.
public static Matrix3 MomentOfInertia_LtoB(Matrix3 moi_L_L, Matrix3 dcm_LB, Vector3 com_B_B, double mass)
Parameters
moi_L_L
Matrix3[kg m^2] The moment of inertia in the L frame
dcm_LB
Matrix3[-] The rotational matrix between the L frame and the B frame
com_B_B
Vector3[m] The center of mass in the B frame
mass
double[kg] The mass of the object
Returns
- Matrix3
[kg m^2] The moment of inertia in the B frame