jhplot.math
Class EigenvalueDecomposition

java.lang.Object
  extended by jhplot.math.EigenvalueDecomposition

public class EigenvalueDecomposition
extends java.lang.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().


Constructor Summary
EigenvalueDecomposition(double[][] Arg)
          Check for symmetry, then construct the eigenvalue decomposition
 
Method Summary
 double[] get1DImagD()
          Return the imaginary diagonal eigenvalue matrix
 double[] get1DRealD()
          Return the real diagonal eigenvalue matrix
 double[][] getD()
          Return the block diagonal eigenvalue matrix
 double[][] getImagD()
          Return the imaginary diagonal eigenvalue matrix
 double[][] getRealD()
          Return the real diagonal eigenvalue matrix
 double[][] getV()
          Return the eigenvector matrix
 boolean isDReal()
          Return the eigenvector matrix
 void toCommandLine(java.lang.String title)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EigenvalueDecomposition

public EigenvalueDecomposition(double[][] Arg)
Check for symmetry, then construct the eigenvalue decomposition

Parameters:
Arg - Square matrix
Method Detail

isDReal

public boolean isDReal()
Return the eigenvector matrix

Returns:
V

getV

public double[][] getV()
Return the eigenvector matrix

Returns:
V

getD

public double[][] getD()
Return the block diagonal eigenvalue matrix

Returns:
D

get1DRealD

public double[] get1DRealD()
Return the real diagonal eigenvalue matrix

Returns:
Real(D)

get1DImagD

public double[] get1DImagD()
Return the imaginary diagonal eigenvalue matrix

Returns:
Imag(D)

getRealD

public double[][] getRealD()
Return the real diagonal eigenvalue matrix

Returns:
Real(D)

getImagD

public double[][] getImagD()
Return the imaginary diagonal eigenvalue matrix

Returns:
Imag(D)

toCommandLine

public void toCommandLine(java.lang.String title)


jHepWork 2.1 (C) S.Chekanov