Class LUDecompositionBase_DDRM
java.lang.Object
org.ejml.dense.row.decomposition.lu.LUDecompositionBase_DDRM
- All Implemented Interfaces:
org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRMaj>,org.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>,org.ejml.interfaces.decomposition.LUDecomposition_F64<org.ejml.data.DMatrixRMaj>
- Direct Known Subclasses:
LUDecompositionAlt_DDRM
public abstract class LUDecompositionBase_DDRM
extends java.lang.Object
implements org.ejml.interfaces.decomposition.LUDecomposition_F64<org.ejml.data.DMatrixRMaj>
Contains common data structures and operations for LU decomposition algorithms.
-
Field Summary
-
Constructor Summary
Constructors Constructor Description LUDecompositionBase_DDRM() -
Method Summary
Modifier and Type Method Description double[]_getVV()void_solveVectorInternal(double[] vv)a specialized version of solve that avoid additional checks that are not needed.org.ejml.data.Complex_F64computeDeterminant()Computes the determinant from the LU decomposition.protected voiddecomposeCommonInit(org.ejml.data.DMatrixRMaj a)int[]getIndx()org.ejml.data.DMatrixRMajgetLower(@Nullable org.ejml.data.DMatrixRMaj lower)Writes the lower triangular matrix into the specified matrix.org.ejml.data.DMatrixRMajgetLU()int[]getPivot()org.ejml.data.DMatrixRMajgetRowPivot(@Nullable org.ejml.data.DMatrixRMaj pivot)int[]getRowPivotV(@Nullable org.ejml.data.IGrowArray pivot)org.ejml.data.DMatrixRMajgetUpper(@Nullable org.ejml.data.DMatrixRMaj upper)Writes the upper triangular matrix into the specified matrix.booleaninputModified()booleanisSingular()Determines if the decomposed matrix is singular.doublequality()voidsetExpectedMaxSize(int numRows, int numCols)
-
Field Details
-
Constructor Details
-
LUDecompositionBase_DDRM
public LUDecompositionBase_DDRM()
-
-
Method Details
-
setExpectedMaxSize
public void setExpectedMaxSize(int numRows, int numCols) -
getLU
public org.ejml.data.DMatrixRMaj getLU() -
getIndx
public int[] getIndx() -
getPivot
public int[] getPivot() -
inputModified
public boolean inputModified()- Specified by:
inputModifiedin interfaceorg.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRMaj>
-
getLower
public org.ejml.data.DMatrixRMaj getLower(@Nullable @Nullable org.ejml.data.DMatrixRMaj lower)Writes the lower triangular matrix into the specified matrix.- Specified by:
getLowerin interfaceorg.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>- Parameters:
lower- Where the lower triangular matrix is written to.
-
getUpper
public org.ejml.data.DMatrixRMaj getUpper(@Nullable @Nullable org.ejml.data.DMatrixRMaj upper)Writes the upper triangular matrix into the specified matrix.- Specified by:
getUpperin interfaceorg.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>- Parameters:
upper- Where the upper triangular matrix is writen to.
-
getRowPivot
public org.ejml.data.DMatrixRMaj getRowPivot(@Nullable @Nullable org.ejml.data.DMatrixRMaj pivot)- Specified by:
getRowPivotin interfaceorg.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>
-
getRowPivotV
public int[] getRowPivotV(@Nullable @Nullable org.ejml.data.IGrowArray pivot)- Specified by:
getRowPivotVin interfaceorg.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>
-
decomposeCommonInit
protected void decomposeCommonInit(org.ejml.data.DMatrixRMaj a) -
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 interfaceorg.ejml.interfaces.decomposition.LUDecomposition<org.ejml.data.DMatrixRMaj>- Returns:
- true if singular false otherwise.
-
computeDeterminant
public org.ejml.data.Complex_F64 computeDeterminant()Computes the determinant from the LU decomposition.- Specified by:
computeDeterminantin interfaceorg.ejml.interfaces.decomposition.LUDecomposition_F64<org.ejml.data.DMatrixRMaj>- 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()
-