Class BandMatrix.Cholesky
- All Implemented Interfaces:
Serializable
- Enclosing class:
BandMatrix
The Cholesky decomposition is mainly used for the numerical solution of linear equations. The Cholesky decomposition is also commonly used in the Monte Carlo method for simulating systems with multiple correlated variables: The matrix of inter-variable correlations is decomposed, to give the lower-triangular L. Applying this to a vector of uncorrelated simulated shocks, u, produces a shock vector Lu with the covariance properties of the system being modeled.
Unscented Kalman filters commonly use the Cholesky decomposition to choose a set of so-called sigma points. The Kalman filter tracks the average state of a system as a vector x of length n and covariance as an n-by-n matrix P. The matrix P is always positive semi-definite, and can be decomposed into L*L'. The columns of L can be added and subtracted from the mean x to form a set of 2n vectors called sigma points. These sigma points completely capture the mean and covariance of the system state.
- See Also:
-
Field Summary
-
Constructor Summary
-
Method Summary
-
Field Details
-
lu
The Cholesky decomposition.
-
-
Constructor Details
-
Cholesky
Constructor.- Parameters:
lu
- the lower/upper triangular part of matrix contains the Cholesky factorization.
-
-
Method Details
-
det
public double det()Returns the matrix determinant.- Returns:
- the matrix determinant.
-
logdet
public double logdet()Returns the log of matrix determinant.- Returns:
- the log of matrix determinant.
-
inverse
Returns the inverse of matrix.- Returns:
- the inverse of matrix.
-
solve
public double[] solve(double[] b) Solves the linear systemA * x = b
.- Parameters:
b
- the right hand side of linear systems.- Returns:
- the solution vector.
-
solve
Solves the linear systemA * X = B
.- Parameters:
B
- the right hand side of linear systems. On output, B will be overwritten with the solution matrix.
-