Interface DecompositionInterface<T extends Matrix>
- All Known Subinterfaces:
BidiagonalDecomposition<T>
,BidiagonalDecomposition_F32<T>
,BidiagonalDecomposition_F64<T>
,CholeskyDecomposition<MatrixType>
,CholeskyDecomposition_F32<MatrixType>
,CholeskyDecomposition_F64<MatrixType>
,CholeskyLDLDecomposition<MatrixType>
,CholeskyLDLDecomposition_F32<MatrixType>
,CholeskyLDLDecomposition_F64<MatrixType>
,CholeskySparseDecomposition<MatrixType>
,CholeskySparseDecomposition_F32<MatrixType>
,CholeskySparseDecomposition_F64<MatrixType>
,DecompositionSparseInterface<T>
,EigenDecomposition<T>
,EigenDecomposition_F32<MatrixType>
,EigenDecomposition_F64<MatrixType>
,LUDecomposition<T>
,LUDecomposition_F32<T>
,LUDecomposition_F64<T>
,LUSparseDecomposition<MatrixType>
,LUSparseDecomposition_F32<T>
,LUSparseDecomposition_F64<T>
,QRDecomposition<T>
,QRPDecomposition<T>
,QRPDecomposition_F32<T>
,QRPDecomposition_F64<T>
,QrpSparseDecomposition<T>
,QRSparseDecomposition<T>
,SingularValueDecomposition<T>
,SingularValueDecomposition_F32<T>
,SingularValueDecomposition_F64<T>
,TridiagonalSimilarDecomposition<MatrixType>
,TridiagonalSimilarDecomposition_F32<MatrixType>
,TridiagonalSimilarDecomposition_F64<MatrixType>
- All Known Implementing Classes:
BaseDecomposition_DDRB_to_DDRM
,BaseDecomposition_FDRB_to_FDRM
,BidiagonalDecompositionRow_DDRM
,BidiagonalDecompositionRow_FDRM
,BidiagonalDecompositionRow_MT_DDRM
,BidiagonalDecompositionRow_MT_FDRM
,BidiagonalDecompositionTall_DDRM
,BidiagonalDecompositionTall_FDRM
,BidiagonalDecompositionTall_MT_DDRM
,BidiagonalDecompositionTall_MT_FDRM
,CholeskyDecomposition_DDRB_to_DDRM
,CholeskyDecomposition_FDRB_to_FDRM
,CholeskyDecompositionBlock_DDRM
,CholeskyDecompositionBlock_FDRM
,CholeskyDecompositionBlock_MT_DDRM
,CholeskyDecompositionBlock_MT_FDRM
,CholeskyDecompositionCommon_CDRM
,CholeskyDecompositionCommon_DDRM
,CholeskyDecompositionCommon_FDRM
,CholeskyDecompositionCommon_ZDRM
,CholeskyDecompositionInner_CDRM
,CholeskyDecompositionInner_DDRM
,CholeskyDecompositionInner_FDRM
,CholeskyDecompositionInner_ZDRM
,CholeskyDecompositionLDL_DDRM
,CholeskyDecompositionLDL_FDRM
,CholeskyOuterForm_DDRB
,CholeskyOuterForm_FDRB
,CholeskyOuterForm_MT_DDRB
,CholeskyOuterForm_MT_FDRB
,CholeskyUpLooking_DSCC
,CholeskyUpLooking_FSCC
,HessenbergSimilarDecomposition_CDRM
,HessenbergSimilarDecomposition_DDRM
,HessenbergSimilarDecomposition_FDRM
,HessenbergSimilarDecomposition_MT_DDRM
,HessenbergSimilarDecomposition_MT_FDRM
,HessenbergSimilarDecomposition_ZDRM
,LUDecompositionAlt_CDRM
,LUDecompositionAlt_DDRM
,LUDecompositionAlt_FDRM
,LUDecompositionAlt_ZDRM
,LUDecompositionBase_CDRM
,LUDecompositionBase_DDRM
,LUDecompositionBase_FDRM
,LUDecompositionBase_ZDRM
,LuUpLooking_DSCC
,LuUpLooking_FSCC
,QRColPivDecompositionHouseholderColumn_DDRM
,QRColPivDecompositionHouseholderColumn_FDRM
,QRDecomposition_DDRB_to_DDRM
,QRDecomposition_FDRB_to_FDRM
,QRDecompositionHouseholder_CDRM
,QRDecompositionHouseholder_DDRB
,QRDecompositionHouseholder_DDRM
,QRDecompositionHouseholder_FDRB
,QRDecompositionHouseholder_FDRM
,QRDecompositionHouseholder_MT_DDRB
,QRDecompositionHouseholder_MT_FDRB
,QRDecompositionHouseholder_ZDRM
,QRDecompositionHouseholderColumn_CDRM
,QRDecompositionHouseholderColumn_DDRM
,QRDecompositionHouseholderColumn_FDRM
,QRDecompositionHouseholderColumn_MT_DDRM
,QRDecompositionHouseholderColumn_MT_FDRM
,QRDecompositionHouseholderColumn_ZDRM
,QRDecompositionHouseholderTran_CDRM
,QRDecompositionHouseholderTran_DDRM
,QRDecompositionHouseholderTran_FDRM
,QRDecompositionHouseholderTran_ZDRM
,QrLeftLookingDecomposition_DSCC
,QrLeftLookingDecomposition_FSCC
,SafeSvd_DDRM
,SafeSvd_FDRM
,SvdImplicitQrDecompose_DDRM
,SvdImplicitQrDecompose_FDRM
,SvdImplicitQrDecompose_MT_DDRM
,SvdImplicitQrDecompose_MT_FDRM
,SwitchingEigenDecomposition_DDRM
,SwitchingEigenDecomposition_FDRM
,SymmetricQRAlgorithmDecomposition_DDRM
,SymmetricQRAlgorithmDecomposition_FDRM
,TridiagonalDecomposition_DDRB_to_DDRM
,TridiagonalDecomposition_FDRB_to_FDRM
,TridiagonalDecompositionHouseholder_CDRM
,TridiagonalDecompositionHouseholder_DDRB
,TridiagonalDecompositionHouseholder_DDRM
,TridiagonalDecompositionHouseholder_FDRB
,TridiagonalDecompositionHouseholder_FDRM
,TridiagonalDecompositionHouseholder_MT_DDRB
,TridiagonalDecompositionHouseholder_MT_DDRM
,TridiagonalDecompositionHouseholder_MT_FDRB
,TridiagonalDecompositionHouseholder_MT_FDRM
,TridiagonalDecompositionHouseholder_ZDRM
,WatchedDoubleStepQRDecomposition_DDRM
,WatchedDoubleStepQRDecomposition_FDRM
public interface DecompositionInterface<T extends Matrix>
An interface for performing matrix decompositions.
A matrix decomposition is an algorithm which decomposes the input matrix into a set of equivalent matrices that store the same information as the original. Decompositions are useful in that they allow specialized efficient algorithms to be run on generic input matrices.
By default most decompositions will modify the input matrix. This is done to save memory and simply code by reducing the number of cases which need to be tested.
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Computes the decomposition of the input matrix.boolean
Checks if the input matrix todecompose(org.ejml.data.Matrix)
is modified during the decomposition process.
-
Method Details
-
decompose
Computes the decomposition of the input matrix. Depending on the implementation the input matrix might be stored internally or modified. If it is modified then the functioninputModified()
will return true and the matrix should not be modified until the decomposition is no longer needed.- Parameters:
orig
- The matrix which is being decomposed. Modification is implementation dependent.- Returns:
- Returns if it was able to decompose the matrix.
-
inputModified
boolean inputModified()Checks if the input matrix todecompose(org.ejml.data.Matrix)
is modified during the decomposition process.- Returns:
- true if the input matrix to decompose() is modified.
-