public class BlockQrHouseHolderSolver
extends java.lang.Object
implements org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>
A solver for QRDecompositionHouseholder_B64. Systems are solved for using the standard
QR decomposition method, sketched below.
A = Q*R
A*x = b
Q*R*x = b
R*x = y = QTb
x = R-1y
Where A is the m by n matrix being decomposed. Q is an orthogonal matrix. R is upper triangular matrix.
| Modifier and Type | Field and Description |
|---|---|
protected QRDecompositionHouseholder_B64 |
decomposer |
protected org.ejml.data.BlockMatrix64F |
QR |
| Constructor and Description |
|---|
BlockQrHouseHolderSolver() |
| Modifier and Type | Method and Description |
|---|---|
org.ejml.interfaces.decomposition.QRDecomposition<org.ejml.data.BlockMatrix64F> |
getDecomposition() |
void |
invert(org.ejml.data.BlockMatrix64F A_inv)
Invert by solving for against an identity matrix.
|
boolean |
modifiesA() |
boolean |
modifiesB() |
double |
quality()
Computes the quality using diagonal elements the triangular R matrix in the QR decomposition.
|
boolean |
setA(org.ejml.data.BlockMatrix64F A)
Computes the QR decomposition of A and store the results in A.
|
void |
solve(org.ejml.data.BlockMatrix64F B,
org.ejml.data.BlockMatrix64F X) |
protected QRDecompositionHouseholder_B64 decomposer
protected org.ejml.data.BlockMatrix64F QR
public boolean setA(org.ejml.data.BlockMatrix64F A)
setA in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>A - The A matrix in the linear equation. Modified. Reference saved.public double quality()
quality in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>public void solve(org.ejml.data.BlockMatrix64F B,
org.ejml.data.BlockMatrix64F X)
solve in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>public void invert(org.ejml.data.BlockMatrix64F A_inv)
invert in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>A_inv - Where the inverted matrix saved. Modified.public boolean modifiesA()
modifiesA in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>public boolean modifiesB()
modifiesB in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>public org.ejml.interfaces.decomposition.QRDecomposition<org.ejml.data.BlockMatrix64F> getDecomposition()
getDecomposition in interface org.ejml.interfaces.linsol.LinearSolver<org.ejml.data.BlockMatrix64F>