Abstract Class representing conditional Pdfs P(x | ...)
More...
#include <conditionalpdf.h>
template<typename Var, typename CondArg>
class BFL::ConditionalPdf< Var, CondArg >
Abstract Class representing conditional Pdfs P(x | ...)
This class inherits from Pdf Virtual public because of the multiple inheritance that follows Two templates are here to allow a mixture of discrete and continu variables in the Pdf!
- Bug:
- All conditional arguments should be of the same type T for now!
- Todo:
- Investigate if we can allow. It is for sure that we'll need another class then the std::list to implement this!
- See Also
- Pdf
Definition at line 49 of file conditionalpdf.h.
| ConditionalPdf |
( |
int |
dimension = 0, |
|
|
unsigned int |
num_conditional_arguments = 0 |
|
) |
| |
Constructor.
- Parameters
-
| dimension | int representing the number of rows of the state vector |
| num_conditional_arguments | the number of arguments behind the | |
Definition at line 116 of file conditionalpdf.h.
| const CondArg & ConditionalArgumentGet |
( |
unsigned int |
n_argument | ) |
const |
Get the n-th argument of the list.
- Returns
- The current value of the n-th conditional argument (starting from 0!)
Definition at line 165 of file conditionalpdf.h.
| void ConditionalArgumentSet |
( |
unsigned int |
n_argument, |
|
|
const CondArg & |
argument |
|
) |
| |
|
virtual |
Set the n-th argument of the list.
- Parameters
-
| n_argument | which one of the conditional arguments |
| argument | value of the n-th argument |
Definition at line 173 of file conditionalpdf.h.
| const std::vector< CondArg > & ConditionalArgumentsGet |
( |
| ) |
const |
Get the whole list of conditional arguments.
- Returns
- an STL-vector containing all the current values of the conditional arguments
Definition at line 152 of file conditionalpdf.h.
| void ConditionalArgumentsSet |
( |
std::vector< CondArg > |
ConditionalArguments | ) |
|
|
virtual |
Set the whole list of conditional arguments.
- Parameters
-
| ConditionalArguments | an STL-vector of type T containing the condtional arguments |
Definition at line 158 of file conditionalpdf.h.
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 |
|
inherited |
Get the dimension of the argument.
- Returns
- the dimension of the argument
| virtual void DimensionSet |
( |
unsigned int |
dim | ) |
|
|
virtualinherited |
Set the dimension of the argument.
- Parameters
-
| virtual Var ExpectedValueGet |
( |
| ) |
const |
|
virtualinherited |
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?
| unsigned int NumConditionalArgumentsGet |
( |
| ) |
const |
|
inline |
Get the Number of conditional arguments.
- Returns
- the number of conditional arguments
Definition at line 135 of file conditionalpdf.h.
| void NumConditionalArgumentsSet |
( |
unsigned int |
numconditionalarguments | ) |
|
|
inlinevirtual |
Set the Number of conditional arguments.
- Parameters
-
| numconditionalarguments | the number of conditionalarguments |
- Bug:
- will probably give rise to memory allocation problems if you herit from this class and do not redefine this method.
Reimplemented in LinearAnalyticConditionalGaussian.
Definition at line 141 of file conditionalpdf.h.
| virtual Probability ProbabilityGet |
( |
const Var & |
input | ) |
const |
|
virtualinherited |
Get the probability of a certain argument.
- Parameters
-
| input | T argument of the Pdf |
- Returns
- the probability value of the argument
| virtual bool SampleFrom |
( |
vector< Sample< Var > > & |
list_samples, |
|
|
const unsigned int |
num_samples, |
|
|
int |
method = DEFAULT, |
|
|
void * |
args = NULL |
|
) |
| const |
|
virtualinherited |
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!
| virtual bool SampleFrom |
( |
Sample< Var > & |
one_sample, |
|
|
int |
method = DEFAULT, |
|
|
void * |
args = NULL |
|
) |
| const |
|
virtualinherited |
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!
The documentation for this class was generated from the following file: