public class LinearSolver_FDRB_to_FDRM
extends java.lang.Object
implements org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRMaj>
FMatrixRBlock
to implements LinearSolverDense
. It works
by converting FMatrixRMaj
into FMatrixRBlock
and calling the equivalent
functions. Since a local copy is made all input matrices are never modified.Modifier and Type | Field and Description |
---|---|
protected org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock> |
alg |
protected org.ejml.data.FMatrixRBlock |
blockA |
protected org.ejml.data.FMatrixRBlock |
blockB |
protected org.ejml.data.FMatrixRBlock |
blockX |
Constructor and Description |
---|
LinearSolver_FDRB_to_FDRM(org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock> alg) |
Modifier and Type | Method and Description |
---|---|
<D extends org.ejml.interfaces.decomposition.DecompositionInterface> |
getDecomposition() |
void |
invert(org.ejml.data.FMatrixRMaj A_inv)
Creates a block matrix the same size as A_inv, inverts the matrix and copies the results back
onto A_inv.
|
boolean |
modifiesA() |
boolean |
modifiesB() |
double |
quality() |
boolean |
setA(org.ejml.data.FMatrixRMaj A)
Converts 'A' into a block matrix and call setA() on the block matrix solver.
|
void |
solve(org.ejml.data.FMatrixRMaj B,
org.ejml.data.FMatrixRMaj X)
Converts B and X into block matrices and calls the block matrix solve routine.
|
protected org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock> alg
protected org.ejml.data.FMatrixRBlock blockA
protected org.ejml.data.FMatrixRBlock blockB
protected org.ejml.data.FMatrixRBlock blockX
public LinearSolver_FDRB_to_FDRM(org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRBlock> alg)
public boolean setA(org.ejml.data.FMatrixRMaj A)
setA
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>
A
- The A matrix in the linear equation. Not modified. Reference saved.public double quality()
quality
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>
public void solve(org.ejml.data.FMatrixRMaj B, org.ejml.data.FMatrixRMaj X)
solve
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>
B
- A matrix ℜ m × p. Not modified.X
- A matrix ℜ n × p, where the solution is written to. Modified.public void invert(org.ejml.data.FMatrixRMaj A_inv)
invert
in interface org.ejml.interfaces.linsol.LinearSolverDense<org.ejml.data.FMatrixRMaj>
A_inv
- Where the inverted matrix saved. Modified.public boolean modifiesA()
modifiesA
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>
public boolean modifiesB()
modifiesB
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>
public <D extends org.ejml.interfaces.decomposition.DecompositionInterface> D getDecomposition()
getDecomposition
in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.FMatrixRMaj,org.ejml.data.FMatrixRMaj>