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

lti::multivariateGaussian Class Reference

this class generates either one point from a given covarianceMatrix and centre or it generates a given number of points according to these parameters. More...

#include <ltiMultivariateGaussian.h>

Inheritance diagram for lti::multivariateGaussian:
Inheritance graph
[legend]
Collaboration diagram for lti::multivariateGaussian:
Collaboration graph
[legend]

List of all members.

Classes

class  parameters
 the parameters for the class multivariateGaussian More...

Public Member Functions

 multivariateGaussian ()
 multivariateGaussian (const multivariateGaussian &other)
virtual ~multivariateGaussian ()
virtual const char * getTypeName () const
bool apply (const dvector &mean, const dmatrix &covarianceMatrix, dvector &dest) const
bool apply (const dvector &mean, const dmatrix &covarianceMatrix, const int &number, dmatrix &dest) const
bool apply (std::list< dvector > &mean, std::list< dmatrix > &covarianceMatrix, std::list< int > &numbers, std::list< dmatrix > &dest) const
bool apply (std::list< dvector > &mean, std::list< dmatrix > &covarianceMatrix, std::list< int > &numbers, dmatrix &dest) const
double draw () const
dmatrix draw (const int &number) const
multivariateGaussiancopy (const multivariateGaussian &other)
multivariateGaussianoperator= (const multivariateGaussian &other)
virtual functorclone () const
const parametersgetParameters () const

Protected Attributes

gaussianDistributiongaussFunc
jacobi< double > * eigenFunc
luDecomposition< double > * detFunc

Detailed Description

this class generates either one point from a given covarianceMatrix and centre or it generates a given number of points according to these parameters.

The points are drawn from a gaussian distribution

The apply methods expect the parameters directly, the parameters for the draw method must be set in the parameter class

Only draw(const int& number) is implemented. draw() is only reimplemented to make sure that the function of the parent class isn't used. This function return always 0. To draw only one point use draw(const int& number) with number=1


Constructor & Destructor Documentation

lti::multivariateGaussian::multivariateGaussian (  ) 

default constructor

lti::multivariateGaussian::multivariateGaussian ( const multivariateGaussian other  ) 

copy constructor

Parameters:
other the object to be copied
virtual lti::multivariateGaussian::~multivariateGaussian (  )  [virtual]

destructor


Member Function Documentation

bool lti::multivariateGaussian::apply ( std::list< dvector > &  mean,
std::list< dmatrix > &  covarianceMatrix,
std::list< int > &  numbers,
dmatrix dest 
) const

Apply.

Parameters:
mean list of dvector with the centres.
covarianceMatrix list of dmatrix with the covariances
numbers list of int with the number of points to create in each cluster
dest dmatrix with the resulting points in its rows
bool lti::multivariateGaussian::apply ( std::list< dvector > &  mean,
std::list< dmatrix > &  covarianceMatrix,
std::list< int > &  numbers,
std::list< dmatrix > &  dest 
) const

Apply.

Parameters:
mean list of dvectors with the centres.
covarianceMatrix list of dmatrix with the covariances
numbers list of int with the number of points to create in each cluster
dest list of dmatrix with the resulting points in its rows a one dmatrix for each cluster
bool lti::multivariateGaussian::apply ( const dvector mean,
const dmatrix covarianceMatrix,
const int &  number,
dmatrix dest 
) const

creates either one cluster of a set of clusters with the given number of points the covarianceMatrix .

Parameters:
mean dvector with the centre.
covarianceMatrix dmatrix with the covariances
number int with the number of points to create
dest dmatrix with the resulting points in its rows
Returns:
true if apply successful or false otherwise.
bool lti::multivariateGaussian::apply ( const dvector mean,
const dmatrix covarianceMatrix,
dvector dest 
) const

computes one point from a gaussian distribution with the given parameters.

The resulting point is left in dest operates on the given parameter.

Parameters:
mean dvector with the centre.
covarianceMatrix dmatrix with the covariances
dest dvector with the resulting point
Returns:
true if apply successful or false otherwise.
virtual functor* lti::multivariateGaussian::clone (  )  const [virtual]

returns a pointer to a clone of this functor.

Reimplemented from lti::continuousRandomDistribution.

multivariateGaussian& lti::multivariateGaussian::copy ( const multivariateGaussian other  ) 

copy data of "other" functor.

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

Reimplemented from lti::continuousRandomDistribution.

dmatrix lti::multivariateGaussian::draw ( const int &  number  )  const

computes a number of points with the parameters set in the parameters object

Parameters:
number int with the number of points to create
Returns:
return a dmatrix with the points in its rows.
double lti::multivariateGaussian::draw (  )  const [virtual]

In this context this method doesn't make any sense, so it returns 0.Don't use.

Use draw(const int& number) instead and set number equal to one; this returns also only one point in a Matrix with only one row This function was reimplented, because the function is implemented in the parent class, and this function can't be used at this place.

Reimplemented from lti::continuousRandomDistribution.

const parameters& lti::multivariateGaussian::getParameters (  )  const

returns used parameters

Reimplemented from lti::functor.

virtual const char* lti::multivariateGaussian::getTypeName (  )  const [virtual]

returns the name of this type ("multivariateGaussian")

Reimplemented from lti::continuousRandomDistribution.

multivariateGaussian& lti::multivariateGaussian::operator= ( const multivariateGaussian other  ) 

alias for copy member

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

Reimplemented from lti::functor.


Member Data Documentation

compute determinate

get the eigenvalues and eigenvectors

random functor used for generation of points


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

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