org.jutil.math.matrix
Class HouseholderHessenbergReduction

java.lang.Object
  |
  +--org.jutil.math.matrix.HouseholderHessenbergReduction
All Implemented Interfaces:
HessenbergReduction

public class HouseholderHessenbergReduction
extends java.lang.Object
implements HessenbergReduction

This class represents a HouseHolder Hessenberg factorization of a matrix.

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

Field Summary
static java.lang.String CVS_REVISION
           
 
Constructor Summary
HouseholderHessenbergReduction(Matrix H, Column[] vs)
          public behavior

pre H != null;
pre H.isSquare();
pre H.isHessenberg();
pre vs != null;
pre vs.length == H.getNbColumns() - 2;
pre (\forall int i; i>=0 && i vs[i] != null
vs[i].size() == H.getNbRows() - i - 1);

post H().equals(H);
post (\forall int i; i>=1 && i<= vs.length;
getV(i).equals(vs[i-1]));
Initialize a new HouseholderHessenbergReduction combination with the given H matrix and v vectors.
 
Method Summary
 Column getV(int i)
          public behavior

pre i>=1;
pre i<=H().getNbColumns() - 2;

post \result != null;
 Matrix H()
          See superclass
 Matrix Q()
          See superclass
 Column Qtimes(Column column)
          See superclass
 Column QtransposeTimes(Column column)
          See superclass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CVS_REVISION

public static final java.lang.String CVS_REVISION
Constructor Detail

HouseholderHessenbergReduction

public HouseholderHessenbergReduction(Matrix H,
                                      Column[] vs)
public behavior

pre H != null;
pre H.isSquare();
pre H.isHessenberg();
pre vs != null;
pre vs.length == H.getNbColumns() - 2;
pre (\forall int i; i>=0 && i vs[i] != null
vs[i].size() == H.getNbRows() - i - 1);

post H().equals(H);
post (\forall int i; i>=1 && i<= vs.length;
getV(i).equals(vs[i-1]));
Initialize a new HouseholderHessenbergReduction combination with the given H matrix and v vectors.
Parameters:
H - The H matrix of the Hessenberg reduction.
vs - An array of v vectors produce by the HouseHolder factorization The first vector of the algorithm is at position -, the last vector is at position vs.length - 1
Method Detail

H

public Matrix H()
See superclass
Specified by:
H in interface HessenbergReduction

getV

public Column getV(int i)
public behavior

pre i>=1;
pre i<=H().getNbColumns() - 2;

post \result != null;

Return the i-th v vector as computed by the Householder algorithm that computed this Hessenberg decomposition.

Parameters:
i -

The index of the requested v vector. Indices start from 1.


Q

public Matrix Q()
See superclass
Specified by:
Q in interface HessenbergReduction

Qtimes

public Column Qtimes(Column column)
See superclass
Specified by:
Qtimes in interface HessenbergReduction
Following copied from interface: org.jutil.math.matrix.HessenbergReduction
Parameters:
column - The vector with which Q() must be multiplied

QtransposeTimes

public Column QtransposeTimes(Column column)
See superclass
Specified by:
QtransposeTimes in interface HessenbergReduction
Following copied from interface: org.jutil.math.matrix.HessenbergReduction
Parameters:
column - The vector with which Q must be multiplied