org.ejml.alg.dense.decomposition
Interface EigenDecomposition<MatrixType extends Matrix64F>

All Superinterfaces:
DecompositionInterface<MatrixType>
All Known Implementing Classes:
SwitchingEigenDecomposition, SymmetricQRAlgorithmDecomposition, WatchedDoubleStepQRDecomposition

public interface EigenDecomposition<MatrixType extends Matrix64F>
extends DecompositionInterface<MatrixType>

This is a generic interface for computing the eigenvalues and eigenvectors of a matrix. Eigenvalues and eigenvectors have the following property:

Av=λv

where A is a square matrix and v is an eigenvector associated with the eigenvalue λ.

In general, both eigenvalues and eigenvectors can be complex numbers. For symmetric matrices the eigenvalues and eigenvectors are always real numbers. EJML does not support complex matrices but it does have minimal support for complex numbers. As a result complex eigenvalues are found, but only the real eigenvectors are computed.

To create a new instance of EigenDecomposition use either DecompositionFactory or EigenOps. EigenOps contains options that allows customized algorithms to be called, avoided unnecessary computations.

Author:
Peter Abeles

Method Summary
 Complex64F getEigenvalue(int index)
           Returns the value of an individual eigenvalue.
 MatrixType getEigenVector(int index)
           Used to retrieve real valued eigenvectors.
 int getNumberOfEigenvalues()
          Returns the number of eigenvalues/eigenvectors.
 
Methods inherited from interface org.ejml.alg.dense.decomposition.DecompositionInterface
decompose, inputModified
 

Method Detail

getNumberOfEigenvalues

int getNumberOfEigenvalues()
Returns the number of eigenvalues/eigenvectors. This is the matrix's dimension.

Returns:
number of eigenvalues/eigenvectors.

getEigenvalue

Complex64F getEigenvalue(int index)

Returns the value of an individual eigenvalue. The eigenvalue maybe a complex number. It is a real number of the imaginary component is equal to exactly one.

Parameters:
index - Index of the eigenvalue eigenvector pair.
Returns:
An eigenvalue.

getEigenVector

MatrixType getEigenVector(int index)

Used to retrieve real valued eigenvectors. If an eigenvector is associated with a complex eigenvalue then null is returned instead.

Parameters:
index - Index of the eigenvalue eigenvector pair.
Returns:
If the associated eigenvalue is real then an eigenvector is returned, null otherwise.


Copyright © 2011. All Rights Reserved.