Top Description Fields Constructors Methods
org.apache.commons.math3.filter

public Class DefaultProcessModel

extends Object
implements ProcessModel
Class Inheritance
All Implemented Interfaces
org.apache.commons.math3.filter.ProcessModel
Imports
org.apache.commons.math3.exception.DimensionMismatchException, .NoDataException, .NullArgumentException, org.apache.commons.math3.linear.Array2DRowRealMatrix, .ArrayRealVector, .RealMatrix, .RealVector

Default implementation of a ProcessModel for the use with a KalmanFilter.
Since
3.0

Field Summary

Modifier and TypeField and Description
private RealMatrix
controlMatrix

The control matrix, used to integrate a control input into the state estimation.

private RealMatrix
initialErrorCovMatrix

The initial error covariance matrix of the observed process.

private RealVector
initialStateEstimateVector

The initial state estimation of the observed process.

private RealMatrix
processNoiseCovMatrix

The process noise covariance matrix.

private RealMatrix
stateTransitionMatrix

The state transition matrix, used to advance the internal state estimation each time-step.

Constructor Summary

AccessConstructor and Description
public
DefaultProcessModel(final double[][]
the state transition matrix
stateTransition
,
final double[][]
the control matrix
control
,
final double[][]
the process noise matrix
processNoise
,
final double[]
the initial state estimate vector
initialStateEstimate
,
final double[][]
the initial error covariance matrix
initialErrorCovariance
)

Create a new ProcessModel, taking double arrays as input parameters.

public
DefaultProcessModel(final double[][]
the state transition matrix
stateTransition
,
final double[][]
the control matrix
control
,
final double[][]
the process noise matrix
processNoise
)

Create a new ProcessModel, taking double arrays as input parameters.

public
DefaultProcessModel(final RealMatrix
the state transition matrix
stateTransition
,
final RealMatrix
the control matrix
control
,
final RealMatrix
the process noise matrix
processNoise
,
final RealVector
the initial state estimate vector
initialStateEstimate
,
final RealMatrix
the initial error covariance matrix
initialErrorCovariance
)

Create a new ProcessModel, taking double arrays as input parameters.

Method Summary

Modifier and TypeMethod and Description
public RealMatrix
public RealMatrix
public RealVector
public RealMatrix
public RealMatrix
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

controlMatrixback to summary
private RealMatrix controlMatrix

The control matrix, used to integrate a control input into the state estimation.

initialErrorCovMatrixback to summary
private RealMatrix initialErrorCovMatrix

The initial error covariance matrix of the observed process.

initialStateEstimateVectorback to summary
private RealVector initialStateEstimateVector

The initial state estimation of the observed process.

processNoiseCovMatrixback to summary
private RealMatrix processNoiseCovMatrix

The process noise covariance matrix.

stateTransitionMatrixback to summary
private RealMatrix stateTransitionMatrix

The state transition matrix, used to advance the internal state estimation each time-step.

Constructor Detail

DefaultProcessModelback to summary
public DefaultProcessModel(final double[][] stateTransition, final double[][] control, final double[][] processNoise, final double[] initialStateEstimate, final double[][] initialErrorCovariance) throws NullArgumentException, NoDataException, DimensionMismatchException

Create a new ProcessModel, taking double arrays as input parameters.

Parameters
stateTransition:double[][]

the state transition matrix

control:double[][]

the control matrix

processNoise:double[][]

the process noise matrix

initialStateEstimate:double[]

the initial state estimate vector

initialErrorCovariance:double[][]

the initial error covariance matrix

Exceptions
NullArgumentException:
if any of the input arrays is null
NoDataException:
if any row / column dimension of the input matrices is zero
DimensionMismatchException:
if any of the input matrices is non-rectangular
DefaultProcessModelback to summary
public DefaultProcessModel(final double[][] stateTransition, final double[][] control, final double[][] processNoise) throws NullArgumentException, NoDataException, DimensionMismatchException

Create a new ProcessModel, taking double arrays as input parameters.

The initial state estimate and error covariance are omitted and will be initialized by the KalmanFilter to default values.

Parameters
stateTransition:double[][]

the state transition matrix

control:double[][]

the control matrix

processNoise:double[][]

the process noise matrix

Exceptions
NullArgumentException:
if any of the input arrays is null
NoDataException:
if any row / column dimension of the input matrices is zero
DimensionMismatchException:
if any of the input matrices is non-rectangular
DefaultProcessModelback to summary
public DefaultProcessModel(final RealMatrix stateTransition, final RealMatrix control, final RealMatrix processNoise, final RealVector initialStateEstimate, final RealMatrix initialErrorCovariance)

Create a new ProcessModel, taking double arrays as input parameters.

Parameters
stateTransition:RealMatrix

the state transition matrix

control:RealMatrix

the control matrix

processNoise:RealMatrix

the process noise matrix

initialStateEstimate:RealVector

the initial state estimate vector

initialErrorCovariance:RealMatrix

the initial error covariance matrix

Method Detail

getControlMatrixback to summary
public RealMatrix getControlMatrix()

Implements org.apache.commons.math3.filter.ProcessModel.getControlMatrix.

Doc from org.apache.commons.math3.filter.ProcessModel.getControlMatrix.

Returns the control matrix.

Returns:RealMatrix

the control matrix

getInitialErrorCovarianceback to summary
public RealMatrix getInitialErrorCovariance()

Implements org.apache.commons.math3.filter.ProcessModel.getInitialErrorCovariance.

Doc from org.apache.commons.math3.filter.ProcessModel.getInitialErrorCovariance.

Returns the initial error covariance matrix.

Note

if the return value is zero, the Kalman filter will initialize the error covariance with the process noise matrix.

Returns:RealMatrix

the initial error covariance matrix

getInitialStateEstimateback to summary
public RealVector getInitialStateEstimate()

Implements org.apache.commons.math3.filter.ProcessModel.getInitialStateEstimate.

Doc from org.apache.commons.math3.filter.ProcessModel.getInitialStateEstimate.

Returns the initial state estimation vector.

Note

if the return value is zero, the Kalman filter will initialize the state estimation with a zero vector.

Returns:RealVector

the initial state estimation vector

getProcessNoiseback to summary
public RealMatrix getProcessNoise()

Implements org.apache.commons.math3.filter.ProcessModel.getProcessNoise.

Doc from org.apache.commons.math3.filter.ProcessModel.getProcessNoise.

Returns the process noise matrix. This method is called by the KalmanFilter every prediction step, so implementations of this interface may return a modified process noise depending on the current iteration step.

Returns:RealMatrix

the process noise matrix

getStateTransitionMatrixback to summary
public RealMatrix getStateTransitionMatrix()

Implements org.apache.commons.math3.filter.ProcessModel.getStateTransitionMatrix.

Doc from org.apache.commons.math3.filter.ProcessModel.getStateTransitionMatrix.

Returns the state transition matrix.

Returns:RealMatrix

the state transition matrix