| 92 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6b4d1cb8d7e230e313b4f0c905874d5a"></a><!-- doxytag: member="bdm::mlognorm::e" ref="6b4d1cb8d7e230e313b4f0c905874d5a" args="()" --> |
| 93 | <a class="el" href="classbdm_1_1elognorm.html">elognorm</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#6b4d1cb8d7e230e313b4f0c905874d5a">e</a> ()</td></tr> |
| 94 | |
| 95 | <tr><td class="mdescLeft"> </td><td class="mdescRight">access function to iepdf <br></td></tr> |
| 96 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d8e547695d1cc19219b91164d825c930"></a><!-- doxytag: member="bdm::mlognorm::samplecond" ref="d8e547695d1cc19219b91164d825c930" args="(const vec &cond)" --> |
| 97 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#d8e547695d1cc19219b91164d825c930">samplecond</a> (const vec &cond)</td></tr> |
| 98 | |
| 99 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Reimplements samplecond using <code>condition()</code>. <br></td></tr> |
| 100 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="89076e62b8d7df7616bad68c94591948"></a><!-- doxytag: member="bdm::mlognorm::evallogcond" ref="89076e62b8d7df7616bad68c94591948" args="(const vec &val, const vec &cond)" --> |
| 101 | double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#89076e62b8d7df7616bad68c94591948">evallogcond</a> (const vec &val, const vec &cond)</td></tr> |
| 102 | |
| 103 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Reimplements evallogcond using <code>condition()</code>. <br></td></tr> |
| 104 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e28c214e3063733a6e4d17738941c61c"></a><!-- doxytag: member="bdm::mlognorm::evallogcond_m" ref="e28c214e3063733a6e4d17738941c61c" args="(const mat &Dt, const vec &cond)" --> |
| 105 | virtual vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#e28c214e3063733a6e4d17738941c61c">evallogcond_m</a> (const mat &Dt, const vec &cond)</td></tr> |
| 106 | |
| 107 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Efficient version of evallogcond for matrices. <br></td></tr> |
| 108 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e82db07ce8af02f29cfd81e014edb3db"></a><!-- doxytag: member="bdm::mlognorm::evallogcond_m" ref="e82db07ce8af02f29cfd81e014edb3db" args="(const Array< vec > &Dt, const vec &cond)" --> |
| 109 | virtual vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#e82db07ce8af02f29cfd81e014edb3db">evallogcond_m</a> (const Array< vec > &Dt, const vec &cond)</td></tr> |
| 110 | |
| 111 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Efficient version of evallogcond for Array<vec>. <br></td></tr> |
| 112 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9554c554054da2d22cb8e908ae9c8823"></a><!-- doxytag: member="bdm::mlognorm::samplecond_m" ref="9554c554054da2d22cb8e908ae9c8823" args="(const vec &cond, int N)" --> |
| 113 | virtual mat </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf__internal.html#9554c554054da2d22cb8e908ae9c8823">samplecond_m</a> (const vec &cond, int N)</td></tr> |
| 114 | |
| 115 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Efficient version of samplecond. <br></td></tr> |
106 | | <tr><td colspan="2"><div class="groupHeader">Matematical operations</div></td></tr> |
107 | | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#b024f2e636e5507c755de4a6df1f1e99">samplecond</a> (const vec &cond)</td></tr> |
108 | | |
109 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a sample from the density conditioned on <code>cond</code>, <img class="formulaInl" alt="$x \sim epdf(rv|cond)$" src="form_11.png">. <a href="#b024f2e636e5507c755de4a6df1f1e99"></a><br></td></tr> |
110 | | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual mat </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#6e497d501331057309d2fddf63259d1a">samplecond_m</a> (const vec &cond, int N)</td></tr> |
111 | | |
112 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns. <a href="#6e497d501331057309d2fddf63259d1a"></a><br></td></tr> |
113 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cfcbb897bf42015a7979b17d891fd9b5"></a><!-- doxytag: member="bdm::mlognorm::evallogcond" ref="cfcbb897bf42015a7979b17d891fd9b5" args="(const vec &dt, const vec &cond)" --> |
114 | | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#cfcbb897bf42015a7979b17d891fd9b5">evallogcond</a> (const vec &dt, const vec &cond)</td></tr> |
115 | | |
116 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Shortcut for conditioning and evaluation of the internal <a class="el" href="classbdm_1_1epdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>. In some cases, this operation can be implemented efficiently. <br></td></tr> |
117 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f97c61ecfb1f44ef6f08dee7bc15eab3"></a><!-- doxytag: member="bdm::mlognorm::evallogcond_m" ref="f97c61ecfb1f44ef6f08dee7bc15eab3" args="(const mat &Dt, const vec &cond)" --> |
118 | | virtual vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#f97c61ecfb1f44ef6f08dee7bc15eab3">evallogcond_m</a> (const mat &Dt, const vec &cond)</td></tr> |
119 | | |
120 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Matrix version of evallogcond. <br></td></tr> |
121 | | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d7d3c23e3273e97c12c396dcc06b606"></a><!-- doxytag: member="bdm::mlognorm::evallogcond_m" ref="2d7d3c23e3273e97c12c396dcc06b606" args="(const Array< vec > &Dt, const vec &cond)" --> |
122 | | virtual vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#2d7d3c23e3273e97c12c396dcc06b606">evallogcond_m</a> (const Array< vec > &Dt, const vec &cond)</td></tr> |
123 | | |
124 | | <tr><td class="mdescLeft"> </td><td class="mdescRight">Array<vec> version of evallogcond. <br></td></tr> |
| 151 | <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> |
| 152 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="147afacb393324bb3f9a7a89e33f835e"></a><!-- doxytag: member="bdm::mlognorm::set_ep" ref="147afacb393324bb3f9a7a89e33f835e" args="(epdf &iepdf)" --> |
| 153 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#147afacb393324bb3f9a7a89e33f835e">set_ep</a> (<a class="el" href="classbdm_1_1epdf.html">epdf</a> &<a class="el" href="classbdm_1_1mpdf__internal.html#47bab632af15120c88aad647ae129468">iepdf</a>)</td></tr> |
| 154 | |
| 155 | <tr><td class="mdescLeft"> </td><td class="mdescRight">set internal pointer <code>ep</code> to point to given <code>iepdf</code> <br></td></tr> |
| 156 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7555b377f8b5895c9b759c9628ee3e20"></a><!-- doxytag: member="bdm::mlognorm::set_ep" ref="7555b377f8b5895c9b759c9628ee3e20" args="(epdf *iepdfp)" --> |
| 157 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1mpdf.html#7555b377f8b5895c9b759c9628ee3e20">set_ep</a> (<a class="el" href="classbdm_1_1epdf.html">epdf</a> *iepdfp)</td></tr> |
| 158 | |
| 159 | <tr><td class="mdescLeft"> </td><td class="mdescRight">set internal pointer <code>ep</code> to point to given <code>iepdf</code> <br></td></tr> |
| 188 | <a class="anchor" name="9106d8fd8bdf2b6be675ffd8f3ca584e"></a><!-- doxytag: member="bdm::mlognorm::condition" ref="9106d8fd8bdf2b6be675ffd8f3ca584e" args="(const vec &val)" --> |
| 189 | <div class="memitem"> |
| 190 | <div class="memproto"> |
| 191 | <table class="memname"> |
| 192 | <tr> |
| 193 | <td class="memname">void bdm::mlognorm::condition </td> |
| 194 | <td>(</td> |
| 195 | <td class="paramtype">const vec & </td> |
| 196 | <td class="paramname"> <em>cond</em> </td> |
| 197 | <td> ) </td> |
| 198 | <td><code> [inline, virtual]</code></td> |
| 199 | </tr> |
| 200 | </table> |
| 201 | </div> |
| 202 | <div class="memdoc"> |
| 203 | |
| 204 | <p> |
| 205 | Update <code>iepdf</code> so that it represents this <a class="el" href="classbdm_1_1mpdf.html" title="Conditional probability density, e.g. modeling , where is random variable, rv, and...">mpdf</a> conditioned on <code>rvc</code> = cond This function provides convenient reimplementation in offsprings |
| 206 | <p>Reimplemented from <a class="el" href="classbdm_1_1mpdf__internal.html#1ac61da081667fc54bcd050cc4f6a93e">bdm::mpdf_internal< elognorm ></a>.</p> |
| 207 | |
| 208 | <p>References <a class="el" href="exp__family_8h-source.html#l00914">mu</a>, and <a class="el" href="exp__family_8h-source.html#l00911">sig2</a>.</p> |
| 209 | |
| 210 | <p>Referenced by <a class="el" href="exp__family_8cpp-source.html#l00336">from_setting()</a>.</p> |
| 211 | |
| 212 | </div> |
| 213 | </div><p> |
199 | | The <a class="el" href="classbdm_1_1mlognorm.html" title="Log-Normal random walk.">mlognorm</a> is constructed from a structure with fields: <div class="fragment"><pre class="fragment"> system = { |
200 | | type = <span class="stringliteral">"mlognorm"</span>; |
201 | | k = 0.1; <span class="comment">// constant k</span> |
202 | | mu0 = [1., 1.]; |
203 | | |
204 | | <span class="comment">// == OPTIONAL ==</span> |
205 | | <span class="comment">// description of y variables</span> |
206 | | y = {type=<span class="stringliteral">"rv"</span>; names=[<span class="stringliteral">"y"</span>, <span class="stringliteral">"u"</span>];}; |
207 | | <span class="comment">// description of u variable</span> |
208 | | u = {type=<span class="stringliteral">"rv"</span>; names=[];} |
209 | | }; |
| 232 | The <a class="el" href="classbdm_1_1mlognorm.html" title="Log-Normal random walk.">mlognorm</a> is constructed from a structure with fields: <div class="fragment"><pre class="fragment"> system = { |
| 233 | type = <span class="stringliteral">"mlognorm"</span>; |
| 234 | k = 0.1; <span class="comment">// constant k</span> |
| 235 | mu0 = [1., 1.]; |
| 236 | |
| 237 | <span class="comment">// == OPTIONAL ==</span> |
| 238 | <span class="comment">// description of y variables</span> |
| 239 | y = {type=<span class="stringliteral">"rv"</span>; names=[<span class="stringliteral">"y"</span>, <span class="stringliteral">"u"</span>];}; |
| 240 | <span class="comment">// description of u variable</span> |
| 241 | u = {type=<span class="stringliteral">"rv"</span>; names=[];} |
| 242 | }; |
213 | | <p>References <a class="el" href="exp__family_8h_source.html#l00946">condition()</a>, <a class="el" href="user__info_8h_source.html#l00387">bdm::UI::get()</a>, and <a class="el" href="exp__family_8h_source.html#l00938">set_parameters()</a>.</p> |
214 | | |
215 | | </div> |
216 | | </div><p> |
217 | | <a class="anchor" name="b024f2e636e5507c755de4a6df1f1e99"></a><!-- doxytag: member="bdm::mlognorm::samplecond" ref="b024f2e636e5507c755de4a6df1f1e99" args="(const vec &cond)" --> |
218 | | <div class="memitem"> |
219 | | <div class="memproto"> |
220 | | <table class="memname"> |
221 | | <tr> |
222 | | <td class="memname">vec bdm::mpdf::samplecond </td> |
223 | | <td>(</td> |
224 | | <td class="paramtype">const vec & </td> |
225 | | <td class="paramname"> <em>cond</em> </td> |
226 | | <td> ) </td> |
227 | | <td><code> [virtual, inherited]</code></td> |
228 | | </tr> |
229 | | </table> |
230 | | </div> |
231 | | <div class="memdoc"> |
232 | | |
233 | | <p> |
234 | | Returns a sample from the density conditioned on <code>cond</code>, <img class="formulaInl" alt="$x \sim epdf(rv|cond)$" src="form_11.png">. |
235 | | <p> |
236 | | <dl compact><dt><b>Parameters:</b></dt><dd> |
237 | | <table border="0" cellspacing="2" cellpadding="0"> |
238 | | <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>is numeric value of <code>rv</code> </td></tr> |
239 | | </table> |
240 | | </dl> |
241 | | |
242 | | <p>Reimplemented in <a class="el" href="classbdm_1_1mprod.html#ee715a8013acf9892f6cb489db595555">bdm::mprod</a>.</p> |
243 | | |
244 | | <p>References <a class="el" href="bdmbase_8h_source.html#l00376">bdm::mpdf::condition()</a>.</p> |
245 | | |
246 | | <p>Referenced by <a class="el" href="particles_8h_source.html#l00207">bdm::MPF< BM_T >::bayes()</a>, <a class="el" href="particles_8cpp_source.html#l00007">bdm::PF::bayes()</a>, and <a class="el" href="datasources_8cpp_source.html#l00043">bdm::ArxDS::step()</a>.</p> |
247 | | |
248 | | </div> |
249 | | </div><p> |
250 | | <a class="anchor" name="6e497d501331057309d2fddf63259d1a"></a><!-- doxytag: member="bdm::mlognorm::samplecond_m" ref="6e497d501331057309d2fddf63259d1a" args="(const vec &cond, int N)" --> |
251 | | <div class="memitem"> |
252 | | <div class="memproto"> |
253 | | <table class="memname"> |
254 | | <tr> |
255 | | <td class="memname">mat bdm::mpdf::samplecond_m </td> |
256 | | <td>(</td> |
257 | | <td class="paramtype">const vec & </td> |
258 | | <td class="paramname"> <em>cond</em>, </td> |
259 | | </tr> |
260 | | <tr> |
261 | | <td class="paramkey"></td> |
262 | | <td></td> |
263 | | <td class="paramtype">int </td> |
264 | | <td class="paramname"> <em>N</em></td><td> </td> |
265 | | </tr> |
266 | | <tr> |
267 | | <td></td> |
268 | | <td>)</td> |
269 | | <td></td><td></td><td><code> [virtual, inherited]</code></td> |
270 | | </tr> |
271 | | </table> |
272 | | </div> |
273 | | <div class="memdoc"> |
274 | | |
275 | | <p> |
276 | | Returns. |
277 | | <p> |
278 | | <dl compact><dt><b>Parameters:</b></dt><dd> |
279 | | <table border="0" cellspacing="2" cellpadding="0"> |
280 | | <tr><td valign="top"></td><td valign="top"><em>N</em> </td><td>samples from the density conditioned on <code>cond</code>, <img class="formulaInl" alt="$x \sim epdf(rv|cond)$" src="form_11.png">. </td></tr> |
281 | | <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>is numeric value of <code>rv</code> </td></tr> |
282 | | </table> |
283 | | </dl> |
284 | | |
285 | | <p>References <a class="el" href="bdmbase_8h_source.html#l00376">bdm::mpdf::condition()</a>.</p> |
| 246 | <p>References <a class="el" href="exp__family_8h-source.html#l00930">condition()</a>, <a class="el" href="user__info_8h-source.html#l00410">bdm::UI::get()</a>, and <a class="el" href="exp__family_8h-source.html#l00923">set_parameters()</a>.</p> |