AdapterPropagator.DifferentialEffectpublic class J2DifferentialEffect extends Object implements AdapterPropagator.DifferentialEffect
This class computes the differential effect of J2 due to an initial orbit offset. A typical case is when an inclination maneuver changes an orbit inclination at time t₀. As ascending node drift rate depends on inclination, the change induces a time-dependent change in ascending node for later dates.
SmallManeuverAnalyticalModel| Constructor | Description |
|---|---|
J2DifferentialEffect(Orbit orbit0,
Orbit orbit1,
boolean applyBefore,
double referenceRadius,
double mu,
double j2) |
Simple constructor.
|
J2DifferentialEffect(Orbit orbit0,
Orbit orbit1,
boolean applyBefore,
UnnormalizedSphericalHarmonicsProvider gravityField) |
Simple constructor.
|
J2DifferentialEffect(SpacecraftState original,
AdapterPropagator.DifferentialEffect directEffect,
boolean applyBefore,
double referenceRadius,
double mu,
double j2) |
Simple constructor.
|
J2DifferentialEffect(SpacecraftState original,
AdapterPropagator.DifferentialEffect directEffect,
boolean applyBefore,
UnnormalizedSphericalHarmonicsProvider gravityField) |
Simple constructor.
|
| Modifier and Type | Method | Description |
|---|---|---|
Orbit |
apply(Orbit orbit1) |
Compute the effect of the maneuver on an orbit.
|
SpacecraftState |
apply(SpacecraftState state1) |
Apply the effect to a
spacecraft state. |
public J2DifferentialEffect(SpacecraftState original, AdapterPropagator.DifferentialEffect directEffect, boolean applyBefore, UnnormalizedSphericalHarmonicsProvider gravityField)
The applyBefore parameter is mainly used when the differential
effect is associated with a maneuver. In this case, the parameter must be
set to false.
original - original state at reference datedirectEffect - direct effect changing the orbitapplyBefore - if true, effect is applied both before and after
reference date, if false it is only applied after reference dategravityField - gravity field to usepublic J2DifferentialEffect(Orbit orbit0, Orbit orbit1, boolean applyBefore, UnnormalizedSphericalHarmonicsProvider gravityField)
The applyBefore parameter is mainly used when the differential
effect is associated with a maneuver. In this case, the parameter must be
set to false.
orbit0 - original orbit at reference dateorbit1 - shifted orbit at reference dateapplyBefore - if true, effect is applied both before and after
reference date, if false it is only applied after reference dategravityField - gravity field to usepublic J2DifferentialEffect(SpacecraftState original, AdapterPropagator.DifferentialEffect directEffect, boolean applyBefore, double referenceRadius, double mu, double j2)
The applyBefore parameter is mainly used when the differential
effect is associated with a maneuver. In this case, the parameter must be
set to false.
original - original state at reference datedirectEffect - direct effect changing the orbitapplyBefore - if true, effect is applied both before and after
reference date, if false it is only applied after reference datereferenceRadius - reference radius of the Earth for the potential model (m)mu - central attraction coefficient (m³/s²)j2 - un-normalized zonal coefficient (about +1.08e-3 for Earth)public J2DifferentialEffect(Orbit orbit0, Orbit orbit1, boolean applyBefore, double referenceRadius, double mu, double j2)
The applyBefore parameter is mainly used when the differential
effect is associated with a maneuver. In this case, the parameter must be
set to false.
orbit0 - original orbit at reference dateorbit1 - shifted orbit at reference dateapplyBefore - if true, effect is applied both before and after
reference date, if false it is only applied after reference datereferenceRadius - reference radius of the Earth for the potential model (m)mu - central attraction coefficient (m³/s²)j2 - un-normalized zonal coefficient (about +1.08e-3 for Earth)public Orbit apply(Orbit orbit1)
orbit1 - original orbit at t₁, without maneuverapply(SpacecraftState)public SpacecraftState apply(SpacecraftState state1)
spacecraft state.
Applying the effect may be a no-op in some cases. A typical example is maneuvers, for which the state is changed only for time after the maneuver occurrence.
apply in interface AdapterPropagator.DifferentialEffectstate1 - original state without the effectCopyright © 2002-2019 CS Systèmes d'information. All rights reserved.