public class BiDiagonalizationByGolubKahanLanczos extends Object implements BiDiagonalization
epsilon is given for checking whether α or β equals to zero.| Constructor and Description |
|---|
BiDiagonalizationByGolubKahanLanczos(Matrix A)
Runs the Golub-Kahan-Lanczos bi-diagonalization for a tall matrix.
|
BiDiagonalizationByGolubKahanLanczos(Matrix A,
double epsilon,
RandomLongGenerator rlg)
Runs the Golub-Kahan-Lanczos bi-diagonalization for a tall matrix.
|
BiDiagonalizationByGolubKahanLanczos(Matrix A,
RandomLongGenerator rlg)
Runs the Golub-Kahan-Lanczos bi-diagonalization for a tall matrix.
|
| Modifier and Type | Method and Description |
|---|---|
BidiagonalMatrix |
B()
Gets B, which is the square upper part of
U.t().multiply(A).multiply(V). |
Matrix |
U()
Gets U, where
U' = Uk * ...
|
Matrix |
V()
Gets V, where
V' = Vk * ...
|
public BiDiagonalizationByGolubKahanLanczos(Matrix A)
A - the tall matrixpublic BiDiagonalizationByGolubKahanLanczos(Matrix A, RandomLongGenerator rlg)
A - the tall matrixrlg - the random number generator for generation of the first column vector in Vpublic BiDiagonalizationByGolubKahanLanczos(Matrix A, double epsilon, RandomLongGenerator rlg)
A - the tall matrixepsilon - a precision parameter: when a number |x| ≤ ε, it is considered 0rlg - the random number generator for picking the first column vector in Vpublic BidiagonalMatrix B()
BiDiagonalizationU.t().multiply(A).multiply(V).
The dimension of B is n x n.B in interface BiDiagonalizationpublic Matrix U()
BiDiagonalizationk = A.nCols().
The dimension of U is m x m.U in interface BiDiagonalizationpublic Matrix V()
BiDiagonalizationk = A.nCols() - 2.
The dimension of V is n x n.V in interface BiDiagonalizationCopyright © 2010-2020 NM FinTech Ltd.. All Rights Reserved.