Class DynamicOutlierFilter<T extends ObservedMeasurement<T>>
java.lang.Object
org.orekit.estimation.measurements.modifiers.OutlierFilter<T>
org.orekit.estimation.measurements.modifiers.DynamicOutlierFilter<T>
- Type Parameters:
T- the type of the measurement
- All Implemented Interfaces:
EstimationModifier<T>,ParameterDriversProvider
Modifier that sets estimated measurement weight to 0 if residual is too far from expected domain.
The "dynamic" aspect comes from the fact that the value of sigma can be changed on demand.
This is mainly used when searching for outliers in Kalman filters' prediction phase.
The value of sigma is then set to the square root of the diagonal of the matrix (H.Ppred.Ht+R)
Note that in the case of the Kalman filter we use the "iteration" word to represent the number of
measurements processed by the filter so far.
- Since:
- 9.2
- Author:
- Luc Maisonobe
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondouble[]getSigma()Get the current value of sigma.voidmodify(EstimatedMeasurement<T> estimated) Apply a modifier to an estimated measurement.voidmodifyWithoutDerivatives(EstimatedMeasurementBase<T> estimated) Apply a modifier to an estimated measurement without derivatives.voidsetSigma(double[] sigma) Set the current value of sigma.Methods inherited from class org.orekit.estimation.measurements.modifiers.OutlierFilter
getEffectName, getMaxSigma, getParametersDrivers, getWarmupMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.estimation.measurements.EstimationModifier
dependsOnParticipantsStatesMethods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameterDriverWithSubstring, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
Constructor Details
-
DynamicOutlierFilter
public DynamicOutlierFilter(int warmup, double maxSigma) Simple constructor.- Parameters:
warmup- number of iterations before with filter is not appliedmaxSigma- detection limit for outlier
-
-
Method Details
-
getSigma
public double[] getSigma()Get the current value of sigma.- Returns:
- The current value of sigma
-
setSigma
public void setSigma(double[] sigma) Set the current value of sigma.- Parameters:
sigma- The value of sigma to set
-
modify
Apply a modifier to an estimated measurement.- Parameters:
estimated- estimated measurement to modify
-
modifyWithoutDerivatives
Apply a modifier to an estimated measurement without derivatives.- Specified by:
modifyWithoutDerivativesin interfaceEstimationModifier<T extends ObservedMeasurement<T>>- Overrides:
modifyWithoutDerivativesin classOutlierFilter<T extends ObservedMeasurement<T>>- Parameters:
estimated- estimated measurement to modify
-