KernelDensityMixturePdf Class Template Reference

Inheritance diagram for KernelDensityMixturePdf:

Inheritance graph
[legend]

List of all members.


Detailed Description

template<class NT = Almost2Norm, class KT = AlmostGaussianKernel>
class indii::ml::aux::KernelDensityMixturePdf< NT, KT >

Mixture of kernel density estimators.

Author:
Lawrence Murray <lawrence@indii.org>
Version:
Rev
Date:
Date
Parameters:
NT Norm type.
KT Kernel type.
See also:
MixturePdf for more information regarding the serialization and parallelisation features of this class.

Definition at line 27 of file KernelDensityMixturePdf.hpp.


Public Member Functions

 KernelDensityMixturePdf ()
 Default constructor.
 KernelDensityMixturePdf (const unsigned int N)
 Constructor.
 KernelDensityMixturePdf (const KernelDensityPdf< NT, KT > &x, const double w=1.0)
 Constructor.
virtual ~KernelDensityMixturePdf ()
 Destructor.
vector densityAt (PartitionTree &tree)
 Calculate the density on the local node for all points in a tree.
template<class S>
vector distributedDensityAt (KDTree< S > &tree)
 Calculate the density of the full distribution for all points in a tree.

Constructor & Destructor Documentation

KernelDensityMixturePdf (  )  [inline]

Default constructor.

Initialises the mixture with zero dimensions. This should generally only be used when the object is to be restored from a serialization. Indeed, there is no other way to resize the mixture to nonzero dimensionality except by subsequently restoring from a serialization.

Definition at line 128 of file KernelDensityMixturePdf.hpp.

KernelDensityMixturePdf ( const unsigned int  N  )  [inline]

Constructor.

One or more components should be added with addComponent() after construction.

Parameters:
N Dimensionality of the distribution.

Definition at line 134 of file KernelDensityMixturePdf.hpp.

KernelDensityMixturePdf ( const KernelDensityPdf< NT, KT > &  x,
const double  w = 1.0 
) [inline]

Constructor.

Parameters:
x The first component.
w Unnormalised weight of the component.
This is particularly useful for creating single component mixtures of any type for parallel environments.

Definition at line 140 of file KernelDensityMixturePdf.hpp.

~KernelDensityMixturePdf (  )  [inline, virtual]

Destructor.

Definition at line 147 of file KernelDensityMixturePdf.hpp.


Member Function Documentation

indii::ml::aux::vector densityAt ( PartitionTree tree  )  [inline]

Calculate the density on the local node for all points in a tree.

Parameters:
tree Query tree.
Returns:
Density at all points in the tree, ordered according to the underlying DiracMixturePdf ordering.
Uses a dual-tree algorithm to efficiently calculate the density at all points in the query tree.

Todo:
Currently requires KDTree rather than PartitionTree due to apparent link errors related to Boost.MPI and Boost.Serialization.

Definition at line 153 of file KernelDensityMixturePdf.hpp.

indii::ml::aux::vector distributedDensityAt ( KDTree< S > &  tree  )  [inline]

Calculate the density of the full distribution for all points in a tree.

Parameters:
tree Query tree on this node.
Returns:
Density at all points in the tree on this node, ordered according to its underlying DiracMixturePdf ordering.
Uses a dual-tree algorithm to efficiently calculate the density at all points in the query tree. Note that while each node is passed only its set of points, in the form of a tree, and returns only the density calculations for that set of points, all nodes participate in the calculation for all points.

Todo:
Currently requires KDTree rather than PartitionTree due to apparent link errors related to Boost.MPI and Boost.Serialization.

Definition at line 170 of file KernelDensityMixturePdf.hpp.


Generated on Wed Dec 17 15:11:58 2008 for dysii Dynamical Systems Library by  doxygen 1.5.3