|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmaspack.solvers.IncompleteLUDecomposition
public class IncompleteLUDecomposition
Constructs the Cholesky decomposition of a symmetric positive definite
matrix. This takes the form
M = L L'
where M is the original matrix, L is a lower-triangular matrix and L' denotes
its transpose. Once this decomposition has been constructed, it can be used
to perform various computations related to M, such as solving equations,
computing the determinant, or estimating the condition number.
Providing a separate class for the Cholesky decomposition allows an application to perform such decompositions repeatedly without having to reallocate temporary storage space.
Field Summary | |
---|---|
SparseMatrixNd |
L
|
SparseMatrixNd |
LU
|
SparseMatrixNd |
U
|
Constructor Summary | |
---|---|
IncompleteLUDecomposition()
Creates an uninitialized CholeskyDecomposition. |
|
IncompleteLUDecomposition(SparseMatrixNd M)
Creates a CholeskyDecomposition for the Matrix specified by M. |
Method Summary | |
---|---|
int |
colSize()
Number of columns in the matrix associated with this transformation. |
void |
factor(SparseMatrixNd A)
Peforms an Cholesky decomposition on the Matrix M. |
void |
factor(SparseMatrixNd A,
double droptol)
|
void |
get(MatrixNd LU)
Gets the lower and upper triangular matrices L and U associated with this decomposition. |
void |
mul(VectorNd vr,
VectorNd v1)
Applies this transformation to vector v1 and returns the result in vr. |
int |
rowSize()
Number of rows in the matrix associated with this transformation. |
boolean |
solveL(VectorNd x,
VectorNd b)
Solves L * x = b |
boolean |
solveU(VectorNd x,
VectorNd b)
Solves U * x = b |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public SparseMatrixNd LU
public SparseMatrixNd L
public SparseMatrixNd U
Constructor Detail |
---|
public IncompleteLUDecomposition()
public IncompleteLUDecomposition(SparseMatrixNd M) throws ImproperSizeException
M
- matrix to perform the Cholesky decomposition on
ImproperSizeException
- if M is not squareMethod Detail |
---|
public void factor(SparseMatrixNd A)
A
- matrix on which to perform the Cholesky decompositionpublic void factor(SparseMatrixNd A, double droptol)
public void get(MatrixNd LU)
LU
- lower and upper triangular matrices (sharing the same space)
ImproperStateException
- if this decomposition is uninitialized
ImproperSizeException
- if LU is not of the proper dimension and cannot be resizedpublic boolean solveL(VectorNd x, VectorNd b) throws ImproperStateException, ImproperSizeException
ImproperStateException
ImproperSizeException
public boolean solveU(VectorNd x, VectorNd b) throws ImproperStateException, ImproperSizeException
ImproperStateException
ImproperSizeException
public int colSize()
LinearTransformNd
mul
.
colSize
in interface LinearTransformNd
public int rowSize()
LinearTransformNd
mul
.
rowSize
in interface LinearTransformNd
public void mul(VectorNd vr, VectorNd v1)
LinearTransformNd
mul
in interface LinearTransformNd
vr
- vector in which result is returnedv1
- vector to transform
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |