public class TridiagonalDecompositionHouseholder_FDRB
extends java.lang.Object
implements org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F32<org.ejml.data.FMatrixRBlock>
Tridiagonal similar decomposition for block matrices. Orthogonal matrices are computed using householder vectors.
Based off algorithm in section 2 of J. J. Dongarra, D. C. Sorensen, S. J. Hammarling,
"Block Reduction of Matrices to Condensed Forms for Eigenvalue Computations" Journal of
Computations and Applied Mathematics 27 (1989) 215-227
Computations of Householder reflectors has been modified from what is presented in that paper to how
it is performed in "Fundamentals of Matrix Computations" 2nd ed. by David S. Watkins.
Modifier and Type | Field and Description |
---|---|
protected org.ejml.data.FMatrixRBlock |
A |
protected float[] |
gammas |
protected org.ejml.data.FMatrixRBlock |
tmp |
protected org.ejml.data.FMatrixRBlock |
V |
protected org.ejml.data.FMatrixRMaj |
zerosM |
Constructor and Description |
---|
TridiagonalDecompositionHouseholder_FDRB() |
Modifier and Type | Method and Description |
---|---|
boolean |
decompose(org.ejml.data.FMatrixRBlock orig) |
void |
getDiagonal(float[] diag,
float[] off) |
org.ejml.data.FMatrixRBlock |
getQ(org.ejml.data.FMatrixRBlock Q,
boolean transposed) |
org.ejml.data.FMatrixRBlock |
getT(org.ejml.data.FMatrixRBlock T) |
boolean |
inputModified() |
static void |
multPlusTransA(int blockLength,
org.ejml.data.FSubmatrixD1 A,
org.ejml.data.FSubmatrixD1 B,
org.ejml.data.FSubmatrixD1 C)
C = C + A^T*B
|
protected org.ejml.data.FMatrixRBlock A
protected org.ejml.data.FMatrixRBlock V
protected org.ejml.data.FMatrixRBlock tmp
protected float[] gammas
protected org.ejml.data.FMatrixRMaj zerosM
public TridiagonalDecompositionHouseholder_FDRB()
public org.ejml.data.FMatrixRBlock getT(org.ejml.data.FMatrixRBlock T)
getT
in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.FMatrixRBlock>
public org.ejml.data.FMatrixRBlock getQ(org.ejml.data.FMatrixRBlock Q, boolean transposed)
getQ
in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.FMatrixRBlock>
public void getDiagonal(float[] diag, float[] off)
getDiagonal
in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F32<org.ejml.data.FMatrixRBlock>
public boolean decompose(org.ejml.data.FMatrixRBlock orig)
decompose
in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.FMatrixRBlock>
public static void multPlusTransA(int blockLength, org.ejml.data.FSubmatrixD1 A, org.ejml.data.FSubmatrixD1 B, org.ejml.data.FSubmatrixD1 C)
blockLength
- A
- row block vectorB
- row block vectorC
- public boolean inputModified()
inputModified
in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.FMatrixRBlock>