mratio Class Reference

Class representing ratio of two densities which arise e.g. by applying the Bayes rule. It represents density in the form:

\[ f(rv|rvc) = \frac{f(rv,rvc)}{f(rvc)} \]

where $ f(rvc) = \int f(rv,rvc) d\ rv $. More...

#include <emix.h>

Inheritance diagram for mratio:

Inheritance graph
[legend]
Collaboration diagram for mratio:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 mratio (const epdf *nom0, const RV &rv, bool copy=false)
double evallogcond (const vec &val, const vec &cond)
 Shortcut for conditioning and evaluation of the internal epdf. In some cases, this operation can be implemented efficiently.
void ownnom ()
 Object takes ownership of nom and will destroy it.
 ~mratio ()
 Default destructor.
virtual vec samplecond (const vec &cond, double &ll)
 Returns a sample from the density conditioned on cond, $x \sim epdf(rv|cond)$.
virtual mat samplecond_m (const vec &cond, vec &ll, int N)
 Returns.
virtual void condition (const vec &cond)
 Update ep so that it represents this mpdf conditioned on rvc = cond.
virtual vec evallogcond_m (const mat &Dt, const vec &cond)
 Matrix version of evallogcond.
RV _rvc () const
 access function
RV _rv () const
 access function
epdf_epdf ()
 access function
epdf_e ()
 access function

Protected Attributes

const epdfnom
 Nominator in the form of mpdf.
epdfden
 Denominator in the form of epdf.
bool destroynom
 flag for destructor
datalink_m2e dl
 datalink between conditional and nom
RV rv
 modeled random variable
RV rvc
 random variable in condition
epdfep
 pointer to internal epdf


Detailed Description

Class representing ratio of two densities which arise e.g. by applying the Bayes rule. It represents density in the form:

\[ f(rv|rvc) = \frac{f(rv,rvc)}{f(rvc)} \]

where $ f(rvc) = \int f(rv,rvc) d\ rv $.

In particular this type of arise by conditioning of a mixture model.

At present the only supported operation is evallogcond().


Constructor & Destructor Documentation

mratio::mratio ( const epdf nom0,
const RV rv,
bool  copy = false 
) [inline]

Default constructor. By default, the given epdf is not copied! It is assumed that this function will be used only temporarily.

References den, destroynom, RV::length(), epdf::marginal(), nom, and mpdf::rvc.


Member Function Documentation

virtual vec mpdf::samplecond ( const vec &  cond,
double &  ll 
) [inline, virtual, inherited]

Returns a sample from the density conditioned on cond, $x \sim epdf(rv|cond)$.

Parameters:
cond is numeric value of rv
ll is a return value of log-likelihood of the sample.

Reimplemented in mprod.

References mpdf::condition(), mpdf::ep, epdf::evallog(), and epdf::sample().

Referenced by MPF< BM_T >::bayes(), and PF::bayes().

virtual mat mpdf::samplecond_m ( const vec &  cond,
vec &  ll,
int  N 
) [inline, virtual, inherited]

Returns.

Parameters:
N samples from the density conditioned on cond, $x \sim epdf(rv|cond)$.
cond is numeric value of rv
ll is a return value of log-likelihood of the sample.

References mpdf::condition(), RV::count(), mpdf::ep, epdf::evallog(), mpdf::rv, and epdf::sample().


The documentation for this class was generated from the following file:

Generated on Thu Jan 15 10:51:26 2009 for mixpp by  doxygen 1.5.6