org.encog.mathutil.matrices.decomposition
Class EigenvalueDecomposition

java.lang.Object
  extended by org.encog.mathutil.matrices.decomposition.EigenvalueDecomposition

public class EigenvalueDecomposition
extends Object

Eigenvalues and eigenvectors of a real matrix.

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.times(D.times(V.transpose())) and V.times(V.transpose()) 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.times(V) equals V.times(D). The matrix V may be badly conditioned, or even singular, so the validity of the equation A = V*D*inverse(V) depends upon V.cond(). This file based on a class from the public domain JAMA package. http://math.nist.gov/javanumerics/jama/


Constructor Summary
EigenvalueDecomposition(Matrix matrix)
          Check for symmetry, then construct the eigenvalue decomposition Structure to access D and V.
 
Method Summary
 Matrix getD()
          Return the block diagonal eigenvalue matrix
 double[] getImagEigenvalues()
          Return the imaginary parts of the eigenvalues.
 double[] getRealEigenvalues()
          Return the real parts of the eigenvalues.
 Matrix getV()
          Return the eigenvector matrix.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EigenvalueDecomposition

public EigenvalueDecomposition(Matrix matrix)
Check for symmetry, then construct the eigenvalue decomposition Structure to access D and V.

Parameters:
matrix - Square matrix
Method Detail

getD

public Matrix getD()
Return the block diagonal eigenvalue matrix

Returns:
D

getImagEigenvalues

public double[] getImagEigenvalues()
Return the imaginary parts of the eigenvalues.

Returns:
imag(diag(D)).

getRealEigenvalues

public double[] getRealEigenvalues()
Return the real parts of the eigenvalues.

Returns:
real(diag(D)).

getV

public Matrix getV()
Return the eigenvector matrix.

Returns:
V


Copyright © 2014. All Rights Reserved.