A.I.M.S algorithms


AimsSVD< T > Class Template Reference

#include <aims/math/svd.h>

Public Types

enum  SVDReturnType { MatrixOfSingularValues, VectorOfSingularValues }
 

Public Member Functions

void setReturnType (SVDReturnType rt)
 
AimsData< T > doit (AimsData< T > &, AimsData< T > *v=NULL)
 Singular Value Decomposition. More...
 
void sort (AimsData< T > &, AimsData< T > &, AimsData< T > *v=NULL)
 sort the U and V matrices and the W vector in decreasing order More...
 
AimsData< T > backwardSubstitution (const AimsData< T > &U, const AimsData< T > &W, const AimsData< T > &V, const AimsData< T > &S)
 
 AimsSVD (SVDReturnType rt=MatrixOfSingularValues)
 Constructor and destructor. More...
 
virtual ~AimsSVD ()
 destructor More...
 

Detailed Description

template<class T>
class AimsSVD< T >

Definition at line 55 of file svd.h.

Member Enumeration Documentation

template<class T>
enum AimsSVD::SVDReturnType
Enumerator
MatrixOfSingularValues 
VectorOfSingularValues 

Definition at line 59 of file svd.h.

Constructor & Destructor Documentation

template<class T>
AimsSVD< T >::AimsSVD ( SVDReturnType  rt = MatrixOfSingularValues)
inline

Constructor and destructor.

constructor

Definition at line 68 of file svd.h.

template<class T>
virtual AimsSVD< T >::~AimsSVD ( )
inlinevirtual

destructor

Definition at line 70 of file svd.h.

Member Function Documentation

template<class T>
AimsData< T > AimsSVD< T >::backwardSubstitution ( const AimsData< T > &  U,
const AimsData< T > &  W,
const AimsData< T > &  V,
const AimsData< T > &  S 
)
template<class T>
AimsData< T > AimsSVD< T >::doit ( AimsData< T > &  ,
AimsData< T > *  v = NULL 
)

Singular Value Decomposition.

\ This function is adapted from the Numerical Recipes in C. \ Returns the diagonal matrix of singular values W of the input matrix if the SVDReturnType is set to MatrixOfSingularValues or a vector of singular values if set to VectorOfSingularValues. \ The first parameter is the input matrix. On output, it is replaced by the (m*n) matrix U. \

Parameters
vis output as the (n*n) matrix V (and not its transpose!).

Referenced by AimsPCA::doIt(), aims::ProbabilisticPcaElement::doIt(), aims::PpcaAnalyserElement::newStep2(), and aims::ProbabilisticPcaElement::noiseVariance().

template<class T>
void AimsSVD< T >::setReturnType ( SVDReturnType  rt)
inline
template<class T>
void AimsSVD< T >::sort ( AimsData< T > &  ,
AimsData< T > &  ,
AimsData< T > *  v = NULL 
)

sort the U and V matrices and the W vector in decreasing order

Referenced by AimsPCA::doIt(), aims::ProbabilisticPcaElement::doIt(), aims::PpcaAnalyserElement::newStep2(), and aims::ProbabilisticPcaElement::noiseVariance().


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