AlmostGaussianKernel Class Reference

Inheritance diagram for AlmostGaussianKernel:

Inheritance graph
[legend]

List of all members.


Detailed Description

Gaussian kernel for density estimation without squared exponent.

Author:
Lawrence Murray <lawrence@indii.org>
Version:
Rev
Date:
Date
The kernel takes the form:

\[ K(x) = \frac{1}{\sqrt{2\pi}}e^{-\frac{1}{2}x} \]

Note that the $x$ in the exponent is not squared as per the usual Gaussian. This means that the kernel is actually a scaled Laplacian (i.e. does not integrate to 1). Combining with Almost2Norm, however, produces the same result as using PNorm<2> and GaussianKernel, but is much more efficient, as the square root in the norm and square in the exponent of the Gaussian are cancelled.

See also:
hopt for guidance as to bandwidth selection.

Serialization

This class supports serialization through the Boost.Serialization library.

Definition at line 36 of file AlmostGaussianKernel.hpp.


Public Member Functions

 AlmostGaussianKernel ()
 Default constructor.
 AlmostGaussianKernel (const unsigned int N, const double h)
 Constructor.
virtual ~AlmostGaussianKernel ()
 Destructor.
virtual double operator() (const double x) const
 Evaluate the kernel.
virtual double sample () const
 Sample from the kernel.

Constructor & Destructor Documentation

AlmostGaussianKernel (  ) 

Default constructor.

This should generally only be used when the object is to be restored from a serialization.

Definition at line 5 of file AlmostGaussianKernel.cpp.

AlmostGaussianKernel ( const unsigned int  N,
const double  h 
)

Constructor.

Parameters:
N $N$; dimensionality of the problem.
h $h$; the scaling parameter (bandwidth).
Although the kernel itself is not intrinsically dependent on $N$ and $h$, its normalisation is. Supplying these allows substantial performance increases through precalculationa.

Definition at line 9 of file AlmostGaussianKernel.cpp.

~AlmostGaussianKernel (  )  [virtual]

Destructor.

Definition at line 15 of file AlmostGaussianKernel.cpp.


Member Function Documentation

double operator() ( const double  x  )  const [inline, virtual]

Evaluate the kernel.

Parameters:
x Point at which to evaluate the kernel.
Returns:
Density of the kernel at the given point.

Implements Kernel.

Definition at line 104 of file AlmostGaussianKernel.hpp.

double sample (  )  const [inline, virtual]

Sample from the kernel.

Returns:
A sample from the kernel.

Implements Kernel.

Definition at line 109 of file AlmostGaussianKernel.hpp.


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