Class NumericalPropagatorBuilder
- java.lang.Object
-
- org.orekit.propagation.conversion.AbstractPropagatorBuilder<T>
-
- org.orekit.propagation.conversion.AbstractIntegratedPropagatorBuilder<NumericalPropagator>
-
- org.orekit.propagation.conversion.NumericalPropagatorBuilder
-
- All Implemented Interfaces:
Cloneable
,PropagatorBuilder
public class NumericalPropagatorBuilder extends AbstractIntegratedPropagatorBuilder<NumericalPropagator>
Builder for numerical propagator.- Since:
- 6.0
- Author:
- Pascal Parraud
-
-
Constructor Summary
Constructors Constructor Description NumericalPropagatorBuilder(Orbit referenceOrbit, ODEIntegratorBuilder builder, PositionAngleType positionAngleType, double positionScale)
Build a new instance.NumericalPropagatorBuilder(Orbit referenceOrbit, ODEIntegratorBuilder builder, PositionAngleType positionAngleType, double positionScale, AttitudeProvider attitudeProvider)
Build a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addForceModel(ForceModel model)
Add a force model to the global perturbation model.void
addImpulseManeuver(ImpulseManeuver impulseManeuver)
Add impulse maneuver.BatchLSModel
buildLeastSquaresModel(PropagatorBuilder[] builders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
Build a new batch least squares model.NumericalPropagator
buildPropagator(double[] normalizedParameters)
Build a propagator.void
clearImpulseManeuvers()
Remove all impulse maneuvers.List<ForceModel>
getAllForceModels()
Get the list of all force models.-
Methods inherited from class org.orekit.propagation.conversion.AbstractIntegratedPropagatorBuilder
buildPropagator, getIntegratorBuilder, getPropagationType
-
Methods inherited from class org.orekit.propagation.conversion.AbstractPropagatorBuilder
addAdditionalDerivativesProvider, addSupportedParameters, clone, createInitialOrbit, deselectDynamicParameters, getAdditionalDerivativesProviders, getAttitudeProvider, getFrame, getInitialOrbitDate, getMass, getMu, getOrbitalParametersDrivers, getOrbitType, getPositionAngleType, getPositionScale, getPropagationParametersDrivers, getSelectedNormalizedParameters, resetOrbit, setAttitudeProvider, setMass, setParameters
-
-
-
-
Constructor Detail
-
NumericalPropagatorBuilder
public NumericalPropagatorBuilder(Orbit referenceOrbit, ODEIntegratorBuilder builder, PositionAngleType positionAngleType, double positionScale)
Build a new instance.The reference orbit is used as a model to
create initial orbit
. It defines the inertial frame, the central attraction coefficient, 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:
referenceOrbit
- reference orbit from which real orbits will be builtbuilder
- first order integrator builderpositionAngleType
- 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:
NumericalPropagatorBuilder(Orbit, ODEIntegratorBuilder, PositionAngleType, double, AttitudeProvider)
-
NumericalPropagatorBuilder
public NumericalPropagatorBuilder(Orbit referenceOrbit, ODEIntegratorBuilder builder, PositionAngleType positionAngleType, double positionScale, AttitudeProvider attitudeProvider)
Build a new instance.The reference orbit is used as a model to
create initial orbit
. It defines the inertial frame, the central attraction coefficient, 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:
referenceOrbit
- reference orbit from which real orbits will be builtbuilder
- first order integrator builderpositionAngleType
- 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.- Since:
- 10.1
-
-
Method Detail
-
addImpulseManeuver
public void addImpulseManeuver(ImpulseManeuver impulseManeuver)
Add impulse maneuver.- Parameters:
impulseManeuver
- impulse maneuver- Since:
- 12.2
-
clearImpulseManeuvers
public void clearImpulseManeuvers()
Remove all impulse maneuvers.- Since:
- 12.2
-
getAllForceModels
public List<ForceModel> getAllForceModels()
Get the list of all force models.- Returns:
- the list of all force models
- Since:
- 9.2
-
addForceModel
public void addForceModel(ForceModel model)
Add a force model to the global perturbation model.If this method is not called at all, the integrated orbit will follow a Keplerian evolution only.
- Parameters:
model
- perturbingForceModel
to add
-
buildPropagator
public NumericalPropagator buildPropagator(double[] normalizedParameters)
Build a propagator.- Specified by:
buildPropagator
in interfacePropagatorBuilder
- Specified by:
buildPropagator
in classAbstractIntegratedPropagatorBuilder<NumericalPropagator>
- Parameters:
normalizedParameters
- normalized values for the selected parameters- Returns:
- an initialized propagator
-
buildLeastSquaresModel
public BatchLSModel 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
-
-