org.ejml.alg.dense.decomposition.lu
Class LUDecompositionBase_D64
- java.lang.Object
-
- org.ejml.alg.dense.decomposition.lu.LUDecompositionBase_D64
-
- All Implemented Interfaces:
- DecompositionInterface<DenseMatrix64F>, LUDecomposition<DenseMatrix64F>
- Direct Known Subclasses:
- LUDecompositionAlt_D64, LUDecompositionNR_D64
public abstract class LUDecompositionBase_D64 extends java.lang.Object implements LUDecomposition<DenseMatrix64F>
Contains common data structures and operations for LU decomposition algorithms.
-
-
Constructor Summary
Constructors Constructor and Description LUDecompositionBase_D64()
-
Method Summary
All Methods Instance Methods Concrete Methods 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.Complex64FcomputeDeterminant()Computes the determinant from the LU decomposition.int[]getIndx()DenseMatrix64FgetLower(DenseMatrix64F lower)Writes the lower triangular matrix into the specified matrix.DenseMatrix64FgetLU()int[]getPivot()DenseMatrix64FgetPivot(DenseMatrix64F pivot)For numerical stability there are often row interchanges.DenseMatrix64FgetUpper(DenseMatrix64F upper)Writes the upper triangular matrix into the specified matrix.booleaninputModified()Is the input matrix toDecompositionInterface.decompose(org.ejml.data.Matrix)is modified during the decomposition process.booleanisSingular()Determines if the decomposed matrix is singular.doublequality()voidsetExpectedMaxSize(int numRows, int numCols)-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ejml.interfaces.decomposition.DecompositionInterface
decompose
-
-
-
-
Method Detail
-
setExpectedMaxSize
public void setExpectedMaxSize(int numRows, int numCols)
-
getLU
public DenseMatrix64F getLU()
-
getIndx
public int[] getIndx()
-
getPivot
public int[] getPivot()
-
inputModified
public boolean inputModified()
Description copied from interface:DecompositionInterfaceIs the input matrix toDecompositionInterface.decompose(org.ejml.data.Matrix)is modified during the decomposition process.- Specified by:
inputModifiedin interfaceDecompositionInterface<DenseMatrix64F>- Returns:
- true if the input matrix to decompose() is modified.
-
getLower
public DenseMatrix64F getLower(DenseMatrix64F lower)
Writes the lower triangular matrix into the specified matrix.- Specified by:
getLowerin interfaceLUDecomposition<DenseMatrix64F>- Parameters:
lower- Where the lower triangular matrix is writen to.- Returns:
- The L matrix.
-
getUpper
public DenseMatrix64F getUpper(DenseMatrix64F upper)
Writes the upper triangular matrix into the specified matrix.- Specified by:
getUpperin interfaceLUDecomposition<DenseMatrix64F>- Parameters:
upper- Where the upper triangular matrix is writen to.- Returns:
- The U matrix.
-
getPivot
public DenseMatrix64F getPivot(DenseMatrix64F pivot)
Description copied from interface:LUDecompositionFor numerical stability there are often row interchanges. This computes a pivot matrix that will undo those changes.
- Specified by:
getPivotin interfaceLUDecomposition<DenseMatrix64F>- Parameters:
pivot- Storage for the pivot matrix. If null then a new matrix is returned. Modified.- Returns:
- The pivot matrix.
-
isSingular
public boolean isSingular()
Determines if the decomposed matrix is singular. This function can return false and the matrix be almost singular, which is still bad.- Specified by:
isSingularin interfaceLUDecomposition<DenseMatrix64F>- Returns:
- true if singular false otherwise.
-
computeDeterminant
public Complex64F computeDeterminant()
Computes the determinant from the LU decomposition.- Specified by:
computeDeterminantin interfaceLUDecomposition<DenseMatrix64F>- Returns:
- The matrix's determinant.
-
quality
public double quality()
-
_solveVectorInternal
public void _solveVectorInternal(double[] vv)
a specialized version of solve that avoid additional checks that are not needed.
-
_getVV
public double[] _getVV()
-
-
DMelt 3.0 © DataMelt by jWork.ORG