org.jutil.math.matrix
Interface EigenvalueDecomposer

All Known Implementing Classes:
SchurEigenvalueDecomposer

public interface EigenvalueDecomposer

A class of objects that compute the eigenvalue factorization of a matrix.

Version:
$Revision: 1.3 $
Author:
Marko van Dooren

Field Summary
static java.lang.String CVS_REVISION
           
 
Method Summary
 EigenvalueDecomposition decompose(Matrix matrix)
          public behavior

pre matrix != null;
pre matrix.getNbRows() = matrix.getNbColumns();
pre (* matrix is not singular *);

post \result != null;
post (* \result.Q().times(\result.lambda()).equals(matrix) *);
post (* (\forall int i; i>=1 && i<= matrix.getNbRows();
\result.Q().times(\result.getEigenvector(i)).equals(\result.getEigenvector(i).times(\result.getEigenvalue(i))) *);
post \result.Q().getNbRows() == matrix.getNbRows();
post \result.Q().getNbColumns() == matrix.getNbColumns();
 

Field Detail

CVS_REVISION

public static final java.lang.String CVS_REVISION
Method Detail

decompose

public EigenvalueDecomposition decompose(Matrix matrix)
public behavior

pre matrix != null;
pre matrix.getNbRows() = matrix.getNbColumns();
pre (* matrix is not singular *);

post \result != null;
post (* \result.Q().times(\result.lambda()).equals(matrix) *);
post (* (\forall int i; i>=1 && i<= matrix.getNbRows();
\result.Q().times(\result.getEigenvector(i)).equals(\result.getEigenvector(i).times(\result.getEigenvalue(i))) *);
post \result.Q().getNbRows() == matrix.getNbRows();
post \result.Q().getNbColumns() == matrix.getNbColumns();

Return an eigenvalue factorization of this matrix.

Parameters:
matrix - The matrix to decompose.