Class PDF: Virtual Base class representing Probability Density Functions.
More...
#include <pdf.h>
List of all members.
Public Member Functions |
| Pdf (unsigned int dimension=0) |
| Constructor.
|
virtual | ~Pdf () |
| Destructor.
|
virtual Pdf< T > * | Clone () const =0 |
| Pure virtual clone function.
|
virtual bool | SampleFrom (vector< Sample< T > > &list_samples, const unsigned int num_samples, int method=DEFAULT, void *args=NULL) const |
| Draw multiple samples from the Pdf (overloaded)
|
virtual bool | SampleFrom (Sample< T > &one_sample, int method=DEFAULT, void *args=NULL) const |
| Draw 1 sample from the Pdf:
|
virtual Probability | ProbabilityGet (const T &input) const |
| Get the probability of a certain argument.
|
unsigned int | DimensionGet () const |
| Get the dimension of the argument.
|
virtual void | DimensionSet (unsigned int dim) |
| Set the dimension of the argument.
|
virtual T | 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.
|
Detailed Description
template<typename T>
class BFL::Pdf< T >
Class PDF: Virtual Base class representing Probability Density Functions.
Definition at line 53 of file pdf.h.
Constructor & Destructor Documentation
Pdf |
( |
unsigned int |
dimension = 0 | ) |
|
Constructor.
- Parameters:
-
dimension | int representing the number of rows of the state |
Member Function Documentation
virtual MatrixWrapper::SymmetricMatrix CovarianceGet |
( |
| ) |
const [virtual] |
Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf.
Get first order statistic (Covariance) of this AnalyticPdf
- Returns:
- The Covariance of the Pdf (a SymmetricMatrix of dim DIMENSION)
- Todo:
- extend this more general to n-th order statistic
- Bug:
- Discrete pdfs should not be able to use this!
unsigned int DimensionGet |
( |
| ) |
const |
Get the dimension of the argument.
- Returns:
- the dimension of the argument
virtual void DimensionSet |
( |
unsigned int |
dim | ) |
[virtual] |
Set the dimension of the argument.
- Parameters:
-
virtual T ExpectedValueGet |
( |
| ) |
const [virtual] |
Get the expected value E[x] of the pdf.
Get low order statistic (Expected Value) of this AnalyticPdf
- Returns:
- The Expected Value of the Pdf (a ColumnVector with DIMENSION rows)
- Note:
- No set functions here! This can be useful for analytic functions, but not for sample based representations!
-
For certain discrete Pdfs, this function has no meaning, what is the average between yes and no?
virtual Probability ProbabilityGet |
( |
const T & |
input | ) |
const [virtual] |
Get the probability of a certain argument.
- Parameters:
-
input | T argument of the Pdf |
- Returns:
- the probability value of the argument
virtual bool SampleFrom |
( |
Sample< T > & |
one_sample, |
|
|
int |
method = DEFAULT , |
|
|
void * |
args = NULL |
|
) |
| const [virtual] |
Draw 1 sample from the Pdf:
There's no need to create a list for only 1 sample!
- Parameters:
-
one_sample | sample that will contain result of sampling |
method | Sampling method to be used. Each sampling method is currently represented by a #define statement, eg. #define BOXMULLER 1 |
args | Pointer to a struct representing extra sample arguments |
- See also:
- SampleFrom()
- Bug:
- Sometimes the compiler doesn't know which method to choose!
virtual bool SampleFrom |
( |
vector< Sample< T > > & |
list_samples, |
|
|
const unsigned int |
num_samples, |
|
|
int |
method = DEFAULT , |
|
|
void * |
args = NULL |
|
) |
| const [virtual] |
Draw multiple samples from the Pdf (overloaded)
- Parameters:
-
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 a #define statement, eg. #define BOXMULLER 1 |
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... |
- Todo:
- replace the C-call "void * args" by a more object-oriented structure: Perhaps something like virtual Sample * Sample (const int num_samples,class Sampler)
- Bug:
- Sometimes the compiler doesn't know which method to choose!
The documentation for this class was generated from the following file: