Parallel Colt 0.7.2

cern.colt.matrix.tdouble.algo.decomposition
Class DoubleEigenvalueDecomposition

java.lang.Object
  extended by cern.colt.matrix.tdouble.algo.decomposition.DoubleEigenvalueDecomposition
All Implemented Interfaces:
Serializable

public class DoubleEigenvalueDecomposition
extends Object
implements Serializable

Eigenvalues and eigenvectors of a real matrix A.

If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is diagonal and the eigenvector matrix V is orthogonal. I.e. A = V.mult(D.mult(transpose(V))) and V.mult(transpose(V)) equals the identity matrix.

If A is not symmetric, then the eigenvalue matrix D is block diagonal with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The columns of V represent the eigenvectors in the sense that A*V = V*D, i.e. A.mult(V) equals V.mult(D). The matrix V may be badly conditioned, or even singular, so the validity of the equation A = V*D*inverse(V) depends upon Algebra.cond(V).

See Also:
Serialized Form

Constructor Summary
DoubleEigenvalueDecomposition(DoubleMatrix2D A)
          Constructs and returns a new eigenvalue decomposition object; The decomposed matrices can be retrieved via instance methods of the returned decomposition object.
 
Method Summary
 DoubleMatrix2D getD()
          Returns the block diagonal eigenvalue matrix, D.
 DoubleMatrix1D getImagEigenvalues()
          Returns the imaginary parts of the eigenvalues.
 DoubleMatrix1D getRealEigenvalues()
          Returns the real parts of the eigenvalues.
 DoubleMatrix2D getV()
          Returns the eigenvector matrix, V
 String toString()
          Returns a String with (propertyName, propertyValue) pairs.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DoubleEigenvalueDecomposition

public DoubleEigenvalueDecomposition(DoubleMatrix2D A)
Constructs and returns a new eigenvalue decomposition object; The decomposed matrices can be retrieved via instance methods of the returned decomposition object. Checks for symmetry, then constructs the eigenvalue decomposition.

Parameters:
A - A square matrix.
Throws:
IllegalArgumentException - if A is not square.
Method Detail

getD

public DoubleMatrix2D getD()
Returns the block diagonal eigenvalue matrix, D.

Returns:
D

getImagEigenvalues

public DoubleMatrix1D getImagEigenvalues()
Returns the imaginary parts of the eigenvalues.

Returns:
imag(diag(D))

getRealEigenvalues

public DoubleMatrix1D getRealEigenvalues()
Returns the real parts of the eigenvalues.

Returns:
real(diag(D))

getV

public DoubleMatrix2D getV()
Returns the eigenvector matrix, V

Returns:
V

toString

public String toString()
Returns a String with (propertyName, propertyValue) pairs. Useful for debugging or to quickly get the rough picture. For example,
         rank          : 3
         trace         : 0
 
 

Overrides:
toString in class Object

Parallel Colt 0.7.2

Jump to the Parallel Colt Homepage