root/doc/html/classKalman.html @ 32

Revision 32, 16.1 kB (checked in by smidl, 17 years ago)

test KF : estimation of R in KF is not possible! Likelihood of y_t is growing when R -> 0

Line 
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: Kalman&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>
13    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
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>Kalman&lt; sq_T &gt; Class Template Reference</h1><!-- doxytag: class="Kalman" --><!-- doxytag: inherits="BM" --><a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with covariance matrices in square root form. 
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 Kalman&lt; sq_T &gt;:</div>
30<div class="dynsection">
31<p><center><img src="classKalman__inherit__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__inherit__map" alt="Inheritance graph"></center>
32<map name="Kalman_3_01sq__T_01_4__inherit__map">
33<area shape="rect" href="classKalman.html" title="Kalman\&lt; ldmat \&gt;" alt="" coords="49,183,185,209"><area shape="rect" title="\&lt; ldmat \&gt;" alt="" coords="113,111,121,119"><area shape="rect" title="\&lt; ldmat \&gt;" alt="" coords="113,179,121,187"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="96,7,139,33"><area shape="rect" href="classEKF.html" title="Extended Kalman Filter." alt="" coords="5,263,109,289"><area shape="rect" href="classKFcondQR.html" title="Kalman Filter with conditional diagonal matrices R and Q." alt="" coords="133,263,221,289"></map>
34<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
35<div class="dynheader">
36Collaboration diagram for Kalman&lt; sq_T &gt;:</div>
37<div class="dynsection">
38<p><center><img src="classKalman__coll__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center>
39<map name="Kalman_3_01sq__T_01_4__coll__map">
40<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="48,105,91,132"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="11,7,48,33"><area shape="rect" title="rvu\nrvy" alt="" coords="23,31,31,39"><area shape="rect" title="rvu\nrvy" alt="" coords="57,285,65,293"><area shape="rect" title="rv" alt="" coords="32,31,40,39"><area shape="rect" title="rv" alt="" coords="60,101,68,109"><area shape="rect" title="_iP\n_P\nQ\nR\n_iRy\n_Ry" alt="" coords="131,129,139,137"><area shape="rect" title="_iP\n_P\nQ\nR\n_iRy\n_Ry" alt="" coords="72,285,80,293"></map>
41<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
42
43<p>
44<a href="classKalman-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>
47<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3d56b0a97b8c1e25fdd3b10eef3c2ad3"></a><!-- doxytag: member="Kalman::Kalman" ref="3d56b0a97b8c1e25fdd3b10eef3c2ad3" args="(RV rvx0, RV rvy0, RV rvu0)" -->
48&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#3d56b0a97b8c1e25fdd3b10eef3c2ad3">Kalman</a> (<a class="el" href="classRV.html">RV</a> rvx0, <a class="el" href="classRV.html">RV</a> rvy0, <a class="el" href="classRV.html">RV</a> rvu0)</td></tr>
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="ce38e31810aea4db45a83ad05eaba009"></a><!-- doxytag: member="Kalman::Kalman" ref="ce38e31810aea4db45a83ad05eaba009" args="(const Kalman&lt; sq_T &gt; &amp;K0)" -->
52&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#ce38e31810aea4db45a83ad05eaba009">Kalman</a> (const <a class="el" href="classKalman.html">Kalman</a>&lt; sq_T &gt; &amp;K0)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <br></td></tr>
55<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="239b28a0380946f5749b2f8d2807f93a"></a><!-- doxytag: member="Kalman::set_parameters" ref="239b28a0380946f5749b2f8d2807f93a" args="(const mat &amp;A0, const mat &amp;B0, const mat &amp;C0, const mat &amp;D0, const sq_T &amp;R0, const sq_T &amp;Q0)" -->
56void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#239b28a0380946f5749b2f8d2807f93a">set_parameters</a> (const mat &amp;A0, const mat &amp;B0, const mat &amp;C0, const mat &amp;D0, const sq_T &amp;R0, const sq_T &amp;Q0)</td></tr>
57
58<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set parameters with check of relevance. <br></td></tr>
59<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80bcf29466d9a9dd2b8f74699807d0c0"></a><!-- doxytag: member="Kalman::set_est" ref="80bcf29466d9a9dd2b8f74699807d0c0" args="(const vec &amp;mu0, const sq_T &amp;P0)" -->
60void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#80bcf29466d9a9dd2b8f74699807d0c0">set_est</a> (const vec &amp;mu0, const sq_T &amp;P0)</td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set estimate values, used e.g. in initialization. <br></td></tr>
63<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7750ffd73f261828a32c18aaeb65c75c"></a><!-- doxytag: member="Kalman::bayes" ref="7750ffd73f261828a32c18aaeb65c75c" args="(const vec &amp;dt)" -->
64void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#7750ffd73f261828a32c18aaeb65c75c">bayes</a> (const vec &amp;dt)</td></tr>
65
66<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Here dt = [yt;ut] of appropriate dimensions. <br></td></tr>
67<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a213c57aef55b2645e550bed81cfc0d4"></a><!-- doxytag: member="Kalman::_epdf" ref="a213c57aef55b2645e550bed81cfc0d4" args="()" -->
68<a class="el" href="classepdf.html">epdf</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#a213c57aef55b2645e550bed81cfc0d4">_epdf</a> ()</td></tr>
69
70<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>
71<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87b07867fd4c133aa89a18543f68d9f9"></a><!-- doxytag: member="Kalman::bayes" ref="87b07867fd4c133aa89a18543f68d9f9" args="(mat Dt)" -->
72void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#87b07867fd4c133aa89a18543f68d9f9">bayes</a> (mat Dt)</td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr>
75<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
76<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7501230c2fafa3655887d2da23b3184c"></a><!-- doxytag: member="Kalman::rvy" ref="7501230c2fafa3655887d2da23b3184c" args="" -->
77<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>rvy</b></td></tr>
78
79<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44a16ffd5ac1e6e39bae34fea9e1e498"></a><!-- doxytag: member="Kalman::rvu" ref="44a16ffd5ac1e6e39bae34fea9e1e498" args="" -->
80<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>rvu</b></td></tr>
81
82<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39c8c403b46fa3b8c7da77cb2e3729eb"></a><!-- doxytag: member="Kalman::dimx" ref="39c8c403b46fa3b8c7da77cb2e3729eb" args="" -->
83int&nbsp;</td><td class="memItemRight" valign="bottom"><b>dimx</b></td></tr>
84
85<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba17b956df1e38b31fbbc299c8213b6a"></a><!-- doxytag: member="Kalman::dimy" ref="ba17b956df1e38b31fbbc299c8213b6a" args="" -->
86int&nbsp;</td><td class="memItemRight" valign="bottom"><b>dimy</b></td></tr>
87
88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0153795a1444b6968a86409c778d9ce"></a><!-- doxytag: member="Kalman::dimu" ref="b0153795a1444b6968a86409c778d9ce" args="" -->
89int&nbsp;</td><td class="memItemRight" valign="bottom"><b>dimu</b></td></tr>
90
91<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e02efe86ee91e9c74b93b425fe060b9"></a><!-- doxytag: member="Kalman::A" ref="5e02efe86ee91e9c74b93b425fe060b9" args="" -->
92mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>A</b></td></tr>
93
94<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc87704284a6c0bca13bf51f4345a50a"></a><!-- doxytag: member="Kalman::B" ref="dc87704284a6c0bca13bf51f4345a50a" args="" -->
95mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>B</b></td></tr>
96
97<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86a805cd6515872d1132ad0d6eb5dc13"></a><!-- doxytag: member="Kalman::C" ref="86a805cd6515872d1132ad0d6eb5dc13" args="" -->
98mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>C</b></td></tr>
99
100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d69f774ba3335c970c1c5b1d182f4dd1"></a><!-- doxytag: member="Kalman::D" ref="d69f774ba3335c970c1c5b1d182f4dd1" args="" -->
101mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>D</b></td></tr>
102
103<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11d171dc0e0ab111c56a70f98b97b3ec"></a><!-- doxytag: member="Kalman::R" ref="11d171dc0e0ab111c56a70f98b97b3ec" args="" -->
104sq_T&nbsp;</td><td class="memItemRight" valign="bottom"><b>R</b></td></tr>
105
106<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b69015c800eb93f3ee49da23a6f55d9"></a><!-- doxytag: member="Kalman::Q" ref="9b69015c800eb93f3ee49da23a6f55d9" args="" -->
107sq_T&nbsp;</td><td class="memItemRight" valign="bottom"><b>Q</b></td></tr>
108
109<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5568c74bac67ae6d3b1061dba60c9424"></a><!-- doxytag: member="Kalman::est" ref="5568c74bac67ae6d3b1061dba60c9424" args="" -->
110<a class="el" href="classenorm.html">enorm</a>&lt; sq_T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#5568c74bac67ae6d3b1061dba60c9424">est</a></td></tr>
111
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">posterior density on $x_t$ <br></td></tr>
113<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e580ab06483952bd03f2e651763e184f"></a><!-- doxytag: member="Kalman::fy" ref="e580ab06483952bd03f2e651763e184f" args="" -->
114<a class="el" href="classenorm.html">enorm</a>&lt; sq_T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#e580ab06483952bd03f2e651763e184f">fy</a></td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">preditive density on $y_t$ <br></td></tr>
117<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d422f51467c7a06174af2476d2826132"></a><!-- doxytag: member="Kalman::_K" ref="d422f51467c7a06174af2476d2826132" args="" -->
118mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>_K</b></td></tr>
119
120<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5188eb0329f8561f0b357af329769bf8"></a><!-- doxytag: member="Kalman::_yp" ref="5188eb0329f8561f0b357af329769bf8" args="" -->
121vec *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_yp</b></td></tr>
122
123<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e17dd745daa8a958035a334a56fa4674"></a><!-- doxytag: member="Kalman::_Ry" ref="e17dd745daa8a958035a334a56fa4674" args="" -->
124sq_T *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_Ry</b></td></tr>
125
126<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fbbdf31365f5a5674099599200ea193b"></a><!-- doxytag: member="Kalman::_iRy" ref="fbbdf31365f5a5674099599200ea193b" args="" -->
127sq_T *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_iRy</b></td></tr>
128
129<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1f669b5b3421a070cc75d77b55ba734"></a><!-- doxytag: member="Kalman::_mu" ref="d1f669b5b3421a070cc75d77b55ba734" args="" -->
130vec *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_mu</b></td></tr>
131
132<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b3388218567128a797e69b109138271d"></a><!-- doxytag: member="Kalman::_P" ref="b3388218567128a797e69b109138271d" args="" -->
133sq_T *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_P</b></td></tr>
134
135<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b8bb7f870d69993493ba67ce40e7c3e9"></a><!-- doxytag: member="Kalman::_iP" ref="b8bb7f870d69993493ba67ce40e7c3e9" args="" -->
136sq_T *&nbsp;</td><td class="memItemRight" valign="bottom"><b>_iP</b></td></tr>
137
138<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af00f0612fabe66241dd507188cdbf88"></a><!-- doxytag: member="Kalman::rv" ref="af00f0612fabe66241dd507188cdbf88" args="" -->
139<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#af00f0612fabe66241dd507188cdbf88">rv</a></td></tr>
140
141<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Random variable of the posterior. <br></td></tr>
142<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5623fef6572a08c2b53b8c87b82dc979"></a><!-- doxytag: member="Kalman::ll" ref="5623fef6572a08c2b53b8c87b82dc979" args="" -->
143double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td></tr>
144
145<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr>
146<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf6fb59b30141074f8ee1e2f43d03129"></a><!-- doxytag: member="Kalman::evalll" ref="bf6fb59b30141074f8ee1e2f43d03129" args="" -->
147bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a></td></tr>
148
149<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>
150</table>
151<hr><a name="_details"></a><h2>Detailed Description</h2>
152<h3>template&lt;class sq_T&gt;<br>
153 class Kalman&lt; sq_T &gt;</h3>
154
155<a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with covariance matrices in square root form. <hr>The documentation for this class was generated from the following file:<ul>
156<li>work/mixpp/bdm/estim/<a class="el" href="libKF_8h-source.html">libKF.h</a></ul>
157<hr size="1"><address style="text-align: right;"><small>Generated on Thu Feb 28 16:54:50 2008 for mixpp by&nbsp;
158<a href="http://www.doxygen.org/index.html">
159<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
160</body>
161</html>
Note: See TracBrowser for help on using the browser.