SVD Class Reference

Singular value decomposition of a rectangular matrix. More...

Public Member Functions

 SVD (const scalarRectangularMatrix &A, const scalar minCondition=0)
 Construct from a rectangular Matrix. More...
 
 SVD (const SVD &)=delete
 Disallow default bitwise copy construction. More...
 
const scalarRectangularMatrixU () const
 Return U. More...
 
const scalarRectangularMatrixV () const
 Return the square matrix V. More...
 
const scalarDiagonalMatrixS () const
 Return the singular values. More...
 
bool converged () const
 Return the minimum non-zero singular value. More...
 
label nZeros () const
 Return the number of zero singular values. More...
 
scalar minNonZeroS () const
 Return the minimum non-zero singular value. More...
 
scalarRectangularMatrix VSinvUt () const
 Return the matrix product V S^(-1) U^T (the pseudo inverse) More...
 
void operator= (const SVD &)=delete
 Disallow default bitwise assignment. More...
 

Detailed Description

Singular value decomposition of a rectangular matrix.

Source files

Definition at line 51 of file SVD.H.

Constructor & Destructor Documentation

◆ SVD() [1/2]

SVD ( const scalarRectangularMatrix A,
const scalar  minCondition = 0 
)

Construct from a rectangular Matrix.

Definition at line 33 of file SVD.C.

References Foam::constant::universal::c, f(), Foam::findMax(), forAll, g, Foam::constant::universal::h, k, Matrix< Form, Type >::m(), Foam::mag(), Foam::max(), Foam::min(), Matrix< Form, Type >::n(), s(), Foam::sqrt(), Foam::sqrtSumSqr(), x, and y.

Here is the call graph for this function:

◆ SVD() [2/2]

SVD ( const SVD )
delete

Disallow default bitwise copy construction.

Member Function Documentation

◆ U()

const Foam::scalarRectangularMatrix & U ( ) const
inline

Return U.

Definition at line 38 of file SVDI.H.

Referenced by chemPointISAT< ThermoType >::chemPointISAT().

Here is the caller graph for this function:

◆ V()

const Foam::scalarRectangularMatrix & V ( ) const
inline

Return the square matrix V.

Definition at line 44 of file SVDI.H.

Referenced by chemPointISAT< ThermoType >::chemPointISAT().

Here is the caller graph for this function:

◆ S()

const Foam::scalarDiagonalMatrix & S ( ) const
inline

Return the singular values.

Definition at line 50 of file SVDI.H.

Referenced by CentredFitSnGradData< Polynomial >::calcFit(), and chemPointISAT< ThermoType >::chemPointISAT().

Here is the caller graph for this function:

◆ converged()

bool converged ( ) const
inline

Return the minimum non-zero singular value.

Definition at line 56 of file SVDI.H.

◆ nZeros()

Foam::label nZeros ( ) const
inline

Return the number of zero singular values.

Definition at line 62 of file SVDI.H.

◆ minNonZeroS()

Foam::scalar minNonZeroS ( ) const
inline

Return the minimum non-zero singular value.

Definition at line 68 of file SVDI.H.

References s(), and List< T >::size().

Here is the call graph for this function:

◆ VSinvUt()

Foam::scalarRectangularMatrix VSinvUt ( ) const

Return the matrix product V S^(-1) U^T (the pseudo inverse)

Definition at line 385 of file SVD.C.

References Foam::inv(), Foam::multiply(), and Matrix< Form, Type >::T().

Referenced by CentredFitSnGradData< Polynomial >::calcFit(), FitData< CentredFitSnGradData< Polynomial >, extendedCentredCellToFaceStencil, Polynomial >::calcFit(), and Foam::SVDinv().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void operator= ( const SVD )
delete

Disallow default bitwise assignment.


The documentation for this class was generated from the following files: