Class CholeskyOuterSolver_FDRB

java.lang.Object
org.ejml.dense.block.linsol.chol.CholeskyOuterSolver_FDRB
All Implemented Interfaces:
org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>, org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock>

@Generated("org.ejml.dense.block.linsol.chol.CholeskyOuterSolver_DDRB") public class CholeskyOuterSolver_FDRB extends Object implements org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock>

Linear solver that uses a block cholesky decomposition.

Solver works by using the standard Cholesky solving strategy:
A=L*LT
A*x=b
L*LT*x = b
L*y = b
LT*x = y
x = L-Ty

It is also possible to use the upper triangular cholesky decomposition.

  • Constructor Details

    • CholeskyOuterSolver_FDRB

      public CholeskyOuterSolver_FDRB()
  • Method Details

    • setA

      public boolean setA(org.ejml.data.FMatrixRBlock A)
      Decomposes and overwrites the input matrix.
      Specified by:
      setA in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>
      Parameters:
      A - Semi-Positive Definite (SPD) system matrix. Modified. Reference saved.
      Returns:
      If the matrix can be decomposed. Will always return false of not SPD.
    • quality

      public double quality()
      Specified by:
      quality in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>
    • solve

      public void solve(org.ejml.data.FMatrixRBlock B, @Nullable @Nullable org.ejml.data.FMatrixRBlock X)
      If X == null then the solution is written into B. Otherwise the solution is copied from B into X.
      Specified by:
      solve in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>
    • invert

      public void invert(org.ejml.data.FMatrixRBlock A_inv)
      Specified by:
      invert in interface org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock>
    • modifiesA

      public boolean modifiesA()
      Specified by:
      modifiesA in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>
    • modifiesB

      public boolean modifiesB()
      Specified by:
      modifiesB in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>
    • getDecomposition

      public org.ejml.interfaces.decomposition.CholeskyDecomposition_F32<org.ejml.data.FMatrixRBlock> getDecomposition()
      Specified by:
      getDecomposition in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRBlock,org.ejml.data.FMatrixRBlock>