LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::unifiedSVD< T >::parameters Class Reference

the parameters for the class unifiedSVD More...

#include <ltiUnifiedSVD.h>

Inheritance diagram for lti::unifiedSVD< T >::parameters:
Inheritance graph
[legend]
Collaboration diagram for lti::unifiedSVD< T >::parameters:
Collaboration graph
[legend]

List of all members.

Public Types

enum  eSVDType { SVD, FastSVD = 10 }

Public Member Functions

 parameters ()
 parameters (const parameters &other)
 ~parameters ()
const char * getTypeName () const
parameterscopy (const parameters &other)
parametersoperator= (const parameters &other)
virtual functor::parametersclone () const
virtual bool write (ioHandler &handler, const bool complete=true) const
virtual bool read (ioHandler &handler, const bool complete=true)

Public Attributes

bool sort
bool transposeU
bool transposeV
bool useDC
bool useMinDimensions
eSVDType svdType

Detailed Description

template<class T>
class lti::unifiedSVD< T >::parameters

the parameters for the class unifiedSVD


Member Enumeration Documentation

template<class T >
enum lti::unifiedSVD::parameters::eSVDType

The SVD method to use.

Note that functors starting with Fast___ are only available if LAPACK is used. The default is set according to your installation.

Enumerator:
SVD 

use singularValueDecomp

FastSVD 

use fastSVD


Constructor & Destructor Documentation

template<class T >
lti::unifiedSVD< T >::parameters::parameters ( void   )  [inline]
template<class T >
lti::unifiedSVD< T >::parameters::parameters ( const parameters other  )  [inline]

copy constructor

Parameters:
other the parameters object to be copied

Reimplemented from lti::linearAlgebraFunctor::parameters.

References lti::unifiedSVD< T >::parameters::copy().

template<class T >
lti::unifiedSVD< T >::parameters::~parameters (  )  [inline, virtual]

destructor

Reimplemented from lti::linearAlgebraFunctor::parameters.


Member Function Documentation

template<class T >
virtual functor::parameters* lti::unifiedSVD< T >::parameters::clone (  )  const [inline, virtual]

returns a pointer to a clone of the parameters

Reimplemented from lti::linearAlgebraFunctor::parameters.

References lti::unifiedSVD< T >::parameters::parameters().

template<class T >
parameters& lti::unifiedSVD< T >::parameters::copy ( const parameters other  )  [inline]
template<class T >
const char* lti::unifiedSVD< T >::parameters::getTypeName ( void   )  const [inline, virtual]

returns name of this type

Reimplemented from lti::linearAlgebraFunctor::parameters.

template<class T >
parameters& lti::unifiedSVD< T >::parameters::operator= ( const parameters other  )  [inline]

copy the contents of a parameters object

Parameters:
other the parameters object to be copied
Returns:
a reference to this parameters object

References lti::unifiedSVD< T >::parameters::copy().

template<class T >
virtual bool lti::unifiedSVD< T >::parameters::read ( ioHandler handler,
const bool  complete = true 
) [inline, virtual]

read the parameters from the given ioHandler

Parameters:
handler the ioHandler to be used
complete if true (the default) the enclosing begin/end will be also written, otherwise only the data block will be written.
Returns:
true if read was successful

Reimplemented from lti::linearAlgebraFunctor::parameters.

References lti::unifiedSVD< T >::parameters::FastSVD, lti::ioHandler::readBegin(), lti::ioHandler::readEnd(), lti::unifiedSVD< T >::parameters::SVD, lti::unifiedSVD< T >::parameters::svdType, lti::unifiedSVD< T >::parameters::transposeU, lti::unifiedSVD< T >::parameters::transposeV, lti::unifiedSVD< T >::parameters::useDC, and lti::unifiedSVD< T >::parameters::useMinDimensions.

template<class T >
virtual bool lti::unifiedSVD< T >::parameters::write ( ioHandler handler,
const bool  complete = true 
) const [inline, virtual]

write the parameters in the given ioHandler

Parameters:
handler the ioHandler to be used
complete if true (the default) the enclosing begin/end will be also written, otherwise only the data block will be written.
Returns:
true if write was successful

Reimplemented from lti::linearAlgebraFunctor::parameters.

References lti::unifiedSVD< T >::parameters::FastSVD, lti::unifiedSVD< T >::parameters::SVD, lti::unifiedSVD< T >::parameters::svdType, lti::unifiedSVD< T >::parameters::transposeU, lti::unifiedSVD< T >::parameters::transposeV, lti::unifiedSVD< T >::parameters::useDC, lti::unifiedSVD< T >::parameters::useMinDimensions, lti::ioHandler::writeBegin(), and lti::ioHandler::writeEnd().


Member Data Documentation

template<class T >
bool lti::unifiedSVD< T >::parameters::sort

If true the eigenvalues and eigenvectors are sorted in descending order.

Default true.

See singularValueDecomp<T>::parameters::sort.

template<class T >
eSVDType lti::unifiedSVD< T >::parameters::svdType

The SVD type given is used.

Note that you cannot use fastSVD if LAPACK is not installed. The default is dependent on the the system configuration: If LAPACK is available, fastSVD is used, otherwise singularValueDecomp.

Referenced by lti::unifiedSVD< T >::parameters::copy(), lti::unifiedSVD< T >::parameters::parameters(), lti::unifiedSVD< T >::parameters::read(), and lti::unifiedSVD< T >::parameters::write().

template<class T >
bool lti::unifiedSVD< T >::parameters::transposeU
template<class T >
bool lti::unifiedSVD< T >::parameters::transposeV
template<class T >
bool lti::unifiedSVD< T >::parameters::useDC

This parameters is used only if svdType=FastSVD.

It determines whether the divide and conquer strategy is used or not. Default true.

See fastSVD<T>::parameters::useDC

Referenced by lti::unifiedSVD< T >::parameters::copy(), lti::unifiedSVD< T >::parameters::parameters(), lti::unifiedSVD< T >::parameters::read(), and lti::unifiedSVD< T >::parameters::write().

template<class T >
bool lti::unifiedSVD< T >::parameters::useMinDimensions

This parameters is used only if svdType=FastSVD.

If true only min(rows,columns) of the data matrix singular vectors are calculated.

Default value: true.

See fastSVD<T>::parameters::useMinDimensions

Referenced by lti::unifiedSVD< T >::parameters::copy(), lti::unifiedSVD< T >::parameters::parameters(), lti::unifiedSVD< T >::parameters::read(), and lti::unifiedSVD< T >::parameters::write().


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

Generated on Sat Apr 10 15:28:50 2010 for LTI-Lib by Doxygen 1.6.1