public class BidiagonalDecompositionRow_D64
extends java.lang.Object
implements org.ejml.interfaces.decomposition.BidiagonalDecomposition<org.ejml.data.DenseMatrix64F>
Performs a BidiagonalDecomposition using
householder reflectors. This is efficient on wide or square matrices.
| Constructor and Description |
|---|
BidiagonalDecompositionRow_D64() |
BidiagonalDecompositionRow_D64(int numElements)
Creates a decompose that defines the specified amount of memory.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
computeU(int k) |
protected void |
computeV(int k) |
boolean |
decompose(org.ejml.data.DenseMatrix64F A)
Computes the decomposition of the provided matrix.
|
org.ejml.data.DenseMatrix64F |
getB(org.ejml.data.DenseMatrix64F B,
boolean compact)
Returns the bidiagonal matrix.
|
void |
getDiagonal(double[] diag,
double[] off) |
double[] |
getGammasU()
Returns gammas from the householder operations for the U matrix.
|
double[] |
getGammasV()
Returns gammas from the householder operations for the V matrix.
|
org.ejml.data.DenseMatrix64F |
getU(org.ejml.data.DenseMatrix64F U,
boolean transpose,
boolean compact)
Returns the orthogonal U matrix.
|
org.ejml.data.DenseMatrix64F |
getUBV()
The raw UBV matrix that is stored internally.
|
org.ejml.data.DenseMatrix64F |
getV(org.ejml.data.DenseMatrix64F V,
boolean transpose,
boolean compact)
Returns the orthogonal V matrix.
|
static org.ejml.data.DenseMatrix64F |
handleB(org.ejml.data.DenseMatrix64F B,
boolean compact,
int m,
int n,
int min) |
static org.ejml.data.DenseMatrix64F |
handleU(org.ejml.data.DenseMatrix64F U,
boolean transpose,
boolean compact,
int m,
int n,
int min) |
static org.ejml.data.DenseMatrix64F |
handleV(org.ejml.data.DenseMatrix64F V,
boolean transpose,
boolean compact,
int m,
int n,
int min) |
protected void |
init(org.ejml.data.DenseMatrix64F A)
Sets up internal data structures and creates a copy of the input matrix.
|
boolean |
inputModified() |
public BidiagonalDecompositionRow_D64(int numElements)
numElements - number of elements in the matrix.public BidiagonalDecompositionRow_D64()
public boolean decompose(org.ejml.data.DenseMatrix64F A)
decompose in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DenseMatrix64F>A - The matrix that is being decomposed. Not modified.protected void init(org.ejml.data.DenseMatrix64F A)
A - The input matrix. Not modified.public org.ejml.data.DenseMatrix64F getUBV()
public void getDiagonal(double[] diag,
double[] off)
getDiagonal in interface org.ejml.interfaces.decomposition.BidiagonalDecomposition<org.ejml.data.DenseMatrix64F>public org.ejml.data.DenseMatrix64F getB(org.ejml.data.DenseMatrix64F B,
boolean compact)
getB in interface org.ejml.interfaces.decomposition.BidiagonalDecomposition<org.ejml.data.DenseMatrix64F>B - If not null the results are stored here, if null a new matrix is created.public static org.ejml.data.DenseMatrix64F handleB(org.ejml.data.DenseMatrix64F B,
boolean compact,
int m,
int n,
int min)
public org.ejml.data.DenseMatrix64F getU(org.ejml.data.DenseMatrix64F U,
boolean transpose,
boolean compact)
getU in interface org.ejml.interfaces.decomposition.BidiagonalDecomposition<org.ejml.data.DenseMatrix64F>U - If not null then the results will be stored here. Otherwise a new matrix will be created.public static org.ejml.data.DenseMatrix64F handleU(org.ejml.data.DenseMatrix64F U,
boolean transpose,
boolean compact,
int m,
int n,
int min)
public org.ejml.data.DenseMatrix64F getV(org.ejml.data.DenseMatrix64F V,
boolean transpose,
boolean compact)
getV in interface org.ejml.interfaces.decomposition.BidiagonalDecomposition<org.ejml.data.DenseMatrix64F>V - If not null then the results will be stored here. Otherwise a new matrix will be created.public static org.ejml.data.DenseMatrix64F handleV(org.ejml.data.DenseMatrix64F V,
boolean transpose,
boolean compact,
int m,
int n,
int min)
protected void computeU(int k)
protected void computeV(int k)
public double[] getGammasU()
public double[] getGammasV()
public boolean inputModified()
inputModified in interface org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DenseMatrix64F>