Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

vpdfl_gaussian_kernel_pdf_sampler Class Reference

#include <vpdfl_gaussian_kernel_pdf_sampler.h>

Inheritance diagram for vpdfl_gaussian_kernel_pdf_sampler:

Inheritance graph
[legend]
List of all members.

Detailed Description

Samples from an axis aligned Gaussian PDF.

Definition at line 21 of file vpdfl_gaussian_kernel_pdf_sampler.h.

Public Member Functions

 vpdfl_gaussian_kernel_pdf_sampler ()
virtual ~vpdfl_gaussian_kernel_pdf_sampler ()
virtual void set_model (const vpdfl_pdf_base &)
 Set model for which this is an instance.
void sample_component (vnl_vector< double > &x, int j)
 Draw random sample from j-th component of distribution.
virtual void sample (vnl_vector< double > &x)
 Draw random sample from distribution.
virtual void regular_samples (vcl_vector< vnl_vector< double > > &x)
 Fill x with samples possibly chosen so as to represent the distribution.
virtual void reseed (unsigned long)
 Reseeds the internal random number generator.
const vpdfl_gaussian_kernel_pdfgaussian_kernel_pdf () const
 Return a reference to the pdf model.
virtual vcl_string is_a () const
 Name of the class.
virtual bool is_class (vcl_string const &s) const
 Does the name of the class match the argument?.
virtual vpdfl_sampler_baseclone () const
 Create a copy on the heap and return base class pointer.
const vpdfl_pdf_basemodel () const
 PDF of which this is an instance.
virtual void get_samples (vcl_vector< vnl_vector< double > > &x)
 Fill x with samples drawn from distribution.
virtual void regular_samples_and_prob (vcl_vector< vnl_vector< double > > &x, vnl_vector< double > &p)
 Fill x with samples possibly chosen so as to represent the distribution.
virtual void print_summary (vcl_ostream &os) const
 Print class to os.

Protected Attributes

vnl_random rng_
 The random number generator.
const vpdfl_pdf_basepdf_model_


Constructor & Destructor Documentation

vpdfl_gaussian_kernel_pdf_sampler::vpdfl_gaussian_kernel_pdf_sampler  ) 
 

Definition at line 19 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

vpdfl_gaussian_kernel_pdf_sampler::~vpdfl_gaussian_kernel_pdf_sampler  )  [virtual]
 

Definition at line 28 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.


Member Function Documentation

vpdfl_sampler_base * vpdfl_gaussian_kernel_pdf_sampler::clone  )  const [virtual]
 

Create a copy on the heap and return base class pointer.

Implements vpdfl_sampler_base.

Definition at line 55 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

const vpdfl_gaussian_kernel_pdf & vpdfl_gaussian_kernel_pdf_sampler::gaussian_kernel_pdf  )  const
 

Return a reference to the pdf model.

This is properly cast.

Definition at line 133 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

void vpdfl_sampler_base::get_samples vcl_vector< vnl_vector< double > > &  x  )  [virtual, inherited]
 

Fill x with samples drawn from distribution.

Definition at line 48 of file vpdfl_sampler_base.cxx.

vcl_string vpdfl_gaussian_kernel_pdf_sampler::is_a  )  const [virtual]
 

Name of the class.

Reimplemented from vpdfl_sampler_base.

Definition at line 37 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

bool vpdfl_gaussian_kernel_pdf_sampler::is_class vcl_string const &  s  )  const [virtual]
 

Does the name of the class match the argument?.

Reimplemented from vpdfl_sampler_base.

Definition at line 46 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

const vpdfl_pdf_base & vpdfl_sampler_base::model  )  const [inherited]
 

PDF of which this is an instance.

Definition at line 40 of file vpdfl_sampler_base.cxx.

void vpdfl_sampler_base::print_summary vcl_ostream &  os  )  const [virtual, inherited]
 

Print class to os.

Definition at line 104 of file vpdfl_sampler_base.cxx.

void vpdfl_gaussian_kernel_pdf_sampler::regular_samples vcl_vector< vnl_vector< double > > &  x  )  [virtual]
 

Fill x with samples possibly chosen so as to represent the distribution.

Sample sequentially from each component.

Reimplemented from vpdfl_sampler_base.

Definition at line 110 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

void vpdfl_sampler_base::regular_samples_and_prob vcl_vector< vnl_vector< double > > &  x,
vnl_vector< double > &  p
[virtual, inherited]
 

Fill x with samples possibly chosen so as to represent the distribution.

As regular_samples(x), but p[i] is set to p(x[i])

Definition at line 67 of file vpdfl_sampler_base.cxx.

void vpdfl_gaussian_kernel_pdf_sampler::reseed unsigned  long  )  [virtual]
 

Reseeds the internal random number generator.

To achieve quasi-random initialisation use;

 #include <vcl_ctime.h>
 ..
 sampler.reseed(vcl_time(0));

Implements vpdfl_sampler_base.

Definition at line 61 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

void vpdfl_gaussian_kernel_pdf_sampler::sample vnl_vector< double > &  x  )  [virtual]
 

Draw random sample from distribution.

Implements vpdfl_sampler_base.

Definition at line 96 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

void vpdfl_gaussian_kernel_pdf_sampler::sample_component vnl_vector< double > &  x,
int  j
 

Draw random sample from j-th component of distribution.

Definition at line 77 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.

void vpdfl_gaussian_kernel_pdf_sampler::set_model const vpdfl_pdf_base  )  [virtual]
 

Set model for which this is an instance.

Error check that it is an axis gaussian.

Reimplemented from vpdfl_sampler_base.

Definition at line 69 of file vpdfl_gaussian_kernel_pdf_sampler.cxx.


Member Data Documentation

const vpdfl_pdf_base* vpdfl_sampler_base::pdf_model_ [protected, inherited]
 

Definition at line 31 of file vpdfl_sampler_base.h.

vnl_random vpdfl_gaussian_kernel_pdf_sampler::rng_ [protected]
 

The random number generator.

Definition at line 25 of file vpdfl_gaussian_kernel_pdf_sampler.h.


The documentation for this class was generated from the following files:
Generated on Thu Jan 10 14:43:34 2008 for contrib/mul/vpdfl by  doxygen 1.4.4