Class NumericalPropagatorBuilder
- java.lang.Object
-
- org.orekit.propagation.conversion.AbstractPropagatorBuilder
-
- org.orekit.propagation.conversion.NumericalPropagatorBuilder
-
- All Implemented Interfaces:
PropagatorBuilder
public class NumericalPropagatorBuilder extends AbstractPropagatorBuilder
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.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.NumericalPropagatorBuilder
copy()
Create a copy of a NumericalPropagatorBuilder object.List<ForceModel>
getAllForceModels()
Get the list of all force models.ODEIntegratorBuilder
getIntegratorBuilder()
Get the integrator builder.double
getMass()
Get the mass.void
setMass(double mass)
Set the initial mass.-
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
-
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
-
copy
public NumericalPropagatorBuilder copy()
Create a copy of a NumericalPropagatorBuilder object.- Returns:
- Copied version of the NumericalPropagatorBuilder
-
getIntegratorBuilder
public ODEIntegratorBuilder getIntegratorBuilder()
Get the integrator builder.- Returns:
- the integrator builder
- Since:
- 9.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
-
getMass
public double getMass()
Get the mass.- Returns:
- the mass
- Since:
- 9.2
-
setMass
public void setMass(double mass)
Set the initial mass.- Parameters:
mass
- the mass (kg)
-
buildPropagator
public NumericalPropagator buildPropagator(double[] normalizedParameters)
Build a propagator.- 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
-
-