Package org.ojalgo.matrix.decomposition

Interface Summary
Bidiagonal<N extends Number> A general matrix [A] (m-by-n) can be factorized by similarity transformations into the form [A]=[Q1][D][Q2]T where [D] (r-by-r) is (upper or lower) bidiagonal [Q1] (m-by-r) is orthogonal [Q2] (n-by-r) is orthogonal r = min(m,n)
Cholesky<N extends Number> If [A] is symmetric and positive definite then the general LU decomposition - [P][L][D][U] - becomes [I][L][D][L]T (or [I][U]T[D][U]).
DecompositionStore<N extends Number> Only classes that will act as a delegate to a MatrixDecomposition implementation from this package should implement this interface.
Eigenvalue<N extends Number> Calculates eigenvalues and eigenvectors (for square matrices).
Hessenberg<N extends Number> A general square matrix [A] can be decomposed by orthogonal similarity transformations into the form [A]=[Q][H][Q]T where [H] is upper (or lower) hessenberg matrix [Q] is orthogonal/unitary
LU<N extends Number> Decomposes [this] into [L] and [U] (with pivot order information in an int[]) where:
MatrixDecomposition<N extends Number> Some standard matrix names: [A] could be any matrix. [D] is a diagonal matrix.
QR<N extends Number> Decomposes [this] into [Q] and [R] where: [Q] is an orthogonal matrix (orthonormal columns).
Schur<N extends Number> [A] = [Q][U][Q]-1 where: [A] is a square complex entry matrix. [Q] is a unitary matrix (so that [Q]-1 equals [Q]H). [U] is an upper triangular matrix, which is called a Schur form of [A].
SingularValue<N extends Number> Decomposes [this] into [Q1], [D] and [Q2] where: [Q1] is an orthogonal matrix.
Tridiagonal<N extends Number> Any symmetric/hermitian matrix [A] can be factorized by similarity transformations into the form, [A]=[Q][D][Q]T where [Q] is an orthogonal/unitary matrix and [D] is a real symmetric tridiagonal matrix.
 

Class Summary
BidiagonalDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: BidiagonalDecomposition.makeBig(), BidiagonalDecomposition.makeComplex() or BidiagonalDecomposition.makePrimitive().
CholeskyDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: CholeskyDecomposition.makeBig(), CholeskyDecomposition.makeComplex(), CholeskyDecomposition.makePrimitive() or CholeskyDecomposition.makeJama().
DecompositionStore.ExchangeColumnsCaller<N extends Number>  
DecompositionStore.HouseholderReference<N extends Number>  
DecompositionStore.NegateColumnCaller<N extends Number>  
DecompositionStore.RotateRightCaller<N extends Number>  
EigenvalueDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: EigenvalueDecomposition.makeBig(), EigenvalueDecomposition.makePrimitive() or EigenvalueDecomposition.makeJama().
HessenbergDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: HessenbergDecomposition.makeBig(), HessenbergDecomposition.makeComplex() or HessenbergDecomposition.makePrimitive().
LUDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: LUDecomposition.makeBig(), LUDecomposition.makeComplex(), LUDecomposition.makePrimitive() or LUDecomposition.makeJama().
LUDecomposition.Pivot  
QRDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: QRDecomposition.makeBig(), QRDecomposition.makeComplex(), QRDecomposition.makePrimitive() or QRDecomposition.makeJama().
SchurDecomposition<N extends Number> You create instances of (some subclass of) this class by calling the static factory method SchurDecomposition.makePrimitive().
SchurDecomposition.SchurResult<N extends Number>  
SingularValueDecomposition<N extends Number & Comparable<N>> You create instances of (some subclass of) this class by calling one of the static factory methods: SingularValueDecomposition.makeBig(), SingularValueDecomposition.makeComplex(), SingularValueDecomposition.makePrimitive(), SingularValueDecomposition.makeAlternative() or SingularValueDecomposition.makeJama().
TridiagonalDecomposition<N extends Number> You create instances of (some subclass of) this class by calling one of the static factory methods: TridiagonalDecomposition.makeBig(), TridiagonalDecomposition.makeComplex() or TridiagonalDecomposition.makePrimitive().