TooN
|
version of SVD forced to be square princiapally here to allow use in WLS More...
#include <SVD.h>
Public Member Functions | |
Constructors | |
All constructors are forwarded to SVD in a straightforward manner. | |
SQSVD () | |
SQSVD (int size) | |
template<int R2, int C2, typename P2 , typename B2 > | |
SQSVD (const Matrix< R2, C2, P2, B2 > &m) | |
![]() | |
SVD () | |
default constructor for Rows>0 and Cols>0 | |
SVD (int rows, int cols) | |
constructor for Rows=-1 or Cols=-1 (or both) | |
SVD (const Matrix< R2, C2, P2, B2 > &m) | |
Construct the SVD decomposition of a matrix. More... | |
void | compute (const Matrix< R2, C2, P2, B2 > &m) |
Compute the SVD decomposition of M, typically used after the default constructor. | |
Matrix< Cols, Cols2, typename Internal::MultiplyType< Precision, P2 >::type > | backsub (const Matrix< Rows2, Cols2, P2, B2 > &rhs, const Precision condition=condition_no) |
Calculate result of multiplying the (pseudo-)inverse of M by another matrix. More... | |
Vector< Cols, typename Internal::MultiplyType< Precision, P2 >::type > | backsub (const Vector< Size, P2, B2 > &rhs, const Precision condition=condition_no) |
Calculate result of multiplying the (pseudo-)inverse of M by a vector. More... | |
Matrix< Cols, Rows > | get_pinv (const Precision condition=condition_no) |
Calculate (pseudo-)inverse of the matrix. More... | |
Precision | determinant () |
Calculate the product of the singular values for square matrices this is the determinant. | |
int | rank (const Precision condition=condition_no) |
Calculate the rank of the matrix. More... | |
Matrix< Rows, Min_Dim, Precision, Reference::RowMajor > | get_U () |
Return the U matrix from the decomposition The size of this depends on the shape of the original matrix it is square if the original matrix is wide or tall if the original matrix is tall. | |
Vector< Min_Dim, Precision > & | get_diagonal () |
Return the singular values as a vector. | |
Matrix< Min_Dim, Cols, Precision, Reference::RowMajor > | get_VT () |
Return the VT matrix from the decomposition The size of this depends on the shape of the original matrix it is square if the original matrix is tall or wide if the original matrix is wide. | |
void | get_inv_diag (Vector< Min_Dim > &inv_diag, const Precision condition) |
Return the pesudo-inverse diagonal. More... | |
version of SVD forced to be square princiapally here to allow use in WLS