Class LinearSolverLuKJI_DDRM

java.lang.Object
All Implemented Interfaces:
org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.DMatrixRMaj,​org.ejml.data.DMatrixRMaj>, org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.DMatrixRMaj>

public class LinearSolverLuKJI_DDRM
extends LinearSolverLuBase_DDRM
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.
  • Constructor Details

  • Method Details

    • setA

      public boolean setA​(org.ejml.data.DMatrixRMaj A)
      Specified by:
      setA in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.DMatrixRMaj,​org.ejml.data.DMatrixRMaj>
      Overrides:
      setA in class LinearSolverLuBase_DDRM
    • solve

      public void solve​(org.ejml.data.DMatrixRMaj B, org.ejml.data.DMatrixRMaj X)
      An other implementation of solve() that processes the matrices in a different order. It seems to have the same runtime performance as solve(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.