Package org.ejml.dense.row.linsol.lu
Class LinearSolverLuKJI_DDRM
java.lang.Object
org.ejml.dense.row.linsol.LinearSolverAbstract_DDRM
org.ejml.dense.row.linsol.lu.LinearSolverLuBase_DDRM
org.ejml.dense.row.linsol.lu.LinearSolverLuKJI_DDRM
 All Implemented Interfaces:
LinearSolver<DMatrixRMaj,
,DMatrixRMaj> LinearSolverDense<DMatrixRMaj>
To avoid cpu cache issues the order in which the arrays are traversed have been changed.
There seems to be no performance benit relative to
LinearSolverLu_DDRM
in this approach
and b and x can't be the same instance, which means it has slightly less functionality.
Field Summary
Fields inherited from class org.ejml.dense.row.linsol.lu.LinearSolverLuBase_DDRM
decomp
Fields inherited from class org.ejml.dense.row.linsol.LinearSolverAbstract_DDRM
A, numCols, numRows

Constructor Summary

Method Summary
Modifier and TypeMethodDescriptionboolean
setA
(DMatrixRMaj A) Specifies the A matrix in the linear equation.void
solve
(DMatrixRMaj B, DMatrixRMaj X) An other implementation of solve() that processes the matrices in a different order.Methods inherited from class org.ejml.dense.row.linsol.lu.LinearSolverLuBase_DDRM
getDecomposition, improveSol, invert, modifiesA, modifiesB, quality
Methods inherited from class org.ejml.dense.row.linsol.LinearSolverAbstract_DDRM
_setA, getA

Constructor Details

LinearSolverLuKJI_DDRM


Method Details

setA
Description copied from interface:LinearSolver
Specifies the A matrix in the linear equation. A reference might be saved and it might also be modified depending on the implementation. If it is modified then
LinearSolver.modifiesA()
will return true.If this value returns true that does not guarantee a valid solution was generated. This is because some decompositions don't detect singular matrices.
 Specified by:
setA
in interfaceLinearSolver<DMatrixRMaj,
DMatrixRMaj>  Overrides:
setA
in classLinearSolverLuBase_DDRM
 Parameters:
A
 The 'A' matrix in the linear equation. Might be modified or save the reference. Returns:
 true if it can be processed.

solve
An other implementation of solve() that processes the matrices in a different order. It seems to have the same runtime performance assolve(org.ejml.data.DMatrixRMaj, org.ejml.data.DMatrixRMaj)
and is more complicated. It is being kept around to avoid future replication of work. Parameters:
B
 A matrix that is n by m. Not modified.X
 An n by m matrix where the solution is writen to. Modified.
