# bdm::mpdf_internal< EPDF > Class Template Reference

Mpdf with internal epdf that is modified by function `condition`. More...

`#include <bdmbase.h>`

List of all members.

## Public Member Functions
| mpdf_internal ()
| constructor
virtual void | condition (const vec &cond)
EPDF & | e ()
| access function to iepdf
vec | samplecond (const vec &cond)
| Reimplements samplecond using `condition()`.
double | evallogcond (const vec &val, const vec &cond)
| Reimplements evallogcond using `condition()`.
virtual vec | evallogcond_m (const mat &Dt, const vec &cond)
| Efficient version of evallogcond for matrices.
virtual vec | evallogcond_m (const Array< vec > &Dt, const vec &cond)
| Efficient version of evallogcond for Array<vec>.
virtual mat | samplecond_m (const vec &cond, int N)
| Efficient version of samplecond.
void | from_setting (const Setting &set)
virtual string | to_string ()
| This method returns a basic info about the current instance.
virtual void | to_setting (Setting &set) const
| This method save all the instance properties into the Setting structure.
virtual void | validate ()
| This method TODO.
Access to attributes
RV | _rv () const
RV | _rvc ()
int | dimension () const
int | dimensionc ()
Connection to other objects
void | set_rvc (const RV &rvc0)
void | set_rv (const RV &rv0)
bool | isnamed ()
## Protected Member Functions
void | set_ep (epdf &iepdf)
| set internal pointer `ep` to point to given `iepdf`
void | set_ep (epdf *iepdfp)
| set internal pointer `ep` to point to given `iepdf`
## Protected Attributes
EPDF | iepdf
| Internal epdf used for sampling.
int | dimc
| dimension of the condition
RV | rvc
| random variable in condition

## Detailed Description

### template<class EPDF>
class bdm::mpdf_internal< EPDF >

Mpdf with internal epdf that is modified by function `condition`.

## Member Function Documentation

template<class EPDF>

virtual void bdm::mpdf_internal< EPDF >::condition | ( | const vec & | cond | ) | `[inline, virtual]`

Update `iepdf` so that it represents this mpdf conditioned on `rvc` = cond This function provides convenient reimplementation in offsprings

Reimplemented in bdm::mlnorm< sq_T, TEpdf >, bdm::mgnorm< sq_T >, bdm::mlstudent, bdm::mgamma, bdm::migamma, bdm::mgamma_fix, bdm::migamma_ref, bdm::mlognorm, bdm::rwiWishartCh, bdm::mlnorm< ldmat, enorm >, and bdm::mlnorm< chmat >.

Referenced by bdm::mpdf_internal< EPDF >::evallogcond(), bdm::mpdf_internal< EPDF >::evallogcond_m(), bdm::mpdf_internal< EPDF >::samplecond(), and bdm::mpdf_internal< EPDF >::samplecond_m().

void bdm::mpdf::from_setting | ( | const Setting & | set | ) | `[virtual, inherited]`

Load from structure with elements:

     { class = "mpdf_offspring",
       rv = {class="RV", names=(...),}; // RV describing meaning of random variable
       rvc= {class="RV", names=(...),}; // RV describing meaning of random variable in condition
       // elements of offsprings
     }

Reimplemented from bdm::root.

Reimplemented in bdm::mepdf, bdm::mprod, bdm::mlnorm< sq_T, TEpdf >, bdm::mgnorm< sq_T >, bdm::mgamma, bdm::migamma_ref, bdm::mlognorm, bdm::mlnorm< ldmat, enorm >, and bdm::mlnorm< chmat >.

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

- bdmbase.h