|
Bayesian Filtering Library Generated from SVN r
|
Class representing a PDF on a discrete variable. More...
#include <discretepdf.h>
Public Member Functions | |
| DiscretePdf (unsigned int num_states=0) | |
| Constructor (dimension = number of classes) An equal probability is set for all classes. | |
| DiscretePdf (const DiscretePdf &) | |
| Copy Constructor. | |
| virtual | ~DiscretePdf () |
| Destructor. | |
| virtual DiscretePdf * | Clone () const |
| Clone function. | |
| unsigned int | NumStatesGet () const |
| Get the number of discrete States. | |
| Probability | ProbabilityGet (const int &state) const |
| Implementation of virtual base class method. | |
| bool | ProbabilitySet (int state, Probability a) |
| Function to change/set the probability of a single state. | |
| bool | SampleFrom (vector< Sample< int > > &list_samples, const unsigned int num_samples, const SampleMthd method=SampleMthd::DEFAULT, void *args=NULL) const |
| Draw multiple samples from the Pdf (overloaded) | |
| bool | SampleFrom (Sample< int > &one_sample, const SampleMthd method=SampleMthd::DEFAULT, void *args=NULL) const |
| Draw 1 sample from the Pdf: | |
| vector< Probability > | ProbabilitiesGet () const |
| Get all probabilities. | |
| bool | ProbabilitiesSet (vector< Probability > &values) |
| Set all probabilities. | |
| int | MostProbableStateGet () |
| Get the index of the most probable state. | |
| unsigned int | DimensionGet () const |
| Get the dimension of the argument. | |
| virtual void | DimensionSet (unsigned int dim) |
| Set the dimension of the argument. | |
| virtual int | ExpectedValueGet () const |
| Get the expected value E[x] of the pdf. | |
| virtual MatrixWrapper::SymmetricMatrix | CovarianceGet () const |
| Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf. | |
Protected Member Functions | |
| bool | NormalizeProbs () |
| Normalize all the probabilities (eg. after setting a probability) | |
| bool | CumPDFUpdate () |
| Updates the cumPDF. | |
Protected Attributes | |
| unsigned int | _num_states |
| The number of discrete state. | |
| vector< Probability > * | _Values_p |
| Pointer to the discrete PDF-values, the sum of the elements = 1. | |
| vector< double > | _CumPDF |
| STL-vector containing the Cumulative PDF (for efficient sampling) | |
Class representing a PDF on a discrete variable.
This class is an instantation from the template class Pdf, with added methods to get a set the probability of a certain discrete value (methods only relevant for discrete pdfs)
Definition at line 34 of file discretepdf.h.
| DiscretePdf | ( | unsigned int | num_states = 0 | ) |
Constructor (dimension = number of classes) An equal probability is set for all classes.
| num_states | number of different classes or states |
|
virtual |
Clone function.
Implements Pdf< int >.
|
virtualinherited |
|
inlineinherited |
|
virtualinherited |
|
virtualinherited |
Get the expected value E[x] of the pdf.
Get low order statistic (Expected Value) of this AnalyticPdf
| bool ProbabilitiesSet | ( | vector< Probability > & | values | ) |
Set all probabilities.
| values | vector<Probability> containing the new probability values. The sum of the probabilities of this list is not required to be one since the normalization is automatically carried out. |
|
virtual |
Implementation of virtual base class method.
Reimplemented from Pdf< int >.
| bool ProbabilitySet | ( | int | state, |
| Probability | a | ||
| ) |
Function to change/set the probability of a single state.
Changes the probabilities such that AFTER normalization the probability of the state "state" is equal to the probability a
| state | number of state of which the probability will be set |
| a | probability value to which the probability of state "state" will be set (must be <= 1) |
|
virtual |
Draw 1 sample from the Pdf:
There's no need to create a list for only 1 sample!
| one_sample | sample that will contain result of sampling |
| method | Sampling method to be used. Each sampling method is currently represented by an enum, eg. SampleMthd::BOXMULLER |
| args | Pointer to a struct representing extra sample arguments |
Reimplemented from Pdf< int >.
|
virtual |
Draw multiple samples from the Pdf (overloaded)
| list_samples | list of samples that will contain result of sampling |
| num_samples | Number of Samples to be drawn (iid) |
| method | Sampling method to be used. Each sampling method is currently represented by an enum eg. SampleMthd::BOXMULLER |
| args | Pointer to a struct representing extra sample arguments. "Sample Arguments" can be anything (the number of steps a gibbs-iterator should take, the interval width in MCMC, ... (or nothing), so it is hard to give a meaning to what exactly Sample Arguments should represent... |
Reimplemented from Pdf< int >.
|
protected |
STL-vector containing the Cumulative PDF (for efficient sampling)
Definition at line 47 of file discretepdf.h.
|
protected |
The number of discrete state.
Definition at line 38 of file discretepdf.h.
|
protected |
Pointer to the discrete PDF-values, the sum of the elements = 1.
Definition at line 41 of file discretepdf.h.