Class TridiagonalDecompositionHouseholder_FDRB

java.lang.Object
org.ejml.dense.block.decomposition.hessenberg.TridiagonalDecompositionHouseholder_FDRB
All Implemented Interfaces:
org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.FMatrixRBlock>, org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.FMatrixRBlock>, org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F32<org.ejml.data.FMatrixRBlock>

@Generated("org.ejml.dense.block.decomposition.hessenberg.TridiagonalDecompositionHouseholder_DDRB")
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.

  • Field Summary

    Fields 
    Modifier and Type Field 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 Summary

    Constructors 
    Constructor Description
    TridiagonalDecompositionHouseholder_FDRB()  
  • Method Summary

    Modifier and Type Method Description
    boolean decompose​(org.ejml.data.FMatrixRBlock orig)  
    void getDiagonal​(float[] diag, float[] off)  
    org.ejml.data.FMatrixRBlock getQ​(@Nullable org.ejml.data.FMatrixRBlock Q, boolean transposed)  
    org.ejml.data.FMatrixRBlock getT​(@Nullable 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • A

      protected org.ejml.data.FMatrixRBlock A
    • V

      protected org.ejml.data.FMatrixRBlock V
    • tmp

      protected org.ejml.data.FMatrixRBlock tmp
    • gammas

      protected float[] gammas
    • zerosM

      protected org.ejml.data.FMatrixRMaj zerosM
  • Constructor Details

  • Method Details

    • getT

      public org.ejml.data.FMatrixRBlock getT​(@Nullable @Nullable org.ejml.data.FMatrixRBlock T)
      Specified by:
      getT in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.FMatrixRBlock>
    • getQ

      public org.ejml.data.FMatrixRBlock getQ​(@Nullable @Nullable org.ejml.data.FMatrixRBlock Q, boolean transposed)
      Specified by:
      getQ in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.FMatrixRBlock>
    • getDiagonal

      public void getDiagonal​(float[] diag, float[] off)
      Specified by:
      getDiagonal in interface org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F32<org.ejml.data.FMatrixRBlock>
    • decompose

      public boolean decompose​(org.ejml.data.FMatrixRBlock orig)
      Specified by:
      decompose in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.FMatrixRBlock>
    • multPlusTransA

      public 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
      Parameters:
      A - row block vector
      B - row block vector
    • inputModified

      public boolean inputModified()
      Specified by:
      inputModified in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.FMatrixRBlock>