Class TridiagonalDecompositionHouseholder_DDRB

  • All Implemented Interfaces:
    org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRBlock>, org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.DMatrixRBlock>, org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F64<org.ejml.data.DMatrixRBlock>

    public class TridiagonalDecompositionHouseholder_DDRB
    extends java.lang.Object
    implements org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition_F64<org.ejml.data.DMatrixRBlock>

    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.DMatrixRBlock A  
      protected double[] gammas  
      protected org.ejml.data.DMatrixRBlock tmp  
      protected org.ejml.data.DMatrixRBlock V  
      protected org.ejml.data.DMatrixRMaj zerosM  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean decompose​(org.ejml.data.DMatrixRBlock orig)  
      void getDiagonal​(double[] diag, double[] off)  
      org.ejml.data.DMatrixRBlock getQ​(org.ejml.data.DMatrixRBlock Q, boolean transposed)  
      org.ejml.data.DMatrixRBlock getT​(org.ejml.data.DMatrixRBlock T)  
      boolean inputModified()  
      static void multPlusTransA​(int blockLength, org.ejml.data.DSubmatrixD1 A, org.ejml.data.DSubmatrixD1 B, org.ejml.data.DSubmatrixD1 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 Detail

      • A

        protected org.ejml.data.DMatrixRBlock A
      • V

        protected org.ejml.data.DMatrixRBlock V
      • tmp

        protected org.ejml.data.DMatrixRBlock tmp
      • gammas

        protected double[] gammas
      • zerosM

        protected org.ejml.data.DMatrixRMaj zerosM
    • Constructor Detail

      • TridiagonalDecompositionHouseholder_DDRB

        public TridiagonalDecompositionHouseholder_DDRB()
    • Method Detail

      • getT

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

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

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

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

        public static void multPlusTransA​(int blockLength,
                                          org.ejml.data.DSubmatrixD1 A,
                                          org.ejml.data.DSubmatrixD1 B,
                                          org.ejml.data.DSubmatrixD1 C)
        C = C + A^T*B
        Parameters:
        blockLength -
        A - row block vector
        B - row block vector
        C -
      • inputModified

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