Interface SVDecompositionResult
-
- All Superinterfaces:
DecompositionResult
- All Known Implementing Classes:
SVDecompositionCommonsResult
public interface SVDecompositionResult extends DecompositionResult
Contains the results of SV matrix decomposition.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description double
getConditionNumber()
Returns the condition number of the matrix.double
getNorm()
Returns the $L_2$ norm of the matrix.int
getRank()
Returns the effective numerical matrix rank.DoubleMatrix
getS()
Returns the diagonal matrix $\mathbf{\Sigma}$ of the decomposition.double[]
getSingularValues()
Returns the diagonal elements of the matrix $\mathbf{\Sigma}$ of the decomposition.DoubleMatrix
getU()
Returns the matrix $\mathbf{U}$ of the decomposition.DoubleMatrix
getUT()
Returns the transpose of the matrix $\mathbf{U}$ of the decomposition.DoubleMatrix
getV()
Returns the matrix $\mathbf{V}$ of the decomposition.DoubleMatrix
getVT()
Returns the transpose of the matrix $\mathbf{V}$ of the decomposition.-
Methods inherited from interface com.opengamma.strata.math.linearalgebra.DecompositionResult
solve, solve, solve
-
-
-
-
Method Detail
-
getU
DoubleMatrix getU()
Returns the matrix $\mathbf{U}$ of the decomposition.$\mathbf{U}$ is an orthogonal matrix, i.e. its transpose is also its inverse.
- Returns:
- the $\mathbf{U}$ matrix
-
getUT
DoubleMatrix getUT()
Returns the transpose of the matrix $\mathbf{U}$ of the decomposition.$\mathbf{U}$ is an orthogonal matrix, i.e. its transpose is also its inverse.
- Returns:
- the U matrix (or null if decomposed matrix is singular)
-
getS
DoubleMatrix getS()
Returns the diagonal matrix $\mathbf{\Sigma}$ of the decomposition.$\mathbf{\Sigma}$ is a diagonal matrix. The singular values are provided in non-increasing order.
- Returns:
- the $\mathbf{\Sigma}$ matrix
-
getSingularValues
double[] getSingularValues()
Returns the diagonal elements of the matrix $\mathbf{\Sigma}$ of the decomposition.The singular values are provided in non-increasing order.
- Returns:
- the diagonal elements of the $\mathbf{\Sigma}$ matrix
-
getV
DoubleMatrix getV()
Returns the matrix $\mathbf{V}$ of the decomposition.$\mathbf{V}$ is an orthogonal matrix, i.e. its transpose is also its inverse.
- Returns:
- the $\mathbf{V}$ matrix
-
getVT
DoubleMatrix getVT()
Returns the transpose of the matrix $\mathbf{V}$ of the decomposition.$\mathbf{V}$ is an orthogonal matrix, i.e. its transpose is also its inverse.
- Returns:
- the $\mathbf{V}$ matrix
-
getNorm
double getNorm()
Returns the $L_2$ norm of the matrix.The $L_2$ norm is $\max\left(\frac{|\mathbf{A} \times U|_2}{|U|_2}\right)$, where $|.|_2$ denotes the vectorial 2-norm (i.e. the traditional Euclidian norm).
- Returns:
- norm
-
getConditionNumber
double getConditionNumber()
Returns the condition number of the matrix.- Returns:
- condition number of the matrix
-
getRank
int getRank()
Returns the effective numerical matrix rank.The effective numerical rank is the number of non-negligible singular values. The threshold used to identify non-negligible terms is $\max(m, n) \times \mathrm{ulp}(S_1)$, where $\mathrm{ulp}(S_1)$ is the least significant bit of the largest singular value.
- Returns:
- effective numerical matrix rank
-
-