org.apache.commons.math.linear
Class CholeskyDecompositionImpl.Solver

java.lang.Object
  extended by org.apache.commons.math.linear.CholeskyDecompositionImpl.Solver
All Implemented Interfaces:
DecompositionSolver
Enclosing class:
CholeskyDecompositionImpl

private static class CholeskyDecompositionImpl.Solver
extends java.lang.Object
implements DecompositionSolver

Specialized solver.


Field Summary
private  double[][] lTData
          Row-oriented storage for LT matrix data.
 
Constructor Summary
private CholeskyDecompositionImpl.Solver(double[][] lTData)
          Build a solver from decomposed matrix.
 
Method Summary
 RealMatrix getInverse()
          Get the inverse (or pseudo-inverse) of the decomposed matrix.
 boolean isNonSingular()
          Check if the decomposed matrix is non-singular.
 ArrayRealVector solve(ArrayRealVector b)
          Solve the linear equation A × X = B.
 double[] solve(double[] b)
          Solve the linear equation A × X = B for matrices A.
 RealMatrix solve(RealMatrix b)
          Solve the linear equation A × X = B for matrices A.
 RealVector solve(RealVector b)
          Solve the linear equation A × X = B for matrices A.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

lTData

private final double[][] lTData
Row-oriented storage for LT matrix data.

Constructor Detail

CholeskyDecompositionImpl.Solver

private CholeskyDecompositionImpl.Solver(double[][] lTData)
Build a solver from decomposed matrix.

Parameters:
lTData - row-oriented storage for LT matrix data
Method Detail

isNonSingular

public boolean isNonSingular()
Check if the decomposed matrix is non-singular.

Specified by:
isNonSingular in interface DecompositionSolver
Returns:
true if the decomposed matrix is non-singular

solve

public double[] solve(double[] b)
               throws java.lang.IllegalArgumentException,
                      InvalidMatrixException
Solve the linear equation A × X = B for matrices A.

The A matrix is implicit, it is provided by the underlying decomposition algorithm.

Specified by:
solve in interface DecompositionSolver
Parameters:
b - right-hand side of the equation A × X = B
Returns:
a vector X that minimizes the two norm of A × X - B
Throws:
java.lang.IllegalArgumentException - if matrices dimensions don't match
InvalidMatrixException - if decomposed matrix is singular

solve

public RealVector solve(RealVector b)
                 throws java.lang.IllegalArgumentException,
                        InvalidMatrixException
Solve the linear equation A × X = B for matrices A.

The A matrix is implicit, it is provided by the underlying decomposition algorithm.

Specified by:
solve in interface DecompositionSolver
Parameters:
b - right-hand side of the equation A × X = B
Returns:
a vector X that minimizes the two norm of A × X - B
Throws:
java.lang.IllegalArgumentException - if matrices dimensions don't match
InvalidMatrixException - if decomposed matrix is singular

solve

public ArrayRealVector solve(ArrayRealVector b)
                      throws java.lang.IllegalArgumentException,
                             InvalidMatrixException
Solve the linear equation A × X = B.

The A matrix is implicit here. It is

Parameters:
b - right-hand side of the equation A × X = B
Returns:
a vector X such that A × X = B
Throws:
java.lang.IllegalArgumentException - if matrices dimensions don't match
InvalidMatrixException - if decomposed matrix is singular

solve

public RealMatrix solve(RealMatrix b)
                 throws java.lang.IllegalArgumentException,
                        InvalidMatrixException
Solve the linear equation A × X = B for matrices A.

The A matrix is implicit, it is provided by the underlying decomposition algorithm.

Specified by:
solve in interface DecompositionSolver
Parameters:
b - right-hand side of the equation A × X = B
Returns:
a matrix X that minimizes the two norm of A × X - B
Throws:
java.lang.IllegalArgumentException - if matrices dimensions don't match
InvalidMatrixException - if decomposed matrix is singular

getInverse

public RealMatrix getInverse()
                      throws InvalidMatrixException
Get the inverse (or pseudo-inverse) of the decomposed matrix.

Specified by:
getInverse in interface DecompositionSolver
Returns:
inverse matrix
Throws:
InvalidMatrixException - if decomposed matrix is singular


Copyright (c) 2003-2010 Apache Software Foundation