Class NumericalPropagatorBuilder

All Implemented Interfaces:
Cloneable, PropagatorBuilder

public class NumericalPropagatorBuilder extends AbstractIntegratedPropagatorBuilder<NumericalPropagator>
Builder for numerical propagator.
Since:
6.0
Author:
Pascal Parraud
  • Constructor Details

    • 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 the positionScale to convert from the normalized 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 built
      builder - first order integrator builder
      positionAngleType - position angle type to use
      positionScale - scaling factor used for orbital parameters normalization (typically set to the expected standard deviation of the position)
      Since:
      8.0
      See Also:
    • 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 the positionScale to convert from the normalized parameters used by the callers of this builder to the real orbital parameters.

      Parameters:
      referenceOrbit - reference orbit from which real orbits will be built
      builder - first order integrator builder
      positionAngleType - position angle type to use
      positionScale - scaling factor used for orbital parameters normalization (typically set to the expected standard deviation of the position)
      attitudeProvider - attitude law.
      Since:
      10.1
  • Method Details

    • clone

      ..
      Overrides:
      clone in class AbstractPropagatorBuilder<NumericalPropagator>
    • 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 - perturbing ForceModel to add
    • buildPropagator

      public NumericalPropagator buildPropagator(double[] normalizedParameters)
      Build a propagator.
      Specified by:
      buildPropagator in interface PropagatorBuilder
      Specified by:
      buildPropagator in class AbstractIntegratedPropagatorBuilder<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 propagation
      measurements - measurements
      estimatedMeasurementsParameters - estimated measurements parameters
      observer - observer to be notified at model calls
      Returns:
      a new model for the Batch Least Squares orbit determination