Class MerweUnscentedTransform

java.lang.Object
org.hipparchus.util.AbstractUnscentedTransform
org.hipparchus.util.MerweUnscentedTransform
All Implemented Interfaces:
UnscentedTransformProvider

public class MerweUnscentedTransform extends AbstractUnscentedTransform
Unscented transform as defined by Merwe and Wan.

The unscented transform uses three parameters: alpha, beta and kappa. Alpha determines the spread of the sigma points around the process state, kappa is a secondary scaling parameter, and beta is used to incorporate prior knowledge of the distribution of the process state.

Since:
2.2
See Also:
  • "E. A. Wan and R. Van der Merwe, The unscented Kalman filter for nonlinear estimation, in Proc. Symp. Adaptive Syst. Signal Process., Commun. Contr., Lake Louise, AB, Canada, Oct. 2000."
  • Field Details

    • DEFAULT_ALPHA

      public static final double DEFAULT_ALPHA
      Default value for alpha (0.5, see reference).
      See Also:
    • DEFAULT_BETA

      public static final double DEFAULT_BETA
      Default value for beta (2.0, see reference).
      See Also:
    • DEFAULT_KAPPA

      public static final double DEFAULT_KAPPA
      Default value for kappa, (0.0, see reference).
      See Also:
  • Constructor Details

    • MerweUnscentedTransform

      public MerweUnscentedTransform(int stateDim)
      Default constructor.

      This constructor uses default values for alpha, beta, and kappa.

      Parameters:
      stateDim - the dimension of the state
      See Also:
    • MerweUnscentedTransform

      public MerweUnscentedTransform(int stateDim, double alpha, double beta, double kappa)
      Simple constructor.
      Parameters:
      stateDim - the dimension of the state
      alpha - scaling control parameter (determines the spread of the sigma points around the process state)
      beta - free parameter (used to incorporate prior knowledge of the distribution of the process state)
      kappa - secondary scaling factor (usually set to 0.0)
  • Method Details

    • getWc

      public RealVector getWc()
      Get the covariance weights.
      Returns:
      the covariance weights
    • getWm

      public RealVector getWm()
      Get the mean weights.
      Returns:
      the mean weights
    • getMultiplicationFactor

      protected double getMultiplicationFactor()
      Get the factor applied to the covariance matrix during the unscented transform.
      Specified by:
      getMultiplicationFactor in class AbstractUnscentedTransform
      Returns:
      the factor applied to the covariance matrix during the unscented transform