[23] | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
---|
| 2 | <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> |
---|
| 3 | <title>mixpp: EKF< sq_T > Class Template Reference</title> |
---|
| 4 | <link href="doxygen.css" rel="stylesheet" type="text/css"> |
---|
| 5 | <link href="tabs.css" rel="stylesheet" type="text/css"> |
---|
| 6 | </head><body> |
---|
| 7 | <!-- Generated by Doxygen 1.5.3 --> |
---|
| 8 | <div class="tabs"> |
---|
| 9 | <ul> |
---|
| 10 | <li><a href="index.html"><span>Main Page</span></a></li> |
---|
| 11 | <li class="current"><a href="annotated.html"><span>Classes</span></a></li> |
---|
| 12 | <li><a href="files.html"><span>Files</span></a></li> |
---|
[28] | 13 | <li><a href="pages.html"><span>Related Pages</span></a></li> |
---|
[23] | 14 | </ul> |
---|
| 15 | </div> |
---|
| 16 | <div class="tabs"> |
---|
| 17 | <ul> |
---|
| 18 | <li><a href="annotated.html"><span>Class List</span></a></li> |
---|
| 19 | <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> |
---|
| 20 | <li><a href="functions.html"><span>Class Members</span></a></li> |
---|
| 21 | </ul> |
---|
| 22 | </div> |
---|
| 23 | <h1>EKF< sq_T > Class Template Reference</h1><!-- doxytag: class="EKF" --><!-- doxytag: inherits="Kalman< fsqmat >" -->Extended <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> Filter. |
---|
| 24 | <a href="#_details">More...</a> |
---|
| 25 | <p> |
---|
| 26 | <code>#include <<a class="el" href="libKF_8h-source.html">libKF.h</a>></code> |
---|
| 27 | <p> |
---|
| 28 | <div class="dynheader"> |
---|
| 29 | Inheritance diagram for EKF< sq_T >:</div> |
---|
| 30 | <div class="dynsection"> |
---|
| 31 | <p><center><img src="classEKF__inherit__graph.png" border="0" usemap="#EKF_3_01sq__T_01_4__inherit__map" alt="Inheritance graph"></center> |
---|
| 32 | <map name="EKF_3_01sq__T_01_4__inherit__map"> |
---|
| 33 | <area shape="rect" href="classKalman.html" title="Kalman\< fsqmat \>" alt="" coords="5,183,152,209"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="69,7,112,33"><area shape="rect" href="classKalman.html" title="Kalman filter with covariance matrices in square root form." alt="" coords="95,87,223,113"><area shape="rect" title="\< fsqmat \>" alt="" coords="143,111,151,119"><area shape="rect" title="\< fsqmat \>" alt="" coords="85,179,93,187"></map> |
---|
| 34 | <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> |
---|
| 35 | <div class="dynheader"> |
---|
| 36 | Collaboration diagram for EKF< sq_T >:</div> |
---|
| 37 | <div class="dynsection"> |
---|
| 38 | <p><center><img src="classEKF__coll__graph.png" border="0" usemap="#EKF_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center> |
---|
| 39 | <map name="EKF_3_01sq__T_01_4__coll__map"> |
---|
[28] | 40 | <area shape="rect" href="classKalman.html" title="Kalman\< fsqmat \>" alt="" coords="61,337,208,364"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="5,7,48,33"><area shape="rect" href="classKalman.html" title="Kalman filter with covariance matrices in square root form." alt="" coords="48,172,176,199"><area shape="rect" href="classfsqmat.html" title="Fake sqmat. This class maps sqmat operations to operations on full matrix." alt="" coords="200,172,267,199"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="229,196,237,204"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="164,333,172,341"><area shape="rect" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square-root form..." alt="" coords="203,7,264,33"><area shape="rect" title="\< fsqmat \>" alt="" coords="109,196,117,204"><area shape="rect" title="\< fsqmat \>" alt="" coords="127,333,135,341"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="108,31,116,39"><area shape="rect" title="P\nQ\nR\n_iRy\n_Ry" alt="" coords="108,168,116,176"><area shape="rect" href="classdiffbifn.html" title="Class representing a differentiable function of two variables $f(x,u)$." alt="" coords="277,337,344,364"><area shape="rect" title="pfxu\nphxu" alt="" coords="299,361,307,369"><area shape="rect" title="pfxu\nphxu" alt="" coords="252,445,260,453"><area shape="rect" href="classfnc.html" title="Class representing function $f(x)$ of variable $x$ represented by rv." alt="" coords="291,172,331,199"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="355,172,392,199"><area shape="rect" title="rvu\nrvx" alt="" coords="365,196,373,204"><area shape="rect" title="rvu\nrvx" alt="" coords="313,333,321,341"></map> |
---|
[23] | 41 | <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> |
---|
| 42 | |
---|
| 43 | <p> |
---|
| 44 | <a href="classEKF-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> |
---|
| 45 | <tr><td></td></tr> |
---|
| 46 | <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
---|
[28] | 47 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="003687c6cf2a01be90a00e2c99e3863e"></a><!-- doxytag: member="EKF::EKF" ref="003687c6cf2a01be90a00e2c99e3863e" args="(diffbifn *pfxu, diffbifn *phxu, sq_T Q0, sq_T R0, vec mu0, mat P0)" --> |
---|
| 48 | </td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF.html#003687c6cf2a01be90a00e2c99e3863e">EKF</a> (<a class="el" href="classdiffbifn.html">diffbifn</a> *pfxu, <a class="el" href="classdiffbifn.html">diffbifn</a> *phxu, sq_T Q0, sq_T R0, vec mu0, mat P0)</td></tr> |
---|
[23] | 49 | |
---|
| 50 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br></td></tr> |
---|
| 51 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fb0a08463f14e5584344ea2df99fe747"></a><!-- doxytag: member="EKF::bayes" ref="fb0a08463f14e5584344ea2df99fe747" args="(const vec &dt, bool evalll=true)" --> |
---|
[28] | 52 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF.html#fb0a08463f14e5584344ea2df99fe747">bayes</a> (const vec &dt, bool <a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a>=true)</td></tr> |
---|
[23] | 53 | |
---|
| 54 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Here dt = [yt;ut] of appropriate dimensions. <br></td></tr> |
---|
[28] | 55 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#a892eff438aab2dd1a9e2efcb7fb5bdf">bayes</a> (const vec &dt)=0</td></tr> |
---|
| 56 | |
---|
| 57 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Incremental Bayes rule. <a href="#a892eff438aab2dd1a9e2efcb7fb5bdf"></a><br></td></tr> |
---|
| 58 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87b07867fd4c133aa89a18543f68d9f9"></a><!-- doxytag: member="EKF::bayes" ref="87b07867fd4c133aa89a18543f68d9f9" args="(mat Dt)" --> |
---|
| 59 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">bayes</a> (mat Dt)</td></tr> |
---|
| 60 | |
---|
| 61 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr> |
---|
| 62 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5b8f6c8a872738cfaa30ab010e8c077"></a><!-- doxytag: member="EKF::_epdf" ref="a5b8f6c8a872738cfaa30ab010e8c077" args="()" --> |
---|
| 63 | <a class="el" href="classepdf.html">epdf</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#a5b8f6c8a872738cfaa30ab010e8c077">_epdf</a> ()</td></tr> |
---|
| 64 | |
---|
| 65 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to the <a class="el" href="classepdf.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> |
---|
| 66 | <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> |
---|
| 67 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3063a3f58a74cea672ae889971012eed"></a><!-- doxytag: member="EKF::mu" ref="3063a3f58a74cea672ae889971012eed" args="" --> |
---|
| 68 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#3063a3f58a74cea672ae889971012eed">mu</a></td></tr> |
---|
| 69 | |
---|
| 70 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Mean value of the posterior density. <br></td></tr> |
---|
| 71 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="188cd5ac1c9e496b1a371eb7c57c97d3"></a><!-- doxytag: member="EKF::P" ref="188cd5ac1c9e496b1a371eb7c57c97d3" args="" --> |
---|
| 72 | <a class="el" href="classfsqmat.html">fsqmat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#188cd5ac1c9e496b1a371eb7c57c97d3">P</a></td></tr> |
---|
| 73 | |
---|
| 74 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Mean value of the posterior density. <br></td></tr> |
---|
| 75 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5623fef6572a08c2b53b8c87b82dc979"></a><!-- doxytag: member="EKF::ll" ref="5623fef6572a08c2b53b8c87b82dc979" args="" --> |
---|
| 76 | double </td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td></tr> |
---|
| 77 | |
---|
| 78 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr> |
---|
| 79 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf6fb59b30141074f8ee1e2f43d03129"></a><!-- doxytag: member="EKF::evalll" ref="bf6fb59b30141074f8ee1e2f43d03129" args="" --> |
---|
| 80 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a></td></tr> |
---|
| 81 | |
---|
| 82 | <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 time. <br></td></tr> |
---|
| 83 | <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> |
---|
| 84 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39c8c403b46fa3b8c7da77cb2e3729eb"></a><!-- doxytag: member="EKF::dimx" ref="39c8c403b46fa3b8c7da77cb2e3729eb" args="" --> |
---|
| 85 | int </td><td class="memItemRight" valign="bottom"><b>dimx</b></td></tr> |
---|
| 86 | |
---|
| 87 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba17b956df1e38b31fbbc299c8213b6a"></a><!-- doxytag: member="EKF::dimy" ref="ba17b956df1e38b31fbbc299c8213b6a" args="" --> |
---|
| 88 | int </td><td class="memItemRight" valign="bottom"><b>dimy</b></td></tr> |
---|
| 89 | |
---|
| 90 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0153795a1444b6968a86409c778d9ce"></a><!-- doxytag: member="EKF::dimu" ref="b0153795a1444b6968a86409c778d9ce" args="" --> |
---|
| 91 | int </td><td class="memItemRight" valign="bottom"><b>dimu</b></td></tr> |
---|
| 92 | |
---|
| 93 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e02efe86ee91e9c74b93b425fe060b9"></a><!-- doxytag: member="EKF::A" ref="5e02efe86ee91e9c74b93b425fe060b9" args="" --> |
---|
| 94 | mat </td><td class="memItemRight" valign="bottom"><b>A</b></td></tr> |
---|
| 95 | |
---|
| 96 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc87704284a6c0bca13bf51f4345a50a"></a><!-- doxytag: member="EKF::B" ref="dc87704284a6c0bca13bf51f4345a50a" args="" --> |
---|
| 97 | mat </td><td class="memItemRight" valign="bottom"><b>B</b></td></tr> |
---|
| 98 | |
---|
| 99 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86a805cd6515872d1132ad0d6eb5dc13"></a><!-- doxytag: member="EKF::C" ref="86a805cd6515872d1132ad0d6eb5dc13" args="" --> |
---|
| 100 | mat </td><td class="memItemRight" valign="bottom"><b>C</b></td></tr> |
---|
| 101 | |
---|
| 102 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d69f774ba3335c970c1c5b1d182f4dd1"></a><!-- doxytag: member="EKF::D" ref="d69f774ba3335c970c1c5b1d182f4dd1" args="" --> |
---|
| 103 | mat </td><td class="memItemRight" valign="bottom"><b>D</b></td></tr> |
---|
| 104 | |
---|
| 105 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11d171dc0e0ab111c56a70f98b97b3ec"></a><!-- doxytag: member="EKF::R" ref="11d171dc0e0ab111c56a70f98b97b3ec" args="" --> |
---|
| 106 | <a class="el" href="classfsqmat.html">fsqmat</a> </td><td class="memItemRight" valign="bottom"><b>R</b></td></tr> |
---|
| 107 | |
---|
| 108 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b69015c800eb93f3ee49da23a6f55d9"></a><!-- doxytag: member="EKF::Q" ref="9b69015c800eb93f3ee49da23a6f55d9" args="" --> |
---|
| 109 | <a class="el" href="classfsqmat.html">fsqmat</a> </td><td class="memItemRight" valign="bottom"><b>Q</b></td></tr> |
---|
| 110 | |
---|
| 111 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d422f51467c7a06174af2476d2826132"></a><!-- doxytag: member="EKF::_K" ref="d422f51467c7a06174af2476d2826132" args="" --> |
---|
| 112 | mat </td><td class="memItemRight" valign="bottom"><b>_K</b></td></tr> |
---|
| 113 | |
---|
| 114 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="30b7461989185d3d02cf42b8e2a37649"></a><!-- doxytag: member="EKF::_yp" ref="30b7461989185d3d02cf42b8e2a37649" args="" --> |
---|
| 115 | vec </td><td class="memItemRight" valign="bottom"><b>_yp</b></td></tr> |
---|
| 116 | |
---|
| 117 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="477dca07d91ea1a1f41d51bb0229934f"></a><!-- doxytag: member="EKF::_Ry" ref="477dca07d91ea1a1f41d51bb0229934f" args="" --> |
---|
| 118 | <a class="el" href="classfsqmat.html">fsqmat</a> </td><td class="memItemRight" valign="bottom"><b>_Ry</b></td></tr> |
---|
| 119 | |
---|
| 120 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15f1a793210750a7e4642fcd948b24c5"></a><!-- doxytag: member="EKF::_iRy" ref="15f1a793210750a7e4642fcd948b24c5" args="" --> |
---|
| 121 | <a class="el" href="classfsqmat.html">fsqmat</a> </td><td class="memItemRight" valign="bottom"><b>_iRy</b></td></tr> |
---|
| 122 | |
---|
| 123 | <tr><td colspan="2"><br><h2>Friends</h2></td></tr> |
---|
| 124 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86ba216243ed95bb46d80d88775d16af"></a><!-- doxytag: member="EKF::operator<<" ref="86ba216243ed95bb46d80d88775d16af" args="(std::ostream &os, const KalmanFull &kf)" --> |
---|
| 125 | std::ostream & </td><td class="memItemRight" valign="bottom"><b>operator<<</b> (std::ostream &os, const <a class="el" href="classKalmanFull.html">KalmanFull</a> &kf)</td></tr> |
---|
| 126 | |
---|
[23] | 127 | </table> |
---|
| 128 | <hr><a name="_details"></a><h2>Detailed Description</h2> |
---|
| 129 | <h3>template<class sq_T><br> |
---|
| 130 | class EKF< sq_T ></h3> |
---|
| 131 | |
---|
| 132 | Extended <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> Filter. |
---|
| 133 | <p> |
---|
[28] | 134 | An approximation of the exact Bayesian filter with Gaussian noices and non-linear evolutions of their mean. <hr><h2>Member Function Documentation</h2> |
---|
| 135 | <a class="anchor" name="a892eff438aab2dd1a9e2efcb7fb5bdf"></a><!-- doxytag: member="EKF::bayes" ref="a892eff438aab2dd1a9e2efcb7fb5bdf" args="(const vec &dt)=0" --> |
---|
| 136 | <div class="memitem"> |
---|
| 137 | <div class="memproto"> |
---|
| 138 | <table class="memname"> |
---|
| 139 | <tr> |
---|
| 140 | <td class="memname">virtual void BM::bayes </td> |
---|
| 141 | <td>(</td> |
---|
| 142 | <td class="paramtype">const vec & </td> |
---|
| 143 | <td class="paramname"> <em>dt</em> </td> |
---|
| 144 | <td> ) </td> |
---|
| 145 | <td width="100%"><code> [pure virtual, inherited]</code></td> |
---|
| 146 | </tr> |
---|
| 147 | </table> |
---|
| 148 | </div> |
---|
| 149 | <div class="memdoc"> |
---|
| 150 | |
---|
| 151 | <p> |
---|
| 152 | Incremental Bayes rule. |
---|
| 153 | <p> |
---|
| 154 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
| 155 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
| 156 | <tr><td valign="top"></td><td valign="top"><em>dt</em> </td><td>vector of input data </td></tr> |
---|
| 157 | </table> |
---|
| 158 | </dl> |
---|
| 159 | |
---|
| 160 | </div> |
---|
| 161 | </div><p> |
---|
| 162 | <hr>The documentation for this class was generated from the following file:<ul> |
---|
[23] | 163 | <li>work/mixpp/bdm/estim/<a class="el" href="libKF_8h-source.html">libKF.h</a></ul> |
---|
[28] | 164 | <hr size="1"><address style="text-align: right;"><small>Generated on Mon Feb 18 21:48:43 2008 for mixpp by |
---|
[23] | 165 | <a href="http://www.doxygen.org/index.html"> |
---|
| 166 | <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address> |
---|
| 167 | </body> |
---|
| 168 | </html> |
---|