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
Bridge betweenmeasurements
andleast squares problems
.- Since:
- 11.0
- Author:
- Luc Maisonobe, Bryan Cazabonne, Thomas Paulet, Melina Vanel
-
-
Constructor Summary
Constructors Constructor Description AbstractBatchLSModel(PropagatorBuilder[] propagatorBuilders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract MatricesHarvester
configureHarvester(Propagator propagator)
Configure the propagator to compute derivatives.protected abstract Orbit
configureOrbits(MatricesHarvester harvester, Propagator propagator)
Configure the current estimated orbits.Propagator[]
createPropagators(RealVector point)
Create the propagators and parameters corresponding to an evaluation point.void
fetchEvaluatedMeasurement(int index, EstimatedMeasurement<?> evaluation)
Fetch a measurement that was evaluated during propagation.int
getEvaluationsCount()
Get the evaluations count.int
getIterationsCount()
Get the iterations count.ParameterDriversList
getSelectedOrbitalParametersDriversForBuilder(int iBuilder)
Get the selected orbital drivers for a propagatorBuilder.ParameterDriversList
getSelectedPropagationDriversForBuilder(int iBuilder)
Get the selected propagation drivers for a propagatorBuilder.boolean
isForwardPropagation()
Return the forward propagation flag.void
setEvaluationsCounter(Incrementor evaluationsCounter)
Set the counter for evaluations.void
setIterationsCounter(Incrementor iterationsCounter)
Set the counter for iterations.Pair<RealVector,RealMatrix>
value(RealVector point)
-
-
-
Constructor Detail
-
AbstractBatchLSModel
public AbstractBatchLSModel(PropagatorBuilder[] propagatorBuilders, List<ObservedMeasurement<?>> measurements, ParameterDriversList estimatedMeasurementsParameters, ModelObserver observer)
Constructor.- Parameters:
propagatorBuilders
- builders to use for propagationmeasurements
- measurementsestimatedMeasurementsParameters
- estimated measurements parametersobserver
- observer to be notified at model calls
-
-
Method Detail
-
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 matricespropagator
- the orbit propagator- Returns:
- the current estimated orbits
-
value
public Pair<RealVector,RealMatrix> value(RealVector point)
- Specified by:
value
in interfaceMultivariateJacobianFunction
-
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 componentevaluation
- measurement evaluation
-
getIterationsCount
public int getIterationsCount()
Get the iterations count.- Returns:
- iterations count
-
getEvaluationsCount
public int getEvaluationsCount()
Get the evaluations count.- Returns:
- evaluations count
-
-