# bdm::migamma_ref Class Reference

Inverse-Gamma random walk around a fixed point. More...

`#include <libEF.h>`

List of all members.

## Public Member Functions
| migamma_ref ()
| Constructor.
void | set_parameters (double k0, vec ref0, double l0)
| Set value of `k`.
void | condition (const vec &val)
| Update `ep` so that it represents this mpdf conditioned on `rvc` = cond.
void | from_setting (const Setting &root)
void | set_parameters (int len, double k0)
| Set value of `k`.
virtual string | to_string ()
| This method returns a basic info about the current instance.
virtual void | to_setting (Setting &root) const
| This method save all the instance properties into the Setting structure.
virtual void | validate ()
| This method TODO.
Matematical operations
virtual vec | samplecond (const vec &cond)
| Returns a sample from the density conditioned on `cond`, .
virtual mat | samplecond_m (const vec &cond, int N)
| Returns.
virtual double | evallogcond (const vec &dt, const vec &cond)
| Shortcut for conditioning and evaluation of the internal epdf. In some cases, this operation can be implemented efficiently.
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
double | l
| parameter l
vec | refl
| reference vector
eigamma | epdf
| Internal epdf that arise by conditioning on `rvc`.
double | k
| Constant .
vec & | _alpha
| cache of epdf.alpha
vec & | _beta
| cache of epdf.beta
int | dimc
| dimension of the condition
RV | rvc
| random variable in condition
epdf * | ep
| pointer to internal epdf

## Detailed Description

Inverse-Gamma random walk around a fixed point.

Mean value, , of this density is given by a geometric combination of `rvc` and given fixed point, . is the coefficient of the geometric combimation

==== Check == vv = Standard deviation of the random walk is proportional to one -th the mean. This is achieved by setting and .

The standard deviation of the walk is then: .

## Member Function Documentation

void bdm::migamma_ref::from_setting | ( | const Setting & | root | ) | `[virtual]`

UI for migamma_ref

The migamma_ref is constructed from a structure with fields:

                            system = {
                                    type = "migamma_ref";
                                    ref = [1e-5; 1e-5; 1e-2 1e-3];            // reference vector
                                    l = 0.999;                                // constant l
                                    k = 0.1;                                  // constant k

                                    // == OPTIONAL ==
                                    // description of y variables
                                    y = {type="rv"; names=["y", "u"];};
                                    // description of u variable
                                    u = {type="rv"; names=[];}
                            };

Result if

Reimplemented from bdm::bdmroot.

References bdm::UI::get(), and set_parameters().

virtual vec bdm::mpdf::samplecond | ( | const vec & | cond | ) | `[inline, virtual, inherited]`

Returns a sample from the density conditioned on `cond`, .

Parameters:

  | cond | is numeric value of `rv`

Reimplemented in bdm::mprod.

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

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

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

Returns.

Parameters:

  | N | samples from the density conditioned on `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 files:

- libEF.h
- libEF.cpp