Class UnscentedKalmanEstimatorBuilder
The builder is generalized to accept any PropagatorBuilder.
Howerver, it is absolutely not recommended to use a DSSTPropagatorBuilder.
A specific semi-analytical
unscented Kalman Filter is implemented and shall be used.
- Since:
- 11.3
- Author:
- Gaƫtan Pierre, Bryan Cazabonne
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddPropagationConfiguration(PropagatorBuilder builder, CovarianceMatrixProvider provider) Add a propagation configuration.build()Construct aUnscentedKalmanEstimatorfrom the data in this builder.decomposer(MatrixDecomposer matrixDecomposer) Configure the matrix decomposer.estimatedMeasurementsParameters(ParameterDriversList estimatedMeasurementsParams, CovarianceMatrixProvider provider) Configure the estimated measurement parameters.unscentedTransformProvider(UnscentedTransformProvider transformProvider) Configure the unscented transform provider.
-
Constructor Details
-
UnscentedKalmanEstimatorBuilder
public UnscentedKalmanEstimatorBuilder()Default constructor. Set an Unscented Kalman filter.
-
-
Method Details
-
build
Construct aUnscentedKalmanEstimatorfrom the data in this builder.Before this method is called,
addPropagationConfiguration()must have been called at least once, otherwise configuration is incomplete and an exception will be raised.In addition, the
unscentedTransformProvider()must be called to configure the unscented transform provider use during the estimation process, otherwise configuration is incomplete and an exception will be raised.- Returns:
- a new
UnscentedKalmanEstimator.
-
decomposer
Configure the matrix decomposer.- Parameters:
matrixDecomposer- decomposer to use for the correction phase- Returns:
- this object.
-
unscentedTransformProvider
public UnscentedKalmanEstimatorBuilder unscentedTransformProvider(UnscentedTransformProvider transformProvider) Configure the unscented transform provider.- Parameters:
transformProvider- unscented transform to use for the prediction phase- Returns:
- this object.
-
addPropagationConfiguration
public UnscentedKalmanEstimatorBuilder addPropagationConfiguration(PropagatorBuilder builder, CovarianceMatrixProvider provider) Add a propagation configuration.This method must be called once for each propagator to managed with the
unscented kalman estimatior. The propagators order in the Kalman filter will be the call order.The
providershould return a matrix with dimensions and ordering consistent with thebuilderconfiguration. The first 6 rows/columns correspond to the 6 orbital parameters which must all be present, regardless of the fact they are estimated or not. The remaining elements correspond to the subset of propagation parameters that are estimated, in the same order as propagatorBuilder.getPropagationParametersDrivers().getDrivers()(but filtering out the non selected drivers).- Parameters:
builder- The propagator builder to use in the Kalman filter.provider- The process noise matrices provider to use, consistent with the builder.- Returns:
- this object.
- See Also:
-
estimatedMeasurementsParameters
public UnscentedKalmanEstimatorBuilder estimatedMeasurementsParameters(ParameterDriversList estimatedMeasurementsParams, CovarianceMatrixProvider provider) Configure the estimated measurement parameters.If this method is not called, no measurement parameters will be estimated.
- Parameters:
estimatedMeasurementsParams- The estimated measurements' parameters list.provider- covariance matrix provider for the estimated measurement parameters- Returns:
- this object.
-