bdm::mprod Class Reference

Chain rule decomposition of epdf. More...

#include <emix.h>

List of all members.

Public Member Functions

 mprod (Array< mpdf * > mFacs)
 Constructor from list of mFacs,.
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.
vec samplecond (const vec &cond)
 Returns a sample from the density conditioned on cond, $x \sim epdf(rv|cond)$.
mat samplecond (const vec &cond, int N)
RV getrv (bool checkoverlap=false)
 find common rv, flag
void setrvc (const RV &rv, RV &rvc)
 common rvc of all mpdfs is written to rvc
Matematical operations
virtual mat samplecond_m (const vec &cond, 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.
Access to attributes
RV _rv ()
RV _rvc ()
int dimension ()
int dimensionc ()
epdf_epdf ()
epdf_e ()
Connection to other objects
void set_rvc (const RV &rvc0)
void set_rv (const RV &rv0)
bool isnamed ()

Protected Attributes

Array< epdf * > epdfs
 pointers to epdfs - shortcut to mpdfs().posterior()
Array< datalink_m2m * > dls
 Data link for each mpdfs.
epdf dummy
 dummy ep
int n
 Number of mpdfs in the composite.
Array< mpdf * > mpdfs
 Elements of composition.
int dimc
 dimension of the condition
RV rvc
 random variable in condition
epdfep
 pointer to internal epdf


Detailed Description

Chain rule decomposition of epdf.

Probability density in the form of Chain-rule decomposition: \[ f(x_1,x_2,x_3) = f(x_1|x_2,x_3)f(x_2,x_3)f(x_3) \] Note that


Member Function Documentation

RV bdm::compositepdf::getrv ( bool  checkoverlap = false  )  [inherited]

find common rv, flag

Parameters:
checkoverlap modifies whether overlaps are acceptable

References bdm::RV::add(), bdm::compositepdf::mpdfs, and bdm::compositepdf::n.

Referenced by bdm::merger::merger(), and mprod().

vec bdm::mprod::samplecond ( const vec &  cond  )  [inline, virtual]

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

Parameters:
cond is numeric value of rv

Ugly hack to help to discover if mpfs are not in proper order. Correct solution = check that explicitely.

Reimplemented from bdm::mpdf.

References bdm::epdf::dimension(), dls, bdm::mpdf::ep, epdfs, bdm::compositepdf::mpdfs, and bdm::compositepdf::n.

virtual mat bdm::mpdf::samplecond_m ( const vec &  cond,
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

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


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

Generated on Thu Apr 9 14:33:21 2009 for mixpp by  doxygen 1.5.8