org.jutil.math.matrix
Class DefaultLUDecomposition

java.lang.Object
  |
  +--org.jutil.math.matrix.DefaultLUDecomposition
All Implemented Interfaces:
LUDecomposition

public class DefaultLUDecomposition
extends java.lang.Object
implements LUDecomposition

This class represents a default LU factorization of a square non-singular matrix.


Field Summary
static java.lang.String CVS_REVISION
           
 
Constructor Summary
DefaultLUDecomposition(Matrix L, Matrix U, Matrix P)
          Initialize a new DefaultLUDecomposition with the given L and U matrices
 
Method Summary
 Matrix L()
          See superclass
 Matrix P()
          See superclass
 Matrix U()
          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

DefaultLUDecomposition

public DefaultLUDecomposition(Matrix L,
                              Matrix U,
                              Matrix P)
Initialize a new DefaultLUDecomposition with the given L and U matrices

Parameters:
L - The L matrix of the LU decomposition
U - The U matrix of the LU decomposition

Specifications:
public behavior
requires L != null;
requires L.isSquare();
requires L.isLowerTriangular();
requires ( \forall int i; i >= 1&&i <= L.getNbColumns(); L.elementAt(i,i) == 1);
requires U != null;
requires U.sameDimensions(L);
requires U.isUpperTriangular();
requires P != null;
requires P.isPermutationMatrix();
requires P.sameDimensions(L);
ensures L().equals(L);
ensures U().equals(U);
ensures P().equals(P);
Method Detail

L

public Matrix L()
See superclass
Specifications inherited from overridden method in interface LUDecomposition:
public behavior
ensures \result != null;
ensures \result .isSquare();
ensures \result .isLowerTriangular();
ensures ( \forall int i; i >= 1&&i <= \result .getNbColumns(); \result .elementAt(i,i) == 1);

U

public Matrix U()
See superclass
Specifications inherited from overridden method in interface LUDecomposition:
public behavior
ensures \result != null;
ensures \result .isSquare();
ensures \result .isUpperTriangular();

P

public Matrix P()
See superclass
Specifications inherited from overridden method in interface LUDecomposition:
public behavior
ensures \result != null;
ensures \result .isPermutationMatrix();