Changeset 270 for doc/html/classbdm_1_1Kalman.html
- Timestamp:
- 02/16/09 10:02:08 (16 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
doc/html/classbdm_1_1Kalman.html
r269 r270 29 29 </div> 30 30 <div class="contents"> 31 <h1>bdm::Kalman< sq_T > Class Template Reference</h1><!-- doxytag: class="bdm::Kalman" --><!-- doxytag: inherits="bdm::BM" --><a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with covariance matrices in square root form. 32 <a href="#_details">More...</a> 33 <p> 34 <code>#include <<a class="el" href="libKF_8h-source.html">libKF.h</a>></code> 31 <h1>bdm::Kalman< sq_T > Class Template Reference</h1><!-- doxytag: class="bdm::Kalman" --><!-- doxytag: inherits="bdm::BM" --><code>#include <<a class="el" href="libKF_8h-source.html">libKF.h</a>></code> 35 32 <p> 36 33 <div class="dynheader"> … … 41 38 <area shape="rect" href="classbdm_1_1Kalman.html" title="bdm::Kalman\< ldmat \>" alt="" coords="92,263,265,289"><area shape="rect" href="classbdm_1_1Kalman.html" title="bdm::Kalman\< chmat \>" alt="" coords="289,263,465,289"><area shape="rect" href="classbdm_1_1Kalman.html" title="bdm::Kalman\< fsqmat \>" alt="" coords="489,263,671,289"><area shape="rect" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities." alt="" coords="339,87,416,113"><area shape="rect" href="classbdm_1_1bdmroot.html" title="Root class of BDM objects." alt="" coords="321,7,433,33"><area shape="rect" href="classbdm_1_1KFcondQR.html" title="Kalman Filter with conditional diagonal matrices R and Q." alt="" coords="5,343,128,369"><area shape="rect" href="classbdm_1_1KFcondR.html" title="Kalman Filter with conditional diagonal matrices R and Q." alt="" coords="152,343,264,369"><area shape="rect" href="classbdm_1_1KalmanCh.html" title="Kalman filter in square root form." alt="" coords="316,343,439,369"><area shape="rect" href="classbdm_1_1EKFCh.html" title="Extended Kalman Filter in Square root." alt="" coords="328,423,427,449"><area shape="rect" href="classbdm_1_1EKFCh__cond.html" title="Extended Kalman filter with unknown parameters in IM." alt="" coords="231,503,367,529"><area shape="rect" href="classbdm_1_1EKFCh__unQ.html" title="Extended Kalman filter in Choleski form with unknown Q." alt="" coords="391,503,521,529"><area shape="rect" href="classbdm_1_1EKF.html" title="Extended Kalman Filter." alt="" coords="511,343,649,369"></map> 42 39 <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 43 <div class="dynheader"> 44 Collaboration diagram for bdm::Kalman< sq_T >:</div> 45 <div class="dynsection"> 46 <p><center><img src="classbdm_1_1Kalman__coll__graph.png" border="0" usemap="#bdm_1_1Kalman_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center> 47 <map name="bdm_1_1Kalman_3_01sq__T_01_4__coll__map"> 48 <area shape="rect" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities." alt="" coords="5,201,83,228"><area shape="rect" href="classbdm_1_1bdmroot.html" title="Root class of BDM objects." alt="" coords="15,7,127,33"><area shape="rect" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables." alt="" coords="81,87,156,113"></map> 49 <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> 50 51 <p> 52 <a href="classbdm_1_1Kalman-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 40 41 <p> 42 <a href="classbdm_1_1Kalman-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> 43 <h3>template<class sq_T><br> 44 class bdm::Kalman< sq_T ></h3> 45 46 <a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with covariance matrices in square root form. 47 <p> 48 Parameter evolution model:<p class="formulaDsp"> 49 <img class="formulaDsp" alt="\[ x_t = A x_{t-1} + B u_t + Q^{1/2} e_t \]" src="form_6.png"> 50 <p> 51 Observation model: <p class="formulaDsp"> 52 <img class="formulaDsp" alt="\[ y_t = C x_{t-1} + C u_t + Q^{1/2} w_t. \]" src="form_7.png"> 53 <p> 54 Where $e_t$ and $w_t$ are independent vectors Normal(0,1)-distributed disturbances. <table border="0" cellpadding="0" cellspacing="0"> 53 55 <tr><td></td></tr> 54 56 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 55 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name=" 7d8fae1d89d796e3fd40d9e088c432ab"></a><!-- doxytag: member="bdm::Kalman::Kalman" ref="7d8fae1d89d796e3fd40d9e088c432ab" args="(RV rvx0, RV rvy0, RV rvu0)" -->56 </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1Kalman.html# 7d8fae1d89d796e3fd40d9e088c432ab">Kalman</a> (<a class="el" href="classbdm_1_1RV.html">RV</a> rvx0, <a class="el" href="classbdm_1_1RV.html">RV</a> rvy0, <a class="el" href="classbdm_1_1RV.html">RV</a> rvu0)</td></tr>57 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="025a0196cbcc2e6adb13311f9d3d52b4"></a><!-- doxytag: member="bdm::Kalman::Kalman" ref="025a0196cbcc2e6adb13311f9d3d52b4" args="()" --> 58 </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1Kalman.html#025a0196cbcc2e6adb13311f9d3d52b4">Kalman</a> ()</td></tr> 57 59 58 60 <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br></td></tr> … … 78 80 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 79 81 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c34989b1e53c7d4ecdaea63a95ddbd77"></a><!-- doxytag: member="bdm::Kalman::_e" ref="c34989b1e53c7d4ecdaea63a95ddbd77" args="() const " --> 80 const <a class="el" href="classbdm_1_1enorm.html">enorm</a>< sq_T > * </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1Kalman.html#c34989b1e53c7d4ecdaea63a95ddbd77">_e</a> () const </td></tr> 81 82 <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to the <a class="el" href="classbdm_1_1epdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a> representing posterior density on parameters. Use with care! <br></td></tr> 82 const <a class="el" href="classbdm_1_1enorm.html">enorm</a>< sq_T > * </td><td class="memItemRight" valign="bottom"><b>_e</b> () const </td></tr> 83 83 84 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c788ec6e6c6f5f5861ae8a56d8ede277"></a><!-- doxytag: member="bdm::Kalman::__K" ref="c788ec6e6c6f5f5861ae8a56d8ede277" args="()" --> 84 85 mat & </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1Kalman.html#c788ec6e6c6f5f5861ae8a56d8ede277">__K</a> ()</td></tr> … … 89 90 90 91 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 92 <tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr> 93 <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#c0f027ff91d8459937c6f60ff8e553ff">_copy_</a> ()</td></tr> 94 95 <tr><td colspan="2"><div class="groupHeader">Mathematical operations</div></td></tr> 91 96 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1dee3fddaf021e62d925289660a707dc"></a><!-- doxytag: member="bdm::Kalman::bayesB" ref="1dee3fddaf021e62d925289660a707dc" args="(const mat &Dt)" --> 92 97 virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#1dee3fddaf021e62d925289660a707dc">bayesB</a> (const mat &Dt)</td></tr> … … 99 104 100 105 <tr><td class="mdescLeft"> </td><td class="mdescRight">Matrix version of logpred. <br></td></tr> 101 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="710e7d69c0d8791fb41a7cd4683cca2c"></a><!-- doxytag: member="bdm::Kalman::predictor" ref="710e7d69c0d8791fb41a7cd4683cca2c" args="(const RV &rv) const " --> 102 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#710e7d69c0d8791fb41a7cd4683cca2c">predictor</a> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &<a class="el" href="classbdm_1_1BM.html#18d6db4af8ee42077741d9e3618153ca">rv</a>) const </td></tr> 103 104 <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a predictive density (marginal density on data). <br></td></tr> 105 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="40a3c891996391e3135518053a917793"></a><!-- doxytag: member="bdm::Kalman::_rv" ref="40a3c891996391e3135518053a917793" args="() const " --> 106 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#40a3c891996391e3135518053a917793">_rv</a> () const </td></tr> 107 108 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 106 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="688d7a2aced1e06aa1c468d73a9e5eba"></a><!-- doxytag: member="bdm::Kalman::epredictor" ref="688d7a2aced1e06aa1c468d73a9e5eba" args="() const " --> 107 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> 108 109 <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_112.png">. <br></td></tr> 110 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="598b25e3f3d96a5bc00a5faeb5b3c912"></a><!-- doxytag: member="bdm::Kalman::predictor" ref="598b25e3f3d96a5bc00a5faeb5b3c912" args="() const " --> 111 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> 112 113 <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a conditional density 1-step ahead predictor. <br></td></tr> 114 <tr><td colspan="2"><div class="groupHeader">Access to attributes</div></td></tr> 109 115 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff2d8755ba0b3def927d31305c03b09c"></a><!-- doxytag: member="bdm::Kalman::_drv" ref="ff2d8755ba0b3def927d31305c03b09c" args="() const " --> 110 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#ff2d8755ba0b3def927d31305c03b09c">_drv</a> () const </td></tr> 111 112 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 116 const <a class="el" href="classbdm_1_1RV.html">RV</a> & </td><td class="memItemRight" valign="bottom"><b>_drv</b> () const </td></tr> 117 113 118 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f135ae6dce7e9f30c9f88229c7930b96"></a><!-- doxytag: member="bdm::Kalman::set_drv" ref="f135ae6dce7e9f30c9f88229c7930b96" args="(const RV &rv)" --> 114 void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#f135ae6dce7e9f30c9f88229c7930b96">set_drv</a> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &<a class="el" href="classbdm_1_1BM.html#18d6db4af8ee42077741d9e3618153ca">rv</a>)</td></tr> 115 116 <tr><td class="mdescLeft"> </td><td class="mdescRight">set drv <br></td></tr> 119 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> 120 117 121 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5be65d37dedfe33a3671e7065f523a70"></a><!-- doxytag: member="bdm::Kalman::_ll" ref="5be65d37dedfe33a3671e7065f523a70" args="() const " --> 118 double </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#5be65d37dedfe33a3671e7065f523a70">_ll</a> () const </td></tr> 119 120 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 122 double </td><td class="memItemRight" valign="bottom"><b>_ll</b> () const </td></tr> 123 121 124 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="236b3abbcc93594fc97cd86d82c1a83f"></a><!-- doxytag: member="bdm::Kalman::set_evalll" ref="236b3abbcc93594fc97cd86d82c1a83f" args="(bool evl0)" --> 122 void </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#236b3abbcc93594fc97cd86d82c1a83f">set_evalll</a> (bool evl0)</td></tr> 123 124 <tr><td class="mdescLeft"> </td><td class="mdescRight">access function <br></td></tr> 125 <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#3efb3098172f1f67564a312fe732473e">_copy_</a> (bool changerv=false)</td></tr> 125 void </td><td class="memItemRight" valign="bottom"><b>set_evalll</b> (bool evl0)</td></tr> 126 126 127 127 <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> … … 198 198 199 199 <tr><td class="mdescLeft"> </td><td class="mdescRight">cache of est.R <br></td></tr> 200 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="18d6db4af8ee42077741d9e3618153ca"></a><!-- doxytag: member="bdm::Kalman::rv" ref="18d6db4af8ee42077741d9e3618153ca" args="" -->201 <a class="el" href="classbdm_1_1RV.html">RV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1BM.html#18d6db4af8ee42077741d9e3618153ca">rv</a></td></tr>202 203 <tr><td class="mdescLeft"> </td><td class="mdescRight">Random variable of the posterior. <br></td></tr>204 200 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c400357e37d27a4834b2b1d9211009ed"></a><!-- doxytag: member="bdm::Kalman::drv" ref="c400357e37d27a4834b2b1d9211009ed" args="" --> 205 201 <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> … … 215 211 <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> 216 212 </table> 217 <hr><a name="_details"></a><h2>Detailed Description</h2> 218 <h3>template<class sq_T><br> 219 class bdm::Kalman< sq_T ></h3> 220 221 <a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with covariance matrices in square root form. 222 <p> 223 Parameter evolution model:<p class="formulaDsp"> 224 <img class="formulaDsp" alt="\[ x_t = A x_{t-1} + B u_t + Q^{1/2} e_t \]" src="form_6.png"> 225 <p> 226 Observation model: <p class="formulaDsp"> 227 <img class="formulaDsp" alt="\[ y_t = C x_{t-1} + C u_t + Q^{1/2} w_t. \]" src="form_7.png"> 228 <p> 229 Where $e_t$ and $w_t$ are independent vectors Normal(0,1)-distributed disturbances. <hr><h2>Member Function Documentation</h2> 213 <hr><h2>Member Function Documentation</h2> 214 <a class="anchor" name="c0f027ff91d8459937c6f60ff8e553ff"></a><!-- doxytag: member="bdm::Kalman::_copy_" ref="c0f027ff91d8459937c6f60ff8e553ff" args="()" --> 215 <div class="memitem"> 216 <div class="memproto"> 217 <table class="memname"> 218 <tr> 219 <td class="memname">virtual <a class="el" href="classbdm_1_1BM.html">BM</a>* bdm::BM::_copy_ </td> 220 <td>(</td> 221 <td class="paramname"> </td> 222 <td> ) </td> 223 <td><code> [inline, virtual, inherited]</code></td> 224 </tr> 225 </table> 226 </div> 227 <div class="memdoc"> 228 229 <p> 230 Copy function required in vectors, Arrays of <a class="el" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> etc. Have to be DELETED manually! Prototype: <div class="fragment"><pre class="fragment"> BM* <a class="code" href="classbdm_1_1BM.html#c0f027ff91d8459937c6f60ff8e553ff">_copy_</a>(){<span class="keywordflow">return</span> <span class="keyword">new</span> BM(*<span class="keyword">this</span>);} 231 </pre></div> 232 <p>Reimplemented in <a class="el" href="classbdm_1_1ARX.html#60c40b5c6abc4c7e464b4ccae64a5a61">bdm::ARX</a>.</p> 233 234 </div> 235 </div><p> 230 236 <a class="anchor" name="50257e0c1e5b5c73153ea6e716ad8ae0"></a><!-- doxytag: member="bdm::Kalman::logpred" ref="50257e0c1e5b5c73153ea6e716ad8ae0" args="(const vec &dt) const " --> 231 237 <div class="memitem"> … … 248 254 <p>Reimplemented in <a class="el" href="classbdm_1_1ARX.html#080a7e531e3aa06694112863b15bc6a4">bdm::ARX</a>, <a class="el" href="classbdm_1_1MixEF.html#da724da464a75e07521941e430929efa">bdm::MixEF</a>, and <a class="el" href="classbdm_1_1multiBM.html#e157b607c1e3fa91d42aeea44458e2bf">bdm::multiBM</a>.</p> 249 255 250 <p>Referenced by <a class="el" href="libBM_8h-source.html#l00535">bdm::BM::logpred_m()</a>.</p> 251 252 </div> 253 </div><p> 254 <a class="anchor" name="3efb3098172f1f67564a312fe732473e"></a><!-- doxytag: member="bdm::Kalman::_copy_" ref="3efb3098172f1f67564a312fe732473e" args="(bool changerv=false)" --> 255 <div class="memitem"> 256 <div class="memproto"> 257 <table class="memname"> 258 <tr> 259 <td class="memname">virtual <a class="el" href="classbdm_1_1BM.html">BM</a>* bdm::BM::_copy_ </td> 260 <td>(</td> 261 <td class="paramtype">bool </td> 262 <td class="paramname"> <em>changerv</em> = <code>false</code> </td> 263 <td> ) </td> 264 <td><code> [inline, virtual, inherited]</code></td> 265 </tr> 266 </table> 267 </div> 268 <div class="memdoc"> 269 270 <p> 271 Copy function required in vectors, Arrays of <a class="el" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> etc. Have to be DELETED manually! Prototype: BM* <a class="el" href="classbdm_1_1BM.html#3efb3098172f1f67564a312fe732473e">_copy_()</a>{<a class="el" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> Tmp*=new Tmp(this*); return Tmp; } 272 <p>Reimplemented in <a class="el" href="classbdm_1_1ARX.html#20ff2de8d862f28de7da83444d65bcdb">bdm::ARX</a>, and <a class="el" href="classbdm_1_1BMEF.html#5912dbcf28ae711e30b08c2fa766a3e6">bdm::BMEF</a>.</p> 256 <p>Referenced by <a class="el" href="libBM_8h-source.html#l00608">bdm::BM::logpred_m()</a>.</p> 273 257 274 258 </div> … … 277 261 <li><a class="el" href="libKF_8h-source.html">libKF.h</a></ul> 278 262 </div> 279 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Feb 11 10:20:342009 for mixpp by 263 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Feb 11 23:34:02 2009 for mixpp by 280 264 <a href="http://www.doxygen.org/index.html"> 281 265 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>