Class FieldEcksteinHechlerPropagator<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.propagation.FieldAbstractPropagator<T>
-
- org.orekit.propagation.analytical.FieldAbstractAnalyticalPropagator<T>
-
- org.orekit.propagation.analytical.FieldEcksteinHechlerPropagator<T>
-
- Type Parameters:
T
- type of the field elements
- All Implemented Interfaces:
FieldPropagator<T>
,FieldPVCoordinatesProvider<T>
,ParameterDriversProvider
public class FieldEcksteinHechlerPropagator<T extends CalculusFieldElement<T>> extends FieldAbstractAnalyticalPropagator<T>
This class propagates aFieldSpacecraftState
using the analytical Eckstein-Hechler model.The Eckstein-Hechler model is suited for near circular orbits (e < 0.1, with poor accuracy between 0.005 and 0.1) and inclination neither equatorial (direct or retrograde) nor critical (direct or retrograde).
- Author:
- Guylaine Prat
- See Also:
FieldOrbit
-
-
Field Summary
-
Fields inherited from interface org.orekit.propagation.FieldPropagator
DEFAULT_MASS
-
-
Constructor Summary
Constructors Constructor Description FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, attitude provider and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, attitude provider and potential provider.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, attitude provider, mass and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60, PropagationType initialType)
Build a propagator from FieldOrbit, attitude provider, mass and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60, PropagationType initialType, double epsilon, int maxIterations)
Build a propagator from FieldOrbit, attitude provider, mass and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, attitude provider, mass and potential provider.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitude, T mass, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics)
Private helper constructor.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitude, T mass, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics, PropagationType initialType)
Private helper constructor.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, UnnormalizedSphericalHarmonicsProvider provider, PropagationType initialType)
Build a propagator from orbit, attitude provider, mass and potential provider.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit and potential provider.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, UnnormalizedSphericalHarmonicsProvider provider, PropagationType initialType)
Build a propagator from orbit and potential provider.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, mass and potential.FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, T mass, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, mass and potential provider.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <T extends CalculusFieldElement<T>>
FieldCircularOrbit<T>computeMeanOrbit(FieldOrbit<T> osculating, double referenceRadius, double mu, double c20, double c30, double c40, double c50, double c60, double epsilon, int maxIterations)
Conversion from osculating to mean orbit.static <T extends CalculusFieldElement<T>>
FieldCircularOrbit<T>computeMeanOrbit(FieldOrbit<T> osculating, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics)
Conversion from osculating to mean orbit.static <T extends CalculusFieldElement<T>>
FieldCircularOrbit<T>computeMeanOrbit(FieldOrbit<T> osculating, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics, double epsilon, int maxIterations)
Conversion from osculating to mean orbit.protected T
getMass(FieldAbsoluteDate<T> date)
Get the mass.List<ParameterDriver>
getParametersDrivers()
Get the drivers for parameters.FieldCartesianOrbit<T>
propagateOrbit(FieldAbsoluteDate<T> date, T[] parameters)
Extrapolate an orbit up to a specific target date.void
resetInitialState(FieldSpacecraftState<T> state)
Reset the propagator initial state.void
resetInitialState(FieldSpacecraftState<T> state, PropagationType stateType)
Reset the propagator initial state.void
resetInitialState(FieldSpacecraftState<T> state, PropagationType stateType, double epsilon, int maxIterations)
Reset the propagator initial state.protected void
resetIntermediateState(FieldSpacecraftState<T> state, boolean forward)
Reset an intermediate state.protected void
resetIntermediateState(FieldSpacecraftState<T> state, boolean forward, double epsilon, int maxIterations)
Reset an intermediate state.-
Methods inherited from class org.orekit.propagation.analytical.FieldAbstractAnalyticalPropagator
acceptStep, addEventDetector, basicPropagate, clearEventsDetectors, getEphemerisGenerator, getEventsDetectors, getPvProvider, propagate
-
Methods inherited from class org.orekit.propagation.FieldAbstractPropagator
addAdditionalStateProvider, getAdditionalStateProviders, getAttitudeProvider, getField, getFrame, getInitialState, getManagedAdditionalStates, getMultiplexer, getPVCoordinates, getStartDate, initializeAdditionalStates, initializePropagation, isAdditionalStateManaged, propagate, setAttitudeProvider, setStartDate, stateChanged, updateAdditionalStates, updateUnmanagedStates
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.FieldPropagator
clearStepHandlers, setStepHandler, setStepHandler
-
Methods inherited from interface org.orekit.utils.FieldPVCoordinatesProvider
getPosition
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
-
-
-
Constructor Detail
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit and potential provider.Mass and attitude provider are set to unspecified non-null arbitrary values.
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitprovider
- for un-normalized zonal coefficients- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, UnnormalizedSphericalHarmonicsProvider)
,FieldEcksteinHechlerPropagator(FieldOrbit, UnnormalizedSphericalHarmonicsProvider, PropagationType)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitude, T mass, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics)
Private helper constructor.Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitattitude
- attitude providermass
- spacecraft massprovider
- for un-normalized zonal coefficientsharmonics
-provider.onDate(initialOrbit.getDate())
- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, CalculusFieldElement, UnnormalizedSphericalHarmonicsProvider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics, PropagationType)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit and potential.Mass and attitude provider are set to unspecified non-null arbitrary values.
The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)- See Also:
Constants
,FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, double, CalculusFieldElement, double, double, double, double, double)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, T mass, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, mass and potential provider.Attitude law is set to an unspecified non-null arbitrary value.
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitmass
- spacecraft massprovider
- for un-normalized zonal coefficients- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, CalculusFieldElement, UnnormalizedSphericalHarmonicsProvider)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, mass and potential.Attitude law is set to an unspecified non-null arbitrary value.
The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitmass
- spacecraft massreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, CalculusFieldElement, double, CalculusFieldElement, double, double, double, double, double)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, attitude provider and potential provider.Mass is set to an unspecified non-null arbitrary value.
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providerprovider
- for un-normalized zonal coefficients
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, attitude provider and potential.Mass is set to an unspecified non-null arbitrary value.
The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providerreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, UnnormalizedSphericalHarmonicsProvider provider)
Build a propagator from FieldOrbit, attitude provider, mass and potential provider.Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providermass
- spacecraft massprovider
- for un-normalized zonal coefficients- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, CalculusFieldElement, UnnormalizedSphericalHarmonicsProvider, PropagationType)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60)
Build a propagator from FieldOrbit, attitude provider, mass and potential.The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, an initial osculating orbit is considered.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providermass
- spacecraft massreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)- See Also:
FieldEcksteinHechlerPropagator(FieldOrbit, AttitudeProvider, CalculusFieldElement, double, CalculusFieldElement, double, double, double, double, double, PropagationType)
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, UnnormalizedSphericalHarmonicsProvider provider, PropagationType initialType)
Build a propagator from orbit and potential provider.Mass and attitude provider are set to unspecified non-null arbitrary values.
Using this constructor, it is possible to define the initial orbit as a mean Eckstein-Hechler orbit or an osculating one.
- Parameters:
initialOrbit
- initial orbitprovider
- for un-normalized zonal coefficientsinitialType
- initial orbit type (mean Eckstein-Hechler orbit or osculating orbit)- Since:
- 10.2
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, UnnormalizedSphericalHarmonicsProvider provider, PropagationType initialType)
Build a propagator from orbit, attitude provider, mass and potential provider.Using this constructor, it is possible to define the initial orbit as a mean Eckstein-Hechler orbit or an osculating one.
- Parameters:
initialOrbit
- initial orbitattitudeProv
- attitude providermass
- spacecraft massprovider
- for un-normalized zonal coefficientsinitialType
- initial orbit type (mean Eckstein-Hechler orbit or osculating orbit)- Since:
- 10.2
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitude, T mass, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics, PropagationType initialType)
Private helper constructor.Using this constructor, it is possible to define the initial orbit as a mean Eckstein-Hechler orbit or an osculating one.
- Parameters:
initialOrbit
- initial orbitattitude
- attitude providermass
- spacecraft massprovider
- for un-normalized zonal coefficientsharmonics
-provider.onDate(initialOrbit.getDate())
initialType
- initial orbit type (mean Eckstein-Hechler orbit or osculating orbit)- Since:
- 10.2
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60, PropagationType initialType)
Build a propagator from FieldOrbit, attitude provider, mass and potential.The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, it is possible to define the initial orbit as a mean Eckstein-Hechler orbit or an osculating one.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providermass
- spacecraft massreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)initialType
- initial orbit type (mean Eckstein-Hechler orbit or osculating orbit)- Since:
- 10.2
-
FieldEcksteinHechlerPropagator
public FieldEcksteinHechlerPropagator(FieldOrbit<T> initialOrbit, AttitudeProvider attitudeProv, T mass, double referenceRadius, T mu, double c20, double c30, double c40, double c50, double c60, PropagationType initialType, double epsilon, int maxIterations)
Build a propagator from FieldOrbit, attitude provider, mass and potential.The Cn,0 coefficients are the denormalized zonal coefficients, they are related to both the normalized coefficients Cn,0 and the Jn one as follows:
Cn,0 = [(2-δ0,m)(2n+1)(n-m)!/(n+m)!]½ Cn,0
Cn,0 = -Jn
Using this constructor, it is possible to define the initial orbit as a mean Eckstein-Hechler orbit or an osculating one.
- Parameters:
initialOrbit
- initial FieldOrbitattitudeProv
- attitude providermass
- spacecraft massreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)initialType
- initial orbit type (mean Eckstein-Hechler orbit or osculating orbit)epsilon
- convergence threshold for mean parameters conversionmaxIterations
- maximum iterations for mean parameters conversion- Since:
- 11.2
-
-
Method Detail
-
computeMeanOrbit
public static <T extends CalculusFieldElement<T>> FieldCircularOrbit<T> computeMeanOrbit(FieldOrbit<T> osculating, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics)
Conversion from osculating to mean orbit.Compute mean orbit in a Eckstein-Hechler sense, corresponding to the osculating SpacecraftState in input.
Since the osculating orbit is obtained with the computation of short-periodic variation, the resulting output will depend on the gravity field parameterized in input.
The computation is done through a fixed-point iteration process.
- Type Parameters:
T
- type of the filed elements- Parameters:
osculating
- osculating orbit to convertprovider
- for un-normalized zonal coefficientsharmonics
-provider.onDate(osculating.getDate())
- Returns:
- mean orbit in a Eckstein-Hechler sense
- Since:
- 11.2
-
computeMeanOrbit
public static <T extends CalculusFieldElement<T>> FieldCircularOrbit<T> computeMeanOrbit(FieldOrbit<T> osculating, UnnormalizedSphericalHarmonicsProvider provider, UnnormalizedSphericalHarmonicsProvider.UnnormalizedSphericalHarmonics harmonics, double epsilon, int maxIterations)
Conversion from osculating to mean orbit.Compute mean orbit in a Eckstein-Hechler sense, corresponding to the osculating SpacecraftState in input.
Since the osculating orbit is obtained with the computation of short-periodic variation, the resulting output will depend on the gravity field parameterized in input.
The computation is done through a fixed-point iteration process.
- Type Parameters:
T
- type of the filed elements- Parameters:
osculating
- osculating orbit to convertprovider
- for un-normalized zonal coefficientsharmonics
-provider.onDate(osculating.getDate())
epsilon
- convergence threshold for mean parameters conversionmaxIterations
- maximum iterations for mean parameters conversion- Returns:
- mean orbit in a Eckstein-Hechler sense
- Since:
- 11.2
-
computeMeanOrbit
public static <T extends CalculusFieldElement<T>> FieldCircularOrbit<T> computeMeanOrbit(FieldOrbit<T> osculating, double referenceRadius, double mu, double c20, double c30, double c40, double c50, double c60, double epsilon, int maxIterations)
Conversion from osculating to mean orbit.Compute mean orbit in a Eckstein-Hechler sense, corresponding to the osculating SpacecraftState in input.
Since the osculating orbit is obtained with the computation of short-periodic variation, the resulting output will depend on the gravity field parameterized in input.
The computation is done through a fixed-point iteration process.
- Type Parameters:
T
- type of the filed elements- Parameters:
osculating
- osculating orbit to convertreferenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)c20
- un-normalized zonal coefficient (about -1.08e-3 for Earth)c30
- un-normalized zonal coefficient (about +2.53e-6 for Earth)c40
- un-normalized zonal coefficient (about +1.62e-6 for Earth)c50
- un-normalized zonal coefficient (about +2.28e-7 for Earth)c60
- un-normalized zonal coefficient (about -5.41e-7 for Earth)epsilon
- convergence threshold for mean parameters conversionmaxIterations
- maximum iterations for mean parameters conversion- Returns:
- mean orbit in a Eckstein-Hechler sense
- Since:
- 11.2
-
resetInitialState
public void resetInitialState(FieldSpacecraftState<T> state)
Reset the propagator initial state.The new initial state to consider must be defined with an osculating orbit.
- Specified by:
resetInitialState
in interfaceFieldPropagator<T extends CalculusFieldElement<T>>
- Overrides:
resetInitialState
in classFieldAbstractPropagator<T extends CalculusFieldElement<T>>
- Parameters:
state
- new initial state to consider- See Also:
resetInitialState(FieldSpacecraftState, PropagationType)
-
resetInitialState
public void resetInitialState(FieldSpacecraftState<T> state, PropagationType stateType)
Reset the propagator initial state.- Parameters:
state
- new initial state to considerstateType
- mean Eckstein-Hechler orbit or osculating orbit- Since:
- 10.2
-
resetInitialState
public void resetInitialState(FieldSpacecraftState<T> state, PropagationType stateType, double epsilon, int maxIterations)
Reset the propagator initial state.- Parameters:
state
- new initial state to considerstateType
- mean Eckstein-Hechler orbit or osculating orbitepsilon
- convergence threshold for mean parameters conversionmaxIterations
- maximum iterations for mean parameters conversion- Since:
- 11.2
-
resetIntermediateState
protected void resetIntermediateState(FieldSpacecraftState<T> state, boolean forward)
Reset an intermediate state.- Specified by:
resetIntermediateState
in classFieldAbstractAnalyticalPropagator<T extends CalculusFieldElement<T>>
- Parameters:
state
- new intermediate state to considerforward
- if true, the intermediate state is valid for propagations after itself
-
resetIntermediateState
protected void resetIntermediateState(FieldSpacecraftState<T> state, boolean forward, double epsilon, int maxIterations)
Reset an intermediate state.- Parameters:
state
- new intermediate state to considerforward
- if true, the intermediate state is valid for propagations after itselfepsilon
- convergence threshold for mean parameters conversionmaxIterations
- maximum iterations for mean parameters conversion- Since:
- 11.2
-
propagateOrbit
public FieldCartesianOrbit<T> propagateOrbit(FieldAbsoluteDate<T> date, T[] parameters)
Extrapolate an orbit up to a specific target date.- Specified by:
propagateOrbit
in classFieldAbstractAnalyticalPropagator<T extends CalculusFieldElement<T>>
- Parameters:
date
- target date for the orbitparameters
- model parameters- Returns:
- extrapolated parameters
-
getMass
protected T getMass(FieldAbsoluteDate<T> date)
Get the mass.- Specified by:
getMass
in classFieldAbstractAnalyticalPropagator<T extends CalculusFieldElement<T>>
- Parameters:
date
- target date for the orbit- Returns:
- mass mass
-
getParametersDrivers
public List<ParameterDriver> getParametersDrivers()
Get the drivers for parameters.- Returns:
- drivers for parameters
-
-