|
SuanShu, a Java numerical and statistical library | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectcom.numericalmethod.suanshu.matrix.doubles.factorization.triangle.LDL
public class LDL
LDL decomposition decomposes a real and symmetric (hence square) matrix A into
A = L %*% D %*% Lt
L is a lower triangular matrix.
D is a diagonal matrix.
Unlike Cholesky decomposition, this decomposition applies to all real and symmetric matrices, whether positive definite or not.
Moreover, when A is positive definite the elements of the diagonal matrix D are all positive.
In other words, if A is semi/positive/negative definite, so is D.
This algorithm eliminates the need to take square roots.
| Constructor Summary | |
|---|---|
LDL(Matrix A)
Construct an instance of the LDL decomposition. |
|
| Method Summary | |
|---|---|
DiagonalMatrix |
D()
Get a copy of the diagonal matrix D as in
A = L %*% D %*% Lt |
LowerTriangularMatrix |
L()
Get a copy of the lower triangular matrix L as in
A = L %*% D %*% Lt |
UpperTriangularMatrix |
Lt()
Get a copy of the transpose of the lower triangular matrix L as in
A = L %*% Lt
The transpose is upper triangular. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public LDL(Matrix A)
A - a real and symmetric (hence square) matrix
java.lang.IllegalArgumentException - if A is not symmetric| Method Detail |
|---|
public LowerTriangularMatrix L()
L as in
A = L %*% D %*% Lt
Lpublic UpperTriangularMatrix Lt()
L as in
A = L %*% Lt
The transpose is upper triangular.
Ltpublic DiagonalMatrix D()
D as in
A = L %*% D %*% Lt
D
|
SuanShu, a Java numerical and statistical library | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||