Interface NonLinearProcess<T extends Measurement>

Type Parameters:
T - the type of the measurements

public interface NonLinearProcess<T extends Measurement>
Non-linear process that can be estimated by a ExtendedKalmanFilter.

This interface must be implemented by users to represent the behavior of the process to be estimated

Since:
1.3
See Also:
  • Method Details

    • getEvolution

      NonLinearEvolution getEvolution(double previousTime, RealVector previousState, T measurement)
      Get the state evolution between two times.
      Parameters:
      previousTime - time of the previous state
      previousState - process state at previousTime
      measurement - measurement to process
      Returns:
      state evolution
    • getInnovation

      RealVector getInnovation(T measurement, NonLinearEvolution evolution, RealMatrix innovationCovarianceMatrix)
      Get the innovation brought by a measurement.
      Parameters:
      measurement - measurement to process
      evolution - evolution returned by a previous call to getEvolution(double, RealVector, Measurement)
      innovationCovarianceMatrix - innovation covariance matrix, defined as \(h.P.h^T + r\) where h is the measurement Jacobian, P is the predicted covariance and r is measurement covariance
      Returns:
      innovation brought by a measurement, may be null if measurement should be rejected