PDF Clown
0.0.8

it.stefanochizzolini.clown.util.math
Class LUDecomposition

java.lang.Object
  extended by it.stefanochizzolini.clown.util.math.LUDecomposition

public final class LUDecomposition
extends Object

LU matrix decomposition.

The LU decomposition is a lower triangular matrix L, an upper triangular matrix U, and a permutation size-long pivot vector.

Remarks

This class is a specialized adaptation from the original JAMA (Java Matrix Package) project, brought to the public domain by The MathWorks, Inc. and the National Institute of Standards and Technology.

Since:
0.0.4
Version:
0.0.4
Author:
Stefano Chizzolini (http://www.stefanochizzolini.it)

Constructor Summary
LUDecomposition(SquareMatrix matrix)
           
 
Method Summary
 double getDet()
          Gets the determinant.
 SquareMatrix getL()
          Gets the lower triangular factor.
 int[] getPivot()
          Gets the pivot permutation vector.
 SquareMatrix getU()
          Gets the upper triangular factor.
 boolean isNonsingular()
          Gets whether the matrix is non-singular.
 SquareMatrix solve(SquareMatrix target)
          Solves [this] * [return] = [target]
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LUDecomposition

public LUDecomposition(SquareMatrix matrix)
Parameters:
matrix - Matrix to decompose.
Method Detail

getDet

public double getDet()
Gets the determinant.


getL

public SquareMatrix getL()
Gets the lower triangular factor.


getU

public SquareMatrix getU()
Gets the upper triangular factor.


getPivot

public int[] getPivot()
Gets the pivot permutation vector.


isNonsingular

public boolean isNonsingular()
Gets whether the matrix is non-singular.


solve

public SquareMatrix solve(SquareMatrix target)
Solves [this] * [return] = [target]

Parameters:
target - Resulting matrix.
Returns:
Solution.
Throws:
IllegalArgumentException - Matrix sizes must agree.
RuntimeException - Matrix is singular.

PDF Clown
0.0.8

Project home page

Copyright © 2006-2010 Stefano Chizzolini. Some Rights Reserved.
This documentation is available under the terms of the GNU Free Documentation License.