public class SymmetricQRAlgorithmDecomposition_D64
extends java.lang.Object
implements org.ejml.interfaces.decomposition.EigenDecomposition<org.ejml.data.DenseMatrix64F>
Computes the eigenvalues and eigenvectors of a real symmetric matrix using the symmetric implicit QR algorithm. Inside each iteration a QR decomposition of Ai-piI is implicitly computed.
This implementation is based on the algorithm is sketched out in:
David S. Watkins, "Fundamentals of Matrix Computations," Second Edition. page 377-385
| Constructor and Description |
|---|
SymmetricQRAlgorithmDecomposition_D64(boolean computeVectors) |
SymmetricQRAlgorithmDecomposition_D64(org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.DenseMatrix64F> decomp,
boolean computeVectors) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
decompose(org.ejml.data.DenseMatrix64F orig)
Decomposes the matrix using the QR algorithm.
|
org.ejml.data.Complex64F |
getEigenvalue(int index) |
org.ejml.data.DenseMatrix64F |
getEigenVector(int index) |
int |
getNumberOfEigenvalues() |
boolean |
inputModified() |
void |
setComputeVectorsWithValues(boolean computeVectorsWithValues) |
void |
setMaxIterations(int max)
Used to limit the number of internal QR iterations that the QR algorithm performs.
|
public SymmetricQRAlgorithmDecomposition_D64(org.ejml.interfaces.decomposition.TridiagonalSimilarDecomposition<org.ejml.data.DenseMatrix64F> decomp,
boolean computeVectors)
public SymmetricQRAlgorithmDecomposition_D64(boolean computeVectors)
public void setComputeVectorsWithValues(boolean computeVectorsWithValues)
public void setMaxIterations(int max)
max - The maximum number of QR iterations it will perform.public int getNumberOfEigenvalues()
getNumberOfEigenvalues in interface org.ejml.interfaces.decomposition.EigenDecomposition<org.ejml.data.DenseMatrix64F>public org.ejml.data.Complex64F getEigenvalue(int index)
getEigenvalue in interface org.ejml.interfaces.decomposition.EigenDecomposition<org.ejml.data.DenseMatrix64F>public org.ejml.data.DenseMatrix64F getEigenVector(int index)
getEigenVector in interface org.ejml.interfaces.decomposition.EigenDecomposition<org.ejml.data.DenseMatrix64F>public boolean decompose(org.ejml.data.DenseMatrix64F orig)
decompose in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DenseMatrix64F>orig - The matrix which is being decomposed. Not modified.public boolean inputModified()
inputModified in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DenseMatrix64F>