Class EcksteinHechlerPropagatorBuilder
- java.lang.Object
-
- org.orekit.propagation.conversion.AbstractPropagatorBuilder
-
- org.orekit.propagation.conversion.EcksteinHechlerPropagatorBuilder
-
- All Implemented Interfaces:
PropagatorBuilder
public class EcksteinHechlerPropagatorBuilder extends AbstractPropagatorBuilder
Builder for Eckstein-Hechler propagator.- Since:
- 6.0
- Author:
- Pascal Parraud
-
-
Constructor Summary
Constructors Constructor Description EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, double referenceRadius, double mu, TideSystem tideSystem, double c20, double c30, double c40, double c50, double c60, OrbitType orbitType, PositionAngleType positionAngleType, double positionScale)
Build a new instance.EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, UnnormalizedSphericalHarmonicsProvider provider, PositionAngleType positionAngleType, double positionScale)
Build a new instance.EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, UnnormalizedSphericalHarmonicsProvider provider, PositionAngleType positionAngleType, double positionScale, AttitudeProvider attitudeProvider)
Build a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractBatchLSModel
buildLeastSquaresModel(PropagatorBuilder[] builders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
Build a new batch least squares model.Propagator
buildPropagator(double[] normalizedParameters)
Build a propagator.EcksteinHechlerPropagatorBuilder
copy()
Create a new instance identical to this one.-
Methods inherited from class org.orekit.propagation.conversion.AbstractPropagatorBuilder
addAdditionalDerivativesProvider, addSupportedParameters, createInitialOrbit, deselectDynamicParameters, getAdditionalDerivativesProviders, getAttitudeProvider, getFrame, getInitialOrbitDate, getMu, getOrbitalParametersDrivers, getOrbitType, getPositionAngleType, getPositionScale, getPropagationParametersDrivers, getSelectedNormalizedParameters, resetOrbit, setAttitudeProvider, setParameters
-
-
-
-
Constructor Detail
-
EcksteinHechlerPropagatorBuilder
public EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, UnnormalizedSphericalHarmonicsProvider provider, PositionAngleType positionAngleType, double positionScale)
Build a new instance.The template orbit is used as a model to
create initial orbit
. It defines the inertial frame, the central attraction coefficient, the orbit type, and is also used together with thepositionScale
to convert from thenormalized
parameters used by the callers of this builder to the real orbital parameters. The default attitude provider is aligned with the orbit's inertial frame.- Parameters:
templateOrbit
- reference orbit from which real orbits will be built (note that the mu from this orbit will be overridden with the mu from theprovider
)provider
- for un-normalized zonal coefficientspositionAngleType
- position angle type to usepositionScale
- scaling factor used for orbital parameters normalization (typically set to the expected standard deviation of the position)- Since:
- 8.0
- See Also:
EcksteinHechlerPropagatorBuilder(Orbit, UnnormalizedSphericalHarmonicsProvider, PositionAngleType, double, AttitudeProvider)
-
EcksteinHechlerPropagatorBuilder
public EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, UnnormalizedSphericalHarmonicsProvider provider, PositionAngleType positionAngleType, double positionScale, AttitudeProvider attitudeProvider)
Build a new instance.The template orbit is used as a model to
create initial orbit
. It defines the inertial frame, the central attraction coefficient, the orbit type, and is also used together with thepositionScale
to convert from thenormalized
parameters used by the callers of this builder to the real orbital parameters.- Parameters:
templateOrbit
- reference orbit from which real orbits will be built (note that the mu from this orbit will be overridden with the mu from theprovider
)provider
- for un-normalized zonal coefficientspositionAngleType
- position angle type to usepositionScale
- scaling factor used for orbital parameters normalization (typically set to the expected standard deviation of the position)attitudeProvider
- attitude law to use.- Since:
- 10.1
-
EcksteinHechlerPropagatorBuilder
public EcksteinHechlerPropagatorBuilder(Orbit templateOrbit, double referenceRadius, double mu, TideSystem tideSystem, double c20, double c30, double c40, double c50, double c60, OrbitType orbitType, PositionAngleType positionAngleType, double positionScale)
Build a new instance.The template orbit is used as a model to
create initial orbit
. It defines the inertial frame, the central attraction coefficient, the orbit type, and is also used together with thepositionScale
to convert from thenormalized
parameters used by the callers of this builder to the real orbital parameters.- Parameters:
templateOrbit
- reference orbit from which real orbits will be built (note that the mu from this orbit will be overridden with the mu from theprovider
)referenceRadius
- reference radius of the Earth for the potential model (m)mu
- central attraction coefficient (m³/s²)tideSystem
- tide systemc20
- 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)orbitType
- orbit type to usepositionAngleType
- position angle type to usepositionScale
- scaling factor used for orbital parameters normalization (typically set to the expected standard deviation of the position)- Since:
- 8.0
- See Also:
EcksteinHechlerPropagatorBuilder(Orbit, UnnormalizedSphericalHarmonicsProvider, PositionAngleType, double, AttitudeProvider)
-
-
Method Detail
-
buildPropagator
public Propagator buildPropagator(double[] normalizedParameters)
Build a propagator.- Parameters:
normalizedParameters
- normalized values for the selected parameters- Returns:
- an initialized propagator
-
buildLeastSquaresModel
public AbstractBatchLSModel buildLeastSquaresModel(PropagatorBuilder[] builders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
Build a new batch least squares model.- Parameters:
builders
- builders to use for propagationmeasurements
- measurementsestimatedMeasurementsParameters
- estimated measurements parametersobserver
- observer to be notified at model calls- Returns:
- a new model for the Batch Least Squares orbit determination
-
copy
public EcksteinHechlerPropagatorBuilder copy()
Create a new instance identical to this one.- Returns:
- new instance identical to this one
-
-