ch.javasoft.smx.ops.matrix
Class ExtendedDoubleOperations

java.lang.Object
  extended by ch.javasoft.smx.ops.matrix.ExtendedDoubleOperations
All Implemented Interfaces:
ExtendedMatrixOperations<Double,Double>

public class ExtendedDoubleOperations
extends Object
implements ExtendedMatrixOperations<Double,Double>


Constructor Summary
ExtendedDoubleOperations(double tolerance)
           
ExtendedDoubleOperations(Zero zero)
           
 
Method Summary
 Gauss getGauss()
           
 Zero getZero()
           
 ReadableMatrix<Double> invert(ReadableMatrix<Double> mx)
          Returns the matrix inverse of a square matrix mx, that is, a matrix res = null(mx), such that
 int nullity(ReadableMatrix<Double> mx)
          Returns the nullity of the given matrix, that is, the dimension of the nullspace of mx.
 ReadableMatrix<Double> nullspace(ReadableMatrix<Double> mx)
          Returns a basis for the kernel (or nullspace) of mx, that is, a matrix res, such that it spans the nullspace:
 int rank(ReadableMatrix<Double> mx)
          Returns the rank of the given matrix.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtendedDoubleOperations

public ExtendedDoubleOperations(Zero zero)

ExtendedDoubleOperations

public ExtendedDoubleOperations(double tolerance)
Method Detail

getZero

public Zero getZero()

getGauss

public Gauss getGauss()

rank

public int rank(ReadableMatrix<Double> mx)
Description copied from interface: ExtendedMatrixOperations
Returns the rank of the given matrix.

Usually, Gaussian elimination is used to compute the rank

Specified by:
rank in interface ExtendedMatrixOperations<Double,Double>

nullity

public int nullity(ReadableMatrix<Double> mx)
Description copied from interface: ExtendedMatrixOperations
Returns the nullity of the given matrix, that is, the dimension of the nullspace of mx. Note that by the rank-nullity theorem,
   rank(mx) + nullity(mx) = n
 
where n is the number of columns of mx.

Usually, Gaussian elimination is used to compute the nullity.

Specified by:
nullity in interface ExtendedMatrixOperations<Double,Double>

invert

public ReadableMatrix<Double> invert(ReadableMatrix<Double> mx)
Description copied from interface: ExtendedMatrixOperations
Returns the matrix inverse of a square matrix mx, that is, a matrix res = null(mx), such that
   mx * res = I
 
where I is the identity matrix.

Usually, Gaussian elimination is used to compute the inverse matrix.

Specified by:
invert in interface ExtendedMatrixOperations<Double,Double>

nullspace

public ReadableMatrix<Double> nullspace(ReadableMatrix<Double> mx)
Description copied from interface: ExtendedMatrixOperations
Returns a basis for the kernel (or nullspace) of mx, that is, a matrix res, such that it spans the nullspace:
   span(res) = null(mx) = { x : mx * x = 0}
 

Usually, Gaussian elimination is used to compute the kernel matrix.

Specified by:
nullspace in interface ExtendedMatrixOperations<Double,Double>