Class AmbiguitySolver
- java.lang.Object
-
- org.orekit.estimation.measurements.gnss.AmbiguitySolver
-
public class AmbiguitySolver extends Object
Class for solving integer ambiguity problems.- Since:
- 10.0
- Author:
- Luc Maisonobe
- See Also:
LambdaMethod
-
-
Constructor Summary
Constructors Constructor Description AmbiguitySolver(List<ParameterDriver> ambiguityDrivers, IntegerLeastSquareSolver solver, AmbiguityAcceptance acceptance)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<ParameterDriver>
fixIntegerAmbiguities(int startIndex, List<ParameterDriver> measurementsParametersDrivers, RealMatrix covariance)
Fix integer ambiguities.List<ParameterDriver>
getAllAmbiguityDrivers()
Get all the ambiguity parameters drivers.protected List<ParameterDriver>
getFreeAmbiguityDrivers()
Get the ambiguity parameters drivers that have not been fixed yet.protected int[]
getFreeAmbiguityIndirection(int startIndex, List<ParameterDriver> measurementsParametersDrivers)
Get ambiguity indirection array for ambiguity parameters drivers that have not been fixed yet.void
unFixAmbiguity(ParameterDriver ambiguityDriver)
Un-fix an integer ambiguity (typically after a phase cycle slip).
-
-
-
Constructor Detail
-
AmbiguitySolver
public AmbiguitySolver(List<ParameterDriver> ambiguityDrivers, IntegerLeastSquareSolver solver, AmbiguityAcceptance acceptance)
Simple constructor.- Parameters:
ambiguityDrivers
- drivers for ambiguity parameterssolver
- solver for the underlying Integer Least Square problemacceptance
- acceptance test to use- See Also:
LambdaMethod
-
-
Method Detail
-
getAllAmbiguityDrivers
public List<ParameterDriver> getAllAmbiguityDrivers()
Get all the ambiguity parameters drivers.- Returns:
- all ambiguity parameters drivers
-
getFreeAmbiguityDrivers
protected List<ParameterDriver> getFreeAmbiguityDrivers()
Get the ambiguity parameters drivers that have not been fixed yet.- Returns:
- ambiguity parameters drivers that have not been fixed yet
-
getFreeAmbiguityIndirection
protected int[] getFreeAmbiguityIndirection(int startIndex, List<ParameterDriver> measurementsParametersDrivers)
Get ambiguity indirection array for ambiguity parameters drivers that have not been fixed yet.- Parameters:
startIndex
- start index for measurements parameters in global covariance matrixmeasurementsParametersDrivers
- measurements parameters drivers in global covariance matrix order- Returns:
- indirection array between full covariance matrix and ambiguity covariance matrix
-
unFixAmbiguity
public void unFixAmbiguity(ParameterDriver ambiguityDriver)
Un-fix an integer ambiguity (typically after a phase cycle slip).- Parameters:
ambiguityDriver
- driver for the ambiguity to un-fix
-
fixIntegerAmbiguities
public List<ParameterDriver> fixIntegerAmbiguities(int startIndex, List<ParameterDriver> measurementsParametersDrivers, RealMatrix covariance)
Fix integer ambiguities.- Parameters:
startIndex
- start index for measurements parameters in global covariance matrixmeasurementsParametersDrivers
- measurements parameters drivers in global covariance matrix ordercovariance
- global covariance matrix- Returns:
- list of newly fixed ambiguities (ambiguities already fixed before the call are not counted)
-
-