Singular value decomposition of a rectangular matrix. More...
#include <SVD.H>
Public Member Functions | |
| SVD (const SVD &)=delete | |
| No copy construct. | |
| void | operator= (const SVD &)=delete |
| No copy assignment. | |
| SVD (const scalarRectangularMatrix &A, const scalar minCondition=0) | |
| Construct from a rectangular Matrix. | |
| const scalarRectangularMatrix & | U () const noexcept |
| Return U. | |
| const scalarRectangularMatrix & | V () const noexcept |
| Return the square matrix V. | |
| const scalarDiagonalMatrix & | S () const noexcept |
| Return the singular values. | |
| bool | converged () const noexcept |
| Return the minimum non-zero singular value. | |
| label | nZeros () const noexcept |
| Return the number of zero singular values. | |
| scalar | minNonZeroS () const |
| Return the minimum non-zero singular value. | |
| scalarRectangularMatrix | VSinvUt () const |
| Return the matrix product V S^(-1) U^T (the pseudo inverse). | |
Static Public Member Functions | |
| static scalarRectangularMatrix | pinv (const scalarRectangularMatrix &A, const scalar minCondition=0) |
| Return the pseudo inverse of the given matrix. | |
| static Tensor< scalar > | pinv (const Tensor< scalar > &A, const scalar minCondition=0) |
| Return the pseudo inverse of the given tensor. | |
Singular value decomposition of a rectangular matrix.
|
delete |
No copy construct.
References SVD().
Referenced by operator=(), pinv(), and SVD().


|
explicit |
|
delete |
|
inlinenoexcept |
Return U.
Definition at line 112 of file SVD.H.
References Foam::noexcept.
Referenced by chemPointISAT< CompType, ThermoType >::chemPointISAT().

|
inlinenoexcept |
Return the square matrix V.
Definition at line 117 of file SVD.H.
References Foam::noexcept.
Referenced by chemPointISAT< CompType, ThermoType >::chemPointISAT().

|
inlinenoexcept |
Return the singular values.
Definition at line 122 of file SVD.H.
References Foam::noexcept.
Referenced by CentredFitSnGradData< Polynomial >::calcFit(), and chemPointISAT< CompType, ThermoType >::chemPointISAT().

|
inlinenoexcept |
Return the minimum non-zero singular value.
Definition at line 127 of file SVD.H.
References Foam::noexcept.
|
inlinenoexcept |
Return the number of zero singular values.
Definition at line 132 of file SVD.H.
References Foam::noexcept.
| Foam::scalar minNonZeroS | ( | ) | const |
| Foam::scalarRectangularMatrix VSinvUt | ( | ) | const |
Return the matrix product V S^(-1) U^T (the pseudo inverse).
Definition at line 479 of file SVD.C.
References Foam::inv(), Foam::multiply(), and VSinvUt().
Referenced by CentredFitSnGradData< Polynomial >::calcFit(), pinv(), leastSquares::stencilWeights(), and VSinvUt().


|
static |
|
static |
Return the pseudo inverse of the given tensor.
Definition at line 501 of file SVD.C.
References A, Foam::do_multiply(), Foam::inv(), and Foam::SVDcomp().
