71 | | <h1>bdm::BM Class Reference</h1><!-- doxytag: class="bdm::BM" --><!-- doxytag: inherits="bdm::bdmroot" --><code>#include <<a class="el" href="libBM_8h-source.html">libBM.h</a>></code> |
72 | | <p> |
73 | | <div class="dynheader"> |
74 | | Inheritance diagram for bdm::BM:</div> |
75 | | <div class="dynsection"> |
76 | | |
77 | | <p><center><img src="classbdm_1_1BM.png" usemap="#bdm::BM_map" border="0" alt=""></center> |
78 | | <map name="bdm::BM_map"> |
79 | | <area href="classbdm_1_1bdmroot.html" alt="bdm::bdmroot" shape="rect" coords="0,0,141,24"> |
80 | | <area href="classbdm_1_1BMEF.html" alt="bdm::BMEF" shape="rect" coords="151,112,292,136"> |
81 | | <area href="classbdm_1_1EKFfull.html" alt="bdm::EKFfull" shape="rect" coords="151,168,292,192"> |
82 | | <area href="classbdm_1_1Kalman.html" alt="bdm::Kalman< sq_T >" shape="rect" coords="151,224,292,248"> |
83 | | <area href="classbdm_1_1PF.html" alt="bdm::PF" shape="rect" coords="151,280,292,304"> |
84 | | <area href="classEKFfixed.html" alt="EKFfixed" shape="rect" coords="151,336,292,360"> |
85 | | <area href="classbdm_1_1Kalman.html" alt="bdm::Kalman< chmat >" shape="rect" coords="151,392,292,416"> |
86 | | <area href="classbdm_1_1Kalman.html" alt="bdm::Kalman< fsqmat >" shape="rect" coords="151,448,292,472"> |
87 | | <area href="classbdm_1_1Kalman.html" alt="bdm::Kalman< ldmat >" shape="rect" coords="151,504,292,528"> |
88 | | </map> |
89 | | </div> |
90 | | |
91 | | <p> |
92 | | <a href="classbdm_1_1BM-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> |
| 71 | <h1>bdm::BM Class Reference</h1><!-- doxytag: class="bdm::BM" --><!-- doxytag: inherits="bdm::bdmroot" -->Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities. |
| 72 | <a href="#_details">More...</a> |
| 73 | <p> |
| 74 | <code>#include <<a class="el" href="libBM_8h-source.html">libBM.h</a>></code> |
| 75 | <p> |
| 76 | |
| 77 | <p> |
| 78 | <a href="classbdm_1_1BM-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> |
| 79 | <tr><td></td></tr> |
| 80 | <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
| 81 | <tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr> |
| 82 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db12aecc3135e7868c664e39e7133756"></a><!-- doxytag: member="bdm::BM::BM" ref="db12aecc3135e7868c664e39e7133756" args="()" --> |
| 83 | </td><td class="memItemRight" valign="bottom"><b>BM</b> ()</td></tr> |
| 84 | |
| 85 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="241b3701190ff1f729fe873a2eef0055"></a><!-- doxytag: member="bdm::BM::BM" ref="241b3701190ff1f729fe873a2eef0055" args="(const BM &B)" --> |
| 86 | </td><td class="memItemRight" valign="bottom"><b>BM</b> (const <a class="el" href="classbdm_1_1BM.html">BM</a> &B)</td></tr> |
| 87 | |
| 88 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classbdm_1_1BM.html">BM</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#40f01563651c1e4fe926189e41a6b8ab">_copy_</a> () const </td></tr> |
| 89 | |
| 90 | <tr><td colspan="2"><div class="groupHeader">Mathematical operations</div></td></tr> |
| 91 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#60b1779a577367c369a932cabd3a6188">bayes</a> (const vec &dt)=0</td></tr> |
| 92 | |
| 93 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Incremental Bayes rule. <a href="#60b1779a577367c369a932cabd3a6188"></a><br></td></tr> |
| 94 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1dee3fddaf021e62d925289660a707dc"></a><!-- doxytag: member="bdm::BM::bayesB" ref="1dee3fddaf021e62d925289660a707dc" args="(const mat &Dt)" --> |
| 95 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#1dee3fddaf021e62d925289660a707dc">bayesB</a> (const mat &Dt)</td></tr> |
| 96 | |
| 97 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr> |
| 98 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#50257e0c1e5b5c73153ea6e716ad8ae0">logpred</a> (const vec &dt) const </td></tr> |
| 99 | |
| 100 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e8ebe61fb14990abe1254bd3dda5fae"></a><!-- doxytag: member="bdm::BM::logpred_m" ref="0e8ebe61fb14990abe1254bd3dda5fae" args="(const mat &dt) const " --> |
| 101 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#0e8ebe61fb14990abe1254bd3dda5fae">logpred_m</a> (const mat &dt) const </td></tr> |
| 102 | |
| 103 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Matrix version of logpred. <br></td></tr> |
| 104 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="688d7a2aced1e06aa1c468d73a9e5eba"></a><!-- doxytag: member="bdm::BM::epredictor" ref="688d7a2aced1e06aa1c468d73a9e5eba" args="() const " --> |
| 105 | virtual <a class="el" href="classbdm_1_1epdf.html">epdf</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#688d7a2aced1e06aa1c468d73a9e5eba">epredictor</a> () const </td></tr> |
| 106 | |
| 107 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a predictive density <img class="formulaInl" alt="$ f(d_{t+1} |d_{t}, \ldots d_{0}) $" src="form_49.png">. <br></td></tr> |
| 108 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="598b25e3f3d96a5bc00a5faeb5b3c912"></a><!-- doxytag: member="bdm::BM::predictor" ref="598b25e3f3d96a5bc00a5faeb5b3c912" args="() const " --> |
| 109 | virtual <a class="el" href="classbdm_1_1mpdf.html">mpdf</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#598b25e3f3d96a5bc00a5faeb5b3c912">predictor</a> () const </td></tr> |
| 110 | |
| 111 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a conditional density 1-step ahead predictor. <br></td></tr> |
| 112 | <tr><td colspan="2"><div class="groupHeader">Access to attributes</div></td></tr> |
| 113 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff2d8755ba0b3def927d31305c03b09c"></a><!-- doxytag: member="bdm::BM::_drv" ref="ff2d8755ba0b3def927d31305c03b09c" args="() const " --> |
| 114 | const <a class="el" href="classbdm_1_1RV.html">RV</a> & </td><td class="memItemRight" valign="bottom"><b>_drv</b> () const </td></tr> |
| 115 | |
| 116 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f135ae6dce7e9f30c9f88229c7930b96"></a><!-- doxytag: member="bdm::BM::set_drv" ref="f135ae6dce7e9f30c9f88229c7930b96" args="(const RV &rv)" --> |
| 117 | void </td><td class="memItemRight" valign="bottom"><b>set_drv</b> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &rv)</td></tr> |
| 118 | |
| 119 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b38d92f17620813ad872d86e01a26e5e"></a><!-- doxytag: member="bdm::BM::set_rv" ref="b38d92f17620813ad872d86e01a26e5e" args="(const RV &rv)" --> |
| 120 | void </td><td class="memItemRight" valign="bottom"><b>set_rv</b> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &rv)</td></tr> |
| 121 | |
| 122 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5be65d37dedfe33a3671e7065f523a70"></a><!-- doxytag: member="bdm::BM::_ll" ref="5be65d37dedfe33a3671e7065f523a70" args="() const " --> |
| 123 | double </td><td class="memItemRight" valign="bottom"><b>_ll</b> () const </td></tr> |
| 124 | |
| 125 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="236b3abbcc93594fc97cd86d82c1a83f"></a><!-- doxytag: member="bdm::BM::set_evalll" ref="236b3abbcc93594fc97cd86d82c1a83f" args="(bool evl0)" --> |
| 126 | void </td><td class="memItemRight" valign="bottom"><b>set_evalll</b> (bool evl0)</td></tr> |
| 127 | |
| 128 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bb7b0065d6cb722a66b371a8260121e1"></a><!-- doxytag: member="bdm::BM::posterior" ref="bb7b0065d6cb722a66b371a8260121e1" args="() const =0" --> |
| 129 | virtual const <a class="el" href="classbdm_1_1epdf.html">epdf</a> & </td><td class="memItemRight" valign="bottom"><b>posterior</b> () const =0</td></tr> |
| 130 | |
| 131 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ed0f8b880e606316ae800f3a011c3a6"></a><!-- doxytag: member="bdm::BM::_e" ref="4ed0f8b880e606316ae800f3a011c3a6" args="() const =0" --> |
| 132 | virtual const <a class="el" href="classbdm_1_1epdf.html">epdf</a> * </td><td class="memItemRight" valign="bottom"><b>_e</b> () const =0</td></tr> |
| 133 | |
| 134 | <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> |
| 135 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c400357e37d27a4834b2b1d9211009ed"></a><!-- doxytag: member="bdm::BM::drv" ref="c400357e37d27a4834b2b1d9211009ed" args="" --> |
| 136 | <a class="el" href="classbdm_1_1RV.html">RV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#c400357e37d27a4834b2b1d9211009ed">drv</a></td></tr> |
| 137 | |
| 138 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Random variable of the data (optional). <br></td></tr> |
| 139 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4064b6559d962633e4372b12f4cd204a"></a><!-- doxytag: member="bdm::BM::ll" ref="4064b6559d962633e4372b12f4cd204a" args="" --> |
| 140 | double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#4064b6559d962633e4372b12f4cd204a">ll</a></td></tr> |
| 141 | |
| 142 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr> |
| 143 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="faff0ad12556fe7dc0e2807d4fd938ee"></a><!-- doxytag: member="bdm::BM::evalll" ref="faff0ad12556fe7dc0e2807d4fd938ee" args="" --> |
| 144 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#faff0ad12556fe7dc0e2807d4fd938ee">evalll</a></td></tr> |
| 145 | |
| 146 | <tr><td class="mdescLeft"> </td><td class="mdescRight">If true, the filter will compute likelihood of the data record and store it in <code>ll</code> . Set to false if you want to save computational time. <br></td></tr> |
| 147 | <tr><td colspan="2"><br><h2>Extension to conditional BM</h2></td></tr> |
| 148 | <tr><td colspan="2">This extension is useful e.g. in Marginalized Particle Filter (<a class="el" href="classbdm_1_1MPF.html">bdm::MPF</a>). Alternatively, it can be used for automated connection to <a class="el" href="classbdm_1_1DS.html" title="Abstract class for discrete-time sources of data.">DS</a> when the condition is observed <br><br></td></tr> |
| 149 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de95c590d650b2db423d53992f0906cb"></a><!-- doxytag: member="bdm::BM::rvc" ref="de95c590d650b2db423d53992f0906cb" args="" --> |
| 150 | <a class="el" href="classbdm_1_1RV.html">RV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#de95c590d650b2db423d53992f0906cb">rvc</a></td></tr> |
| 151 | |
| 152 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Name of extension variable. <br></td></tr> |
| 153 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b5e8e016be16e4029c789063cb3f3b33"></a><!-- doxytag: member="bdm::BM::_rvc" ref="b5e8e016be16e4029c789063cb3f3b33" args="() const " --> |
| 154 | const <a class="el" href="classbdm_1_1RV.html">RV</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#b5e8e016be16e4029c789063cb3f3b33">_rvc</a> () const </td></tr> |
| 155 | |
| 156 | <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> |
| 157 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6799f4b16a6a59ed58b1d0d6e17116f4"></a><!-- doxytag: member="bdm::BM::condition" ref="6799f4b16a6a59ed58b1d0d6e17116f4" args="(const vec &val)" --> |
| 158 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#6799f4b16a6a59ed58b1d0d6e17116f4">condition</a> (const vec &val)</td></tr> |
| 159 | |
| 160 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr> |
| 161 | <tr><td colspan="2"><br><h2>Logging of results</h2></td></tr> |
| 162 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="109c1a626a69031658e3a44e9e500cca"></a><!-- doxytag: member="bdm::BM::LIDs" ref="109c1a626a69031658e3a44e9e500cca" args="" --> |
| 163 | ivec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#109c1a626a69031658e3a44e9e500cca">LIDs</a></td></tr> |
| 164 | |
| 165 | <tr><td class="mdescLeft"> </td><td class="mdescRight">IDs of storages in loggers. <br></td></tr> |
| 166 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5e0000d2c9df99b029eceff222f7d77"></a><!-- doxytag: member="bdm::BM::opt_L_bounds" ref="a5e0000d2c9df99b029eceff222f7d77" args="" --> |
| 167 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#a5e0000d2c9df99b029eceff222f7d77">opt_L_bounds</a></td></tr> |
| 168 | |
| 169 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Option for logging bounds. <br></td></tr> |
| 170 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="224dd68a83c1472b43163763fa93c477"></a><!-- doxytag: member="bdm::BM::set_options" ref="224dd68a83c1472b43163763fa93c477" args="(const string &opt)" --> |
| 171 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#224dd68a83c1472b43163763fa93c477">set_options</a> (const string &opt)</td></tr> |
| 172 | |
| 173 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set boolean options from a string. <br></td></tr> |
| 174 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa5d1f7e638db229403e3917bf155ee3"></a><!-- doxytag: member="bdm::BM::log_add" ref="aa5d1f7e638db229403e3917bf155ee3" args="(logger *L, const string &name="")" --> |
| 175 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#aa5d1f7e638db229403e3917bf155ee3">log_add</a> (<a class="el" href="classbdm_1_1logger.html">logger</a> *L, const string &name="")</td></tr> |
| 176 | |
| 177 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Add all logged variables to a <a class="el" href="classbdm_1_1logger.html" title="Class for storing results (and semi-results) of an experiment.">logger</a>. <br></td></tr> |
| 178 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0647606eefbf294623bf664971c7d461"></a><!-- doxytag: member="bdm::BM::logit" ref="0647606eefbf294623bf664971c7d461" args="(logger *L)" --> |
| 179 | void </td><td class="memItemRight" valign="bottom"><b>logit</b> (<a class="el" href="classbdm_1_1logger.html">logger</a> *L)</td></tr> |
| 180 | |
| 181 | </table> |
| 182 | <hr><a name="_details"></a><h2>Detailed Description</h2> |
105 | | The value of <img class="formulaInl" alt="$ c_t $" src="form_119.png"> is set by function <a class="el" href="classbdm_1_1BM.html#6799f4b16a6a59ed58b1d0d6e17116f4" title="Substitute val for rvc.">condition()</a>. <table border="0" cellpadding="0" cellspacing="0"> |
106 | | <tr><td></td></tr> |
107 | | <tr><td colspan="2"><br><h2>Extension to conditional BM</h2></td></tr> |
108 | | <tr><td colspan="2">This extension is useful e.g. in Marginalized Particle Filter (<a class="el" href="classbdm_1_1MPF.html">bdm::MPF</a>). Alternatively, it can be used for automated connection to <a class="el" href="classbdm_1_1DS.html" title="Abstract class for discrete-time sources of data.">DS</a> when the condition is observed <br><br></td></tr> |
109 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de95c590d650b2db423d53992f0906cb"></a><!-- doxytag: member="bdm::BM::rvc" ref="de95c590d650b2db423d53992f0906cb" args="" --> |
110 | | <a class="el" href="classbdm_1_1RV.html">RV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#de95c590d650b2db423d53992f0906cb">rvc</a></td></tr> |
111 | | |
112 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Name of extension variable. <br></td></tr> |
113 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b5e8e016be16e4029c789063cb3f3b33"></a><!-- doxytag: member="bdm::BM::_rvc" ref="b5e8e016be16e4029c789063cb3f3b33" args="() const " --> |
114 | | const <a class="el" href="classbdm_1_1RV.html">RV</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#b5e8e016be16e4029c789063cb3f3b33">_rvc</a> () const </td></tr> |
115 | | |
116 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> |
117 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6799f4b16a6a59ed58b1d0d6e17116f4"></a><!-- doxytag: member="bdm::BM::condition" ref="6799f4b16a6a59ed58b1d0d6e17116f4" args="(const vec &val)" --> |
118 | | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#6799f4b16a6a59ed58b1d0d6e17116f4">condition</a> (const vec &val)</td></tr> |
119 | | |
120 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr> |
121 | | <tr><td colspan="2"><br><h2>Logging of results</h2></td></tr> |
122 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="109c1a626a69031658e3a44e9e500cca"></a><!-- doxytag: member="bdm::BM::LIDs" ref="109c1a626a69031658e3a44e9e500cca" args="" --> |
123 | | ivec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#109c1a626a69031658e3a44e9e500cca">LIDs</a></td></tr> |
124 | | |
125 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">IDs of storages in loggers. <br></td></tr> |
126 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5e0000d2c9df99b029eceff222f7d77"></a><!-- doxytag: member="bdm::BM::opt_L_bounds" ref="a5e0000d2c9df99b029eceff222f7d77" args="" --> |
127 | | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#a5e0000d2c9df99b029eceff222f7d77">opt_L_bounds</a></td></tr> |
128 | | |
129 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Option for logging bounds. <br></td></tr> |
130 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="224dd68a83c1472b43163763fa93c477"></a><!-- doxytag: member="bdm::BM::set_options" ref="224dd68a83c1472b43163763fa93c477" args="(const string &opt)" --> |
131 | | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#224dd68a83c1472b43163763fa93c477">set_options</a> (const string &opt)</td></tr> |
132 | | |
133 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set boolean options from a string. <br></td></tr> |
134 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa5d1f7e638db229403e3917bf155ee3"></a><!-- doxytag: member="bdm::BM::log_add" ref="aa5d1f7e638db229403e3917bf155ee3" args="(logger *L, const string &name="")" --> |
135 | | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#aa5d1f7e638db229403e3917bf155ee3">log_add</a> (<a class="el" href="classbdm_1_1logger.html">logger</a> *L, const string &name="")</td></tr> |
136 | | |
137 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Add all logged variables to a <a class="el" href="classbdm_1_1logger.html" title="Class for storing results (and semi-results) of an experiment.">logger</a>. <br></td></tr> |
138 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0647606eefbf294623bf664971c7d461"></a><!-- doxytag: member="bdm::BM::logit" ref="0647606eefbf294623bf664971c7d461" args="(logger *L)" --> |
139 | | void </td><td class="memItemRight" valign="bottom"><b>logit</b> (<a class="el" href="classbdm_1_1logger.html">logger</a> *L)</td></tr> |
140 | | |
141 | | <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
142 | | <tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr> |
143 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db12aecc3135e7868c664e39e7133756"></a><!-- doxytag: member="bdm::BM::BM" ref="db12aecc3135e7868c664e39e7133756" args="()" --> |
144 | | </td><td class="memItemRight" valign="bottom"><b>BM</b> ()</td></tr> |
145 | | |
146 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="241b3701190ff1f729fe873a2eef0055"></a><!-- doxytag: member="bdm::BM::BM" ref="241b3701190ff1f729fe873a2eef0055" args="(const BM &B)" --> |
147 | | </td><td class="memItemRight" valign="bottom"><b>BM</b> (const <a class="el" href="classbdm_1_1BM.html">BM</a> &B)</td></tr> |
148 | | |
149 | | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classbdm_1_1BM.html">BM</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#40f01563651c1e4fe926189e41a6b8ab">_copy_</a> () const </td></tr> |
150 | | |
151 | | <tr><td colspan="2"><div class="groupHeader">Mathematical operations</div></td></tr> |
152 | | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#60b1779a577367c369a932cabd3a6188">bayes</a> (const vec &dt)=0</td></tr> |
153 | | |
154 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Incremental Bayes rule. <a href="#60b1779a577367c369a932cabd3a6188"></a><br></td></tr> |
155 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1dee3fddaf021e62d925289660a707dc"></a><!-- doxytag: member="bdm::BM::bayesB" ref="1dee3fddaf021e62d925289660a707dc" args="(const mat &Dt)" --> |
156 | | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#1dee3fddaf021e62d925289660a707dc">bayesB</a> (const mat &Dt)</td></tr> |
157 | | |
158 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr> |
159 | | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#50257e0c1e5b5c73153ea6e716ad8ae0">logpred</a> (const vec &dt) const </td></tr> |
160 | | |
161 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e8ebe61fb14990abe1254bd3dda5fae"></a><!-- doxytag: member="bdm::BM::logpred_m" ref="0e8ebe61fb14990abe1254bd3dda5fae" args="(const mat &dt) const " --> |
162 | | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#0e8ebe61fb14990abe1254bd3dda5fae">logpred_m</a> (const mat &dt) const </td></tr> |
163 | | |
164 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Matrix version of logpred. <br></td></tr> |
165 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="688d7a2aced1e06aa1c468d73a9e5eba"></a><!-- doxytag: member="bdm::BM::epredictor" ref="688d7a2aced1e06aa1c468d73a9e5eba" args="() const " --> |
166 | | virtual <a class="el" href="classbdm_1_1epdf.html">epdf</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#688d7a2aced1e06aa1c468d73a9e5eba">epredictor</a> () const </td></tr> |
167 | | |
168 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a predictive density <img class="formulaInl" alt="$ f(d_{t+1} |d_{t}, \ldots d_{0}) $" src="form_49.png">. <br></td></tr> |
169 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="598b25e3f3d96a5bc00a5faeb5b3c912"></a><!-- doxytag: member="bdm::BM::predictor" ref="598b25e3f3d96a5bc00a5faeb5b3c912" args="() const " --> |
170 | | virtual <a class="el" href="classbdm_1_1mpdf.html">mpdf</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#598b25e3f3d96a5bc00a5faeb5b3c912">predictor</a> () const </td></tr> |
171 | | |
172 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a conditional density 1-step ahead predictor. <br></td></tr> |
173 | | <tr><td colspan="2"><div class="groupHeader">Access to attributes</div></td></tr> |
174 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff2d8755ba0b3def927d31305c03b09c"></a><!-- doxytag: member="bdm::BM::_drv" ref="ff2d8755ba0b3def927d31305c03b09c" args="() const " --> |
175 | | const <a class="el" href="classbdm_1_1RV.html">RV</a> & </td><td class="memItemRight" valign="bottom"><b>_drv</b> () const </td></tr> |
176 | | |
177 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f135ae6dce7e9f30c9f88229c7930b96"></a><!-- doxytag: member="bdm::BM::set_drv" ref="f135ae6dce7e9f30c9f88229c7930b96" args="(const RV &rv)" --> |
178 | | void </td><td class="memItemRight" valign="bottom"><b>set_drv</b> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &rv)</td></tr> |
179 | | |
180 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b38d92f17620813ad872d86e01a26e5e"></a><!-- doxytag: member="bdm::BM::set_rv" ref="b38d92f17620813ad872d86e01a26e5e" args="(const RV &rv)" --> |
181 | | void </td><td class="memItemRight" valign="bottom"><b>set_rv</b> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &rv)</td></tr> |
182 | | |
183 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5be65d37dedfe33a3671e7065f523a70"></a><!-- doxytag: member="bdm::BM::_ll" ref="5be65d37dedfe33a3671e7065f523a70" args="() const " --> |
184 | | double </td><td class="memItemRight" valign="bottom"><b>_ll</b> () const </td></tr> |
185 | | |
186 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="236b3abbcc93594fc97cd86d82c1a83f"></a><!-- doxytag: member="bdm::BM::set_evalll" ref="236b3abbcc93594fc97cd86d82c1a83f" args="(bool evl0)" --> |
187 | | void </td><td class="memItemRight" valign="bottom"><b>set_evalll</b> (bool evl0)</td></tr> |
188 | | |
189 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bb7b0065d6cb722a66b371a8260121e1"></a><!-- doxytag: member="bdm::BM::posterior" ref="bb7b0065d6cb722a66b371a8260121e1" args="() const =0" --> |
190 | | virtual const <a class="el" href="classbdm_1_1epdf.html">epdf</a> & </td><td class="memItemRight" valign="bottom"><b>posterior</b> () const =0</td></tr> |
191 | | |
192 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ed0f8b880e606316ae800f3a011c3a6"></a><!-- doxytag: member="bdm::BM::_e" ref="4ed0f8b880e606316ae800f3a011c3a6" args="() const =0" --> |
193 | | virtual const <a class="el" href="classbdm_1_1epdf.html">epdf</a> * </td><td class="memItemRight" valign="bottom"><b>_e</b> () const =0</td></tr> |
194 | | |
195 | | <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> |
196 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c400357e37d27a4834b2b1d9211009ed"></a><!-- doxytag: member="bdm::BM::drv" ref="c400357e37d27a4834b2b1d9211009ed" args="" --> |
197 | | <a class="el" href="classbdm_1_1RV.html">RV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#c400357e37d27a4834b2b1d9211009ed">drv</a></td></tr> |
198 | | |
199 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Random variable of the data (optional). <br></td></tr> |
200 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4064b6559d962633e4372b12f4cd204a"></a><!-- doxytag: member="bdm::BM::ll" ref="4064b6559d962633e4372b12f4cd204a" args="" --> |
201 | | double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#4064b6559d962633e4372b12f4cd204a">ll</a></td></tr> |
202 | | |
203 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr> |
204 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="faff0ad12556fe7dc0e2807d4fd938ee"></a><!-- doxytag: member="bdm::BM::evalll" ref="faff0ad12556fe7dc0e2807d4fd938ee" args="" --> |
205 | | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#faff0ad12556fe7dc0e2807d4fd938ee">evalll</a></td></tr> |
206 | | |
207 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">If true, the filter will compute likelihood of the data record and store it in <code>ll</code> . Set to false if you want to save computational time. <br></td></tr> |
208 | | </table> |
209 | | <hr><h2>Member Function Documentation</h2> |
| 195 | The value of <img class="formulaInl" alt="$ c_t $" src="form_119.png"> is set by function <a class="el" href="classbdm_1_1BM.html#6799f4b16a6a59ed58b1d0d6e17116f4" title="Substitute val for rvc.">condition()</a>. <hr><h2>Member Function Documentation</h2> |