root/doc/html/classEKF.html @ 28

Revision 28, 15.5 kB (checked in by smidl, 17 years ago)

prelozitelna verze

RevLine 
[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&lt; sq_T &gt; 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&nbsp;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&nbsp;Pages</span></a></li>
[23]14  </ul>
15</div>
16<div class="tabs">
17  <ul>
18    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
19    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
20    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
21  </ul>
22</div>
23<h1>EKF&lt; sq_T &gt; Class Template Reference</h1><!-- doxytag: class="EKF" --><!-- doxytag: inherits="Kalman&lt; fsqmat &gt;" -->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 &lt;<a class="el" href="libKF_8h-source.html">libKF.h</a>&gt;</code>
27<p>
28<div class="dynheader">
29Inheritance diagram for EKF&lt; sq_T &gt;:</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\&lt; fsqmat \&gt;" 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="\&lt; fsqmat \&gt;" alt="" coords="143,111,151,119"><area shape="rect" title="\&lt; fsqmat \&gt;" 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">
36Collaboration diagram for EKF&lt; sq_T &gt;:</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\&lt; fsqmat \&gt;" 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&#45;root form..." alt="" coords="203,7,264,33"><area shape="rect" title="\&lt; fsqmat \&gt;" alt="" coords="109,196,117,204"><area shape="rect" title="\&lt; fsqmat \&gt;" 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&nbsp;</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">&nbsp;</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 &amp;dt, bool evalll=true)" -->
[28]52void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF.html#fb0a08463f14e5584344ea2df99fe747">bayes</a> (const vec &amp;dt, bool <a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a>=true)</td></tr>
[23]53
54<tr><td class="mdescLeft">&nbsp;</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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#a892eff438aab2dd1a9e2efcb7fb5bdf">bayes</a> (const vec &amp;dt)=0</td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</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)" -->
59void&nbsp;</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">&nbsp;</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> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#a5b8f6c8a872738cfaa30ab010e8c077">_epdf</a> ()</td></tr>
64
65<tr><td class="mdescLeft">&nbsp;</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="" -->
68vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#3063a3f58a74cea672ae889971012eed">mu</a></td></tr>
69
70<tr><td class="mdescLeft">&nbsp;</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>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#188cd5ac1c9e496b1a371eb7c57c97d3">P</a></td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</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="" -->
76double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</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="" -->
80bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a></td></tr>
81
82<tr><td class="mdescLeft">&nbsp;</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="" -->
85int&nbsp;</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="" -->
88int&nbsp;</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="" -->
91int&nbsp;</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="" -->
94mat&nbsp;</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="" -->
97mat&nbsp;</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="" -->
100mat&nbsp;</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="" -->
103mat&nbsp;</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>&nbsp;</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>&nbsp;</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="" -->
112mat&nbsp;</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="" -->
115vec&nbsp;</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>&nbsp;</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>&nbsp;</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&lt;&lt;" ref="86ba216243ed95bb46d80d88775d16af" args="(std::ostream &amp;os, const KalmanFull &amp;kf)" -->
125std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classKalmanFull.html">KalmanFull</a> &amp;kf)</td></tr>
126
[23]127</table>
128<hr><a name="_details"></a><h2>Detailed Description</h2>
129<h3>template&lt;class sq_T&gt;<br>
130 class EKF&lt; sq_T &gt;</h3>
131
132Extended <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> Filter.
133<p>
[28]134An 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 &amp;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 &amp;&nbsp;</td>
143          <td class="paramname"> <em>dt</em>          </td>
144          <td>&nbsp;)&nbsp;</td>
145          <td width="100%"><code> [pure virtual, inherited]</code></td>
146        </tr>
147      </table>
148</div>
149<div class="memdoc">
150
151<p>
152Incremental 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>&nbsp;</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&nbsp;
[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>
Note: See TracBrowser for help on using the browser.