public final class GlobalAeroModel extends Object implements DragSensitive
This model requires a AeroProperty. This property has to be applied to Main part only:
AeroProperty, an exception is thrown.AeroProperty, they are not taken into account.| Constructor and Description |
|---|
GlobalAeroModel(Assembly assemblyIn,
DragCoefficientProvider dragCoefficientProviderIn,
ExtendedAtmosphere atmosphereIn)
Constructor with default partial derivatives time step
DEFAULT_STEP. |
GlobalAeroModel(Assembly assemblyIn,
DragCoefficientProvider dragCoefficientProviderIn,
ExtendedAtmosphere atmosphereIn,
double partialDerivativesStep)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addDDragAccDParam(SpacecraftState s,
Parameter param,
double density,
Vector3D relativeVelocity,
double[] dAccdParam)
Compute acceleration derivatives with respect to additional parameters (the ballistic
coefficient).
|
void |
addDDragAccDState(SpacecraftState s,
double[][] dAccdPos,
double[][] dAccdVel,
double density,
Vector3D acceleration,
Vector3D relativeVelocity,
boolean computeGradientPosition,
boolean computeGradientVelocity)
Compute acceleration derivatives with respect to state parameters (position and velocity).
|
Vector3D |
computeSC(SpacecraftState state,
Frame frame,
Vector3D relativeVelocity)
Compute the surface drag coefficient (drag coefficient x area)
|
DragSensitive |
copy(Assembly newAssembly)
Copy drag sensitive object using new assembly.
|
Vector3D |
dragAcceleration(SpacecraftState state,
double density,
Vector3D relativeVelocity)
Method to compute the aero acceleration, based on the assembly.
|
ArrayList<Parameter> |
getJacobianParameters()
Get the list of all jacobian parameters supported.
|
public GlobalAeroModel(Assembly assemblyIn, DragCoefficientProvider dragCoefficientProviderIn, ExtendedAtmosphere atmosphereIn, double partialDerivativesStep)
assemblyIn - assemblydragCoefficientProviderIn - drag coefficient (x surface) provideratmosphereIn - atmospherepartialDerivativesStep - partial derivatives position steppublic GlobalAeroModel(Assembly assemblyIn, DragCoefficientProvider dragCoefficientProviderIn, ExtendedAtmosphere atmosphereIn)
DEFAULT_STEP.assemblyIn - assemblydragCoefficientProviderIn - drag coefficient provideratmosphereIn - atmospherepublic Vector3D dragAcceleration(SpacecraftState state, double density, Vector3D relativeVelocity) throws PatriusException
dragAcceleration in interface DragSensitivestate - the current state of the spacecraft.density - the atmosphere density.relativeVelocity - relative velocity of atmosphere with respect to spacecraft,
in the same inertial frame as spacecraft orbit (m/s).
WARNING : Remember that consequently, the spacecraft velocity is
obtained as the opposite of relativeVelocity.PatriusException - when an error occurs.public void addDDragAccDParam(SpacecraftState s, Parameter param, double density, Vector3D relativeVelocity, double[] dAccdParam) throws PatriusException
addDDragAccDParam in interface DragSensitives - spacecraft stateparam - parameterdensity - the atmospheric density valuerelativeVelocity - relative velocity of atmosphere with respect to spacecraft,
in the same inertial frame as spacecraft orbit (m/s)dAccdParam - acceleration derivatives with respect to ballistic coefficientPatriusException - if derivatives cannot be computedpublic void addDDragAccDState(SpacecraftState s, double[][] dAccdPos, double[][] dAccdVel, double density, Vector3D acceleration, Vector3D relativeVelocity, boolean computeGradientPosition, boolean computeGradientVelocity) throws PatriusException
addDDragAccDState in interface DragSensitives - spacecraft statedAccdPos - acceleration derivatives with respect to position parametersdAccdVel - acceleration derivatives with respect to velocity parametersdensity - the atmospheric density valueacceleration - the spacecraft acceleration in the inertial framerelativeVelocity - relative velocity of atmosphere with respect to spacecraft,
in the same inertial frame as spacecraft orbit (m/s)computeGradientPosition - true if partial derivatives with respect to position should be computedcomputeGradientVelocity - true if partial derivatives with respect to position should be computedPatriusException - if derivatives cannot be computedpublic ArrayList<Parameter> getJacobianParameters()
getJacobianParameters in interface JacobianParametersProviderpublic DragSensitive copy(Assembly newAssembly)
copy in interface DragSensitivenewAssembly - new assemblypublic Vector3D computeSC(SpacecraftState state, Frame frame, Vector3D relativeVelocity) throws PatriusException
state - spacecraft stateframe - frame in which the sc will be definedrelativeVelocity - relative velocity of atmosphere with respect to spacecraft,
in the same inertial frame as spacecraft orbit (m/s).PatriusException - thrown if computation failedCopyright © 2025 CNES. All rights reserved.