Class SymmDenseEVD

java.lang.Object
no.uib.cipr.matrix.SymmDenseEVD

public class SymmDenseEVD extends Object
Computes eigenvalues of symmetrical, dense matrices
  • Constructor Details

    • 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 Details

    • 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
    • factor

      Computes the eigenvalue decomposition of the given matrix
      Parameters:
      A - Matrix to factorize. Overwritten on return
      Returns:
      The current eigenvalue decomposition
      Throws:
      NotConvergedException
    • factor

      Computes the eigenvalue decomposition of the given matrix
      Parameters:
      A - Matrix to factorize. Overwritten on return
      Returns:
      The current eigenvalue 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