Class SymmBandEVD


  • public class SymmBandEVD
    extends java.lang.Object
    Computes eigenvalues of symmetrical, banded matrices
    • Constructor Detail

      • SymmBandEVD

        public SymmBandEVD​(int n,
                           boolean upper)
        Sets up an eigenvalue decomposition for symmetrical, banded matrices. Computes all eigenvalues and eigenvectors
        Parameters:
        n - Size of the matrix
        upper - True if the upper part of the matrix is stored, and false if the lower part of the matrix is stored instead
      • SymmBandEVD

        public SymmBandEVD​(int n,
                           boolean upper,
                           boolean vectors)
        Sets up an eigenvalue decomposition for symmetrical, banded matrices
        Parameters:
        n - Size of the matrix
        upper - True if the upper part of the matrix is stored, and false if the lower part of the matrix is stored instead
        vectors - True to compute the eigenvectors, false for just the eigenvalues
    • Method Detail

      • factorize

        public static SymmBandEVD factorize​(Matrix A,
                                            int kd)
                                     throws NotConvergedException
        Convenience method for computing the full eigenvalue decomposition of the given matrix
        Parameters:
        A - Matrix to factorize. The upper triangular part is extracted, and the matrix is not modified
        kd - Number of diagonals to extract
        Returns:
        Newly allocated decomposition
        Throws:
        NotConvergedException
      • getEigenvalues

        public double[] getEigenvalues()
        Gets the eigenvalues (stored in ascending order)
      • getEigenvectors

        public DenseMatrix getEigenvectors()
        Gets the eigenvectors, if available
      • hasEigenvectors

        public boolean hasEigenvectors()
        True if the eigenvectors have been computed