public abstract class LUDecompositionBase extends Object implements LUDecomposition<DenseMatrix64F>
Contains common data structures and operations for LU decomposition algorithms.
| Modifier and Type | Field and Description |
|---|---|
protected double[] |
dataLU |
protected int[] |
indx |
protected DenseMatrix64F |
LU |
protected int |
m |
protected int |
maxWidth |
protected int |
n |
protected int[] |
pivot |
protected double |
pivsign |
protected double[] |
vv |
| Constructor and Description |
|---|
LUDecompositionBase() |
| Modifier and Type | Method and Description |
|---|---|
double[] |
_getVV() |
void |
_solveVectorInternal(double[] vv)
a specialized version of solve that avoid additional checks that are not needed.
|
double |
computeDeterminant()
Computes the determinant from the LU decomposition.
|
protected void |
decomposeCommonInit(DenseMatrix64F a) |
int[] |
getIndx() |
DenseMatrix64F |
getLower(DenseMatrix64F lower)
Writes the lower triangular matrix into the specified matrix.
|
DenseMatrix64F |
getLU() |
int[] |
getPivot() |
DenseMatrix64F |
getPivot(DenseMatrix64F pivot)
For numerical stability there are often row interchanges.
|
DenseMatrix64F |
getUpper(DenseMatrix64F upper)
Writes the upper triangular matrix into the specified matrix.
|
boolean |
inputModified()
Is the input matrix to
DecompositionInterface.decompose(org.ejml.data.Matrix64F) is modified during
the decomposition process. |
boolean |
isSingular()
Determines if the decomposed matrix is singular.
|
double |
quality() |
void |
setExpectedMaxSize(int numRows,
int numCols) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdecomposeprotected DenseMatrix64F LU
protected int maxWidth
protected int m
protected int n
protected double[] dataLU
protected double[] vv
protected int[] indx
protected int[] pivot
protected double pivsign
public void setExpectedMaxSize(int numRows,
int numCols)
public DenseMatrix64F getLU()
public int[] getIndx()
public int[] getPivot()
public boolean inputModified()
DecompositionInterfaceDecompositionInterface.decompose(org.ejml.data.Matrix64F) is modified during
the decomposition process.inputModified in interface DecompositionInterface<DenseMatrix64F>public DenseMatrix64F getLower(DenseMatrix64F lower)
getLower in interface LUDecomposition<DenseMatrix64F>lower - Where the lower triangular matrix is writen to.public DenseMatrix64F getUpper(DenseMatrix64F upper)
getUpper in interface LUDecomposition<DenseMatrix64F>upper - Where the upper triangular matrix is writen to.public DenseMatrix64F getPivot(DenseMatrix64F pivot)
LUDecompositionFor numerical stability there are often row interchanges. This computes a pivot matrix that will undo those changes.
getPivot in interface LUDecomposition<DenseMatrix64F>pivot - Storage for the pivot matrix. If null then a new matrix is returned. Modified.protected void decomposeCommonInit(DenseMatrix64F a)
public boolean isSingular()
isSingular in interface LUDecomposition<DenseMatrix64F>public double computeDeterminant()
computeDeterminant in interface LUDecomposition<DenseMatrix64F>public double quality()
public void _solveVectorInternal(double[] vv)
public double[] _getVV()
Copyright © 2013. All Rights Reserved.