Class SymmBandEVD

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

public class SymmBandEVD extends Object
Computes eigenvalues of symmetrical, banded matrices
  • Constructor Details

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

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