public class InertiaComputedModel extends Object implements IInertiaModel
Note : when using this model within a propagation, it is necessary to feed the additional equations to the propagator. This has to be done prior to any propagation, to allow this model to account mass variations (i.e. due to maneuvers), using the method NumericalPropagator.setMassProviderEquation() which will register the additional equation and initialize the initial additional state.
IInertiaModel,
Serialized FormMASS| Constructor and Description |
|---|
InertiaComputedModel(Assembly assembly)
Constructor for the computed inertia model.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addMassDerivative(String partName,
double flowRate)
Add the mass derivate of the given part.
|
AdditionalEquations |
getAdditionalEquation(String name)
Get the mass equation related to the part.
|
List<String> |
getAllPartsNames()
Get the list of the name of the parts.
|
Matrix3D |
getInertiaMatrix(Frame frame,
AbsoluteDate date)
Getter for the inertia matrix of the spacecraft,
expressed with respect to the MASS CENTER in a given frame.
|
Matrix3D |
getInertiaMatrix(Frame frame,
AbsoluteDate date,
Vector3D inertiaReferencePoint)
Getter for the inertia matrix of the spacecraft,
once expressed with respect to a point
that can be different from the mass center.
|
double |
getMass(String partName)
Return the mass of the given part.
|
Vector3D |
getMassCenter(Frame frame,
AbsoluteDate date)
Getter for the mass center.
|
double |
getTotalMass()
Return the mass of the spacecraft.
|
double |
getTotalMass(SpacecraftState state)
Return the mass of the spacecraft following the order.
|
void |
setMassDerivativeZero(String partName)
Set mass derivative to zero.
|
void |
updateMass(String partName,
double mass)
Update the mass of the given part.
|
public InertiaComputedModel(Assembly assembly)
assembly - the considered assemblypublic Vector3D getMassCenter(Frame frame, AbsoluteDate date) throws PatriusException
getMassCenter in interface IInertiaModelframe - the expression frame of the mass center positiondate - the current date (unused for simple the model)PatriusException - if a problem occurs during frames transformationspublic Matrix3D getInertiaMatrix(Frame frame, AbsoluteDate date) throws PatriusException
getInertiaMatrix in interface IInertiaModelframe - the expression frame of the inertia matrixdate - the current date (unused for simple the model)PatriusException - if a problem occurs during frames transformationspublic Matrix3D getInertiaMatrix(Frame frame, AbsoluteDate date, Vector3D inertiaReferencePoint) throws PatriusException
getInertiaMatrix in interface IInertiaModelframe - the expression frame of the inertia matrixdate - the current date (unused for simple the model)inertiaReferencePoint - the point with respect to the inertia matrix is expressed (in the reference frame)PatriusException - if a problem occurs during frames transformationspublic void addMassDerivative(String partName, double flowRate)
addMassDerivative in interface MassProviderpartName - name of part subject to mass variationflowRate - flow rate of specified partpublic void setMassDerivativeZero(String partName)
setMassDerivativeZero in interface MassProviderpartName - name of part whose mass derivative is set to zeropublic void updateMass(String partName, double mass) throws PatriusException
updateMass in interface MassProviderpartName - given partmass - mass of the given partPatriusException - thrown if the mass becomes negative (PatriusMessages.SPACECRAFT_MASS_BECOMES_NEGATIVE)public double getMass(String partName)
getMass in interface MassProviderpartName - given partpublic double getTotalMass()
getTotalMass in interface MassProviderpublic double getTotalMass(SpacecraftState state)
MassProvider.getTotalMass())getTotalMass in interface MassProviderstate - spacecraft statepublic AdditionalEquations getAdditionalEquation(String name)
getAdditionalEquation in interface MassProvidername - part namepublic List<String> getAllPartsNames()
getAllPartsNames in interface MassProviderCopyright © 2025 CNES. All rights reserved.