Package no.uib.cipr.matrix
Class SymmBandEVD
- java.lang.Object
-
- no.uib.cipr.matrix.SymmBandEVD
-
public class SymmBandEVD extends java.lang.Object
Computes eigenvalues of symmetrical, banded matrices
-
-
Constructor Summary
Constructors Constructor Description SymmBandEVD(int n, boolean upper)
Sets up an eigenvalue decomposition for symmetrical, banded matrices.SymmBandEVD(int n, boolean upper, boolean vectors)
Sets up an eigenvalue decomposition for symmetrical, banded matrices
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description SymmBandEVD
factor(LowerSymmBandMatrix A)
Computes the eigenvalue decomposition of the given matrixSymmBandEVD
factor(UpperSymmBandMatrix A)
Computes the eigenvalue decomposition of the given matrixstatic SymmBandEVD
factorize(Matrix A, int kd)
Convenience method for computing the full eigenvalue decomposition of the given matrixdouble[]
getEigenvalues()
Gets the eigenvalues (stored in ascending order)DenseMatrix
getEigenvectors()
Gets the eigenvectors, if availableboolean
hasEigenvectors()
True if the eigenvectors have been computed
-
-
-
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 matrixupper
- 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 matrixupper
- True if the upper part of the matrix is stored, and false if the lower part of the matrix is stored insteadvectors
- 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 modifiedkd
- Number of diagonals to extract- Returns:
- Newly allocated decomposition
- Throws:
NotConvergedException
-
factor
public SymmBandEVD factor(LowerSymmBandMatrix A) throws NotConvergedException
Computes the eigenvalue decomposition of the given matrix- Parameters:
A
- Matrix to factorize. Overwritten on return- Returns:
- The current eigenvalue decomposition
- Throws:
NotConvergedException
-
factor
public SymmBandEVD factor(UpperSymmBandMatrix A) throws NotConvergedException
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
-
-