Class AbstractBatchLSModel

java.lang.Object
org.orekit.estimation.leastsquares.AbstractBatchLSModel
All Implemented Interfaces:
MultivariateJacobianFunction
Direct Known Subclasses:
BatchLSModel, DSSTBatchLSModel

public abstract class AbstractBatchLSModel extends Object implements MultivariateJacobianFunction
Since:
11.0
Author:
Luc Maisonobe, Bryan Cazabonne, Thomas Paulet, Melina Vanel
  • Constructor Details

    • AbstractBatchLSModel

      protected AbstractBatchLSModel(PropagatorBuilder[] propagatorBuilders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
      Constructor.
      Parameters:
      propagatorBuilders - builders to use for propagation
      measurements - measurements
      estimatedMeasurementsParameters - estimated measurements parameters
      observer - observer to be notified at model calls
  • Method Details

    • setEvaluationsCounter

      public void setEvaluationsCounter(Incrementor evaluationsCounter)
      Set the counter for evaluations.
      Parameters:
      evaluationsCounter - counter for evaluations
    • setIterationsCounter

      public void setIterationsCounter(Incrementor iterationsCounter)
      Set the counter for iterations.
      Parameters:
      iterationsCounter - counter for iterations
    • isForwardPropagation

      public boolean isForwardPropagation()
      Return the forward propagation flag.
      Returns:
      the forward propagation flag
    • configureHarvester

      protected abstract MatricesHarvester configureHarvester(Propagator propagator)
      Configure the propagator to compute derivatives.
      Parameters:
      propagator - Propagator to configure
      Returns:
      harvester harvester to retrive the State Transition Matrix and Jacobian Matrix
    • configureOrbits

      protected abstract Orbit configureOrbits(MatricesHarvester harvester, Propagator propagator)
      Configure the current estimated orbits.

      For DSST orbit determination, short period derivatives are also calculated.

      Parameters:
      harvester - harvester for matrices
      propagator - the orbit propagator
      Returns:
      the current estimated orbits
    • value

      public Pair<RealVector,RealMatrix> value(RealVector point)
      Specified by:
      value in interface MultivariateJacobianFunction
    • getSelectedOrbitalParametersDriversForBuilder

      public ParameterDriversList getSelectedOrbitalParametersDriversForBuilder(int iBuilder)
      Get the selected orbital drivers for a propagatorBuilder.
      Parameters:
      iBuilder - index of the builder in the builders' array
      Returns:
      the list of selected orbital drivers for propagatorBuilder of index iBuilder
      Since:
      11.1
    • getSelectedPropagationDriversForBuilder

      public ParameterDriversList getSelectedPropagationDriversForBuilder(int iBuilder)
      Get the selected propagation drivers for a propagatorBuilder.
      Parameters:
      iBuilder - index of the builder in the builders' array
      Returns:
      the list of selected propagation drivers for propagatorBuilder of index iBuilder
    • createPropagators

      public Propagator[] createPropagators(RealVector point)
      Create the propagators and parameters corresponding to an evaluation point.
      Parameters:
      point - evaluation point
      Returns:
      an array of new propagators
    • fetchEvaluatedMeasurement

      public void fetchEvaluatedMeasurement(int index, EstimatedMeasurement<?> evaluation)
      Fetch a measurement that was evaluated during propagation.
      Parameters:
      index - index of the measurement first component
      evaluation - measurement evaluation
    • getIterationsCount

      public int getIterationsCount()
      Get the iterations count.
      Returns:
      iterations count
    • getEvaluationsCount

      public int getEvaluationsCount()
      Get the evaluations count.
      Returns:
      evaluations count