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 scalarRectangularMatrix & U () const
 Return U. More...
 
const scalarRectangularMatrix & V () const
 Return the square matrix V. More...
 
const scalarDiagonalMatrix & S () 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: