Class SymmDenseEVD


  • public class SymmDenseEVD
    extends java.lang.Object
    Computes eigenvalues of symmetrical, dense matrices
    • Constructor Summary

      Constructors 
      Constructor Description
      SymmDenseEVD​(int n, boolean upper)
      Sets up an eigenvalue decomposition for symmetrical, dense matrices.
      SymmDenseEVD​(int n, boolean upper, boolean vectors)
      Sets up an eigenvalue decomposition for symmetrical, dense matrices.
      SymmDenseEVD​(int n, boolean upper, boolean vectors, double abstol)
      Sets up an eigenvalue decomposition for symmetrical, dense matrices
      SymmDenseEVD​(int n, boolean upper, double abstol)
      Sets up an eigenvalue decomposition for symmetrical, dense matrices.
    • Constructor Detail

      • SymmDenseEVD

        public SymmDenseEVD​(int n,
                            boolean upper)
        Sets up an eigenvalue decomposition for symmetrical, dense matrices. Computes all eigenvalues and eigenvectors, and uses a low default tolerance criteria
        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
      • SymmDenseEVD

        public SymmDenseEVD​(int n,
                            boolean upper,
                            double abstol)
        Sets up an eigenvalue decomposition for symmetrical, dense 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
        abstol - Absolute tolerance criteria
      • SymmDenseEVD

        public SymmDenseEVD​(int n,
                            boolean upper,
                            boolean vectors)
        Sets up an eigenvalue decomposition for symmetrical, dense matrices. Uses a low default tolerance criteria
        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
      • SymmDenseEVD

        public SymmDenseEVD​(int n,
                            boolean upper,
                            boolean vectors,
                            double abstol)
        Sets up an eigenvalue decomposition for symmetrical, dense 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
        abstol - Absolute tolerance criteria
    • Method Detail

      • factorize

        public static SymmDenseEVD factorize​(Matrix A)
                                      throws NotConvergedException
        Convenience method for computing the full eigenvalue decomposition of the given matrix
        Parameters:
        A - Matrix to factorize. Upper part extracted, and the matrix is not modified
        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