Class SvdImplicitQrDecompose_Ultimate
java.lang.Object
org.ejml.dense.row.decomposition.svd.SvdImplicitQrDecompose_Ultimate
- All Implemented Interfaces:
org.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRMaj>,org.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>,org.ejml.interfaces.decomposition.SingularValueDecomposition_F64<org.ejml.data.DMatrixRMaj>
public class SvdImplicitQrDecompose_Ultimate
extends Object
implements org.ejml.interfaces.decomposition.SingularValueDecomposition_F64<org.ejml.data.DMatrixRMaj>
Similar to SvdImplicitQrDecompose_DDRM but it employs the
ultimate shift strategy. Ultimate shift involves first computing singular values then uses those
to quickly compute the U and W matrices. For EVD this strategy seems to work very well, but for
this problem it needs to have little benefit and makes the code more complex.
-
Constructor Summary
ConstructorsConstructorDescriptionSvdImplicitQrDecompose_Ultimate(boolean compact, boolean computeU, boolean computeV) -
Method Summary
Modifier and TypeMethodDescriptionbooleandecompose(org.ejml.data.DMatrixRMaj orig) double[]org.ejml.data.DMatrixRMajgetU(@Nullable org.ejml.data.DMatrixRMaj U, boolean transpose) org.ejml.data.DMatrixRMajgetV(@Nullable org.ejml.data.DMatrixRMaj V, boolean transpose) org.ejml.data.DMatrixRMajgetW(@Nullable org.ejml.data.DMatrixRMaj W) booleanbooleanintintnumCols()intnumRows()
-
Constructor Details
-
SvdImplicitQrDecompose_Ultimate
public SvdImplicitQrDecompose_Ultimate(boolean compact, boolean computeU, boolean computeV)
-
-
Method Details
-
getSingularValues
public double[] getSingularValues()- Specified by:
getSingularValuesin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition_F64<org.ejml.data.DMatrixRMaj>
-
numberOfSingularValues
public int numberOfSingularValues()- Specified by:
numberOfSingularValuesin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
isCompact
public boolean isCompact()- Specified by:
isCompactin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
getU
public org.ejml.data.DMatrixRMaj getU(@Nullable @Nullable org.ejml.data.DMatrixRMaj U, boolean transpose) - Specified by:
getUin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
getV
public org.ejml.data.DMatrixRMaj getV(@Nullable @Nullable org.ejml.data.DMatrixRMaj V, boolean transpose) - Specified by:
getVin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
getW
public org.ejml.data.DMatrixRMaj getW(@Nullable @Nullable org.ejml.data.DMatrixRMaj W) - Specified by:
getWin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
decompose
public boolean decompose(org.ejml.data.DMatrixRMaj orig) - Specified by:
decomposein interfaceorg.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRMaj>
-
inputModified
public boolean inputModified()- Specified by:
inputModifiedin interfaceorg.ejml.interfaces.decomposition.DecompositionInterface<org.ejml.data.DMatrixRMaj>
-
numRows
public int numRows()- Specified by:
numRowsin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-
numCols
public int numCols()- Specified by:
numColsin interfaceorg.ejml.interfaces.decomposition.SingularValueDecomposition<org.ejml.data.DMatrixRMaj>
-