root/doc/html/classKalman.html @ 210

Revision 210, 25.9 kB (checked in by smidl, 16 years ago)

dokumentace

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.6 -->
8<div class="navigation" id="top">
9  <div class="tabs">
10    <ul>
11      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
13      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
14      <li><a href="files.html"><span>Files</span></a></li>
15    </ul>
16  </div>
17  <div class="tabs">
18    <ul>
19      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
20      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
21      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
22    </ul>
23  </div>
24</div>
25<div class="contents">
26<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. 
27<a href="#_details">More...</a>
28<p>
29<code>#include &lt;<a class="el" href="libKF_8h-source.html">libKF.h</a>&gt;</code>
30<p>
31<div class="dynheader">
32Inheritance diagram for Kalman&lt; sq_T &gt;:</div>
33<div class="dynsection">
34<p><center><img src="classKalman__inherit__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__inherit__map" alt="Inheritance graph"></center>
35<map name="Kalman_3_01sq__T_01_4__inherit__map">
36<area shape="rect" href="classKalman.html" title="Kalman\&lt; ldmat \&gt;" alt="" coords="69,172,189,196"><area shape="rect" href="classKalman.html" title="Kalman\&lt; chmat \&gt;" alt="" coords="213,172,339,196"><area shape="rect" href="classKalman.html" title="Kalman\&lt; fsqmat \&gt;" alt="" coords="363,172,491,196"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="256,7,296,31"><area shape="rect" href="classKFcondQR.html" title="Kalman Filter with conditional diagonal matrices R and Q." alt="" coords="5,250,91,274"><area shape="rect" href="classKFcondR.html" title="Kalman Filter with conditional diagonal matrices R and Q." alt="" coords="115,250,189,274"><area shape="rect" href="classKalmanCh.html" title="Kalman filter in square root form." alt="" coords="236,250,316,274"><area shape="rect" href="classEKFCh.html" title="Extended Kalman Filter in Square root." alt="" coords="244,327,308,351"><area shape="rect" href="classEKF__unQ.html" title="Extended Kalman filter with unknown Q." alt="" coords="237,404,315,428"><area shape="rect" href="classEKF.html" title="Extended Kalman Filter." alt="" coords="377,250,476,274"></map>
37<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
38<div class="dynheader">
39Collaboration diagram for Kalman&lt; sq_T &gt;:</div>
40<div class="dynsection">
41<p><center><img src="classKalman__coll__graph.png" border="0" usemap="#Kalman_3_01sq__T_01_4__coll__map" alt="Collaboration graph"></center>
42<map name="Kalman_3_01sq__T_01_4__coll__map">
43<area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="44,96,84,120"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="9,7,47,31"></map>
44<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
45
46<p>
47<a href="classKalman-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
48<tr><td></td></tr>
49<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
50<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)" -->
51&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>
52
53<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br></td></tr>
54<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)" -->
55&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>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <br></td></tr>
58<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)" -->
59void&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>
60
61<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set parameters with check of relevance. <br></td></tr>
62<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)" -->
63void&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>
64
65<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set estimate values, used e.g. in initialization. <br></td></tr>
66<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)" -->
67void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#7750ffd73f261828a32c18aaeb65c75c">bayes</a> (const vec &amp;dt)</td></tr>
68
69<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Here dt = [yt;ut] of appropriate dimensions. <br></td></tr>
70<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67cccaf1c4dcdcd1df110e15ef326bfe"></a><!-- doxytag: member="Kalman::_epdf" ref="67cccaf1c4dcdcd1df110e15ef326bfe" args="() const " -->
71const <a class="el" href="classepdf.html">epdf</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#67cccaf1c4dcdcd1df110e15ef326bfe">_epdf</a> () const </td></tr>
72
73<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
74<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11f82ef04e3dbc54bd1d3d89edb6aa07"></a><!-- doxytag: member="Kalman::_e" ref="11f82ef04e3dbc54bd1d3d89edb6aa07" args="() const " -->
75const <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#11f82ef04e3dbc54bd1d3d89edb6aa07">_e</a> () const </td></tr>
76
77<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>
78<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="980fcd41c6c548c5da7b8b67c8e6da79"></a><!-- doxytag: member="Kalman::__K" ref="980fcd41c6c548c5da7b8b67c8e6da79" args="()" -->
79mat &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#980fcd41c6c548c5da7b8b67c8e6da79">__K</a> ()</td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
82<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac9540f3850b74d89a5fe4db6fc358ce"></a><!-- doxytag: member="Kalman::_dP" ref="ac9540f3850b74d89a5fe4db6fc358ce" args="()" -->
83vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#ac9540f3850b74d89a5fe4db6fc358ce">_dP</a> ()</td></tr>
84
85<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
86<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0186270f75189677f390fe088a9947e9"></a><!-- doxytag: member="Kalman::bayesB" ref="0186270f75189677f390fe088a9947e9" args="(const mat &amp;Dt)" -->
87virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#0186270f75189677f390fe088a9947e9">bayesB</a> (const mat &amp;Dt)</td></tr>
88
89<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr>
90<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#8a8ce6df431689964c41cc6c849cfd06">logpred</a> (const vec &amp;dt) const </td></tr>
91
92<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd0660f2a1a344b56ac39802708ff165"></a><!-- doxytag: member="Kalman::logpred_m" ref="cd0660f2a1a344b56ac39802708ff165" args="(const mat &amp;dt) const " -->
93vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#cd0660f2a1a344b56ac39802708ff165">logpred_m</a> (const mat &amp;dt) const </td></tr>
94
95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix version of logpred. <br></td></tr>
96<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5594d68ee9aa6fc8c1e79019da5c9d56"></a><!-- doxytag: member="Kalman::predictor" ref="5594d68ee9aa6fc8c1e79019da5c9d56" args="(const RV &amp;rv) const " -->
97virtual <a class="el" href="classepdf.html">epdf</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5594d68ee9aa6fc8c1e79019da5c9d56">predictor</a> (const <a class="el" href="classRV.html">RV</a> &amp;<a class="el" href="classBM.html#af00f0612fabe66241dd507188cdbf88">rv</a>) const </td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a predictive density (marginal density on data). <br></td></tr>
100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="126bd2595c48e311fc2a7ab72876092a"></a><!-- doxytag: member="Kalman::_rv" ref="126bd2595c48e311fc2a7ab72876092a" args="() const " -->
101const <a class="el" href="classRV.html">RV</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#126bd2595c48e311fc2a7ab72876092a">_rv</a> () const </td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
104<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87f4a547d2c29180be88175e5eab9c88"></a><!-- doxytag: member="Kalman::_ll" ref="87f4a547d2c29180be88175e5eab9c88" args="() const " -->
105double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#87f4a547d2c29180be88175e5eab9c88">_ll</a> () const </td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
108<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ffa9f23669aabecc3760c06c6987522"></a><!-- doxytag: member="Kalman::set_evalll" ref="1ffa9f23669aabecc3760c06c6987522" args="(bool evl0)" -->
109void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#1ffa9f23669aabecc3760c06c6987522">set_evalll</a> (bool evl0)</td></tr>
110
111<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
112<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classBM.html">BM</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#eb58c81d6a7b75b05fc6f276eed78887">_copy_</a> (bool changerv=false)</td></tr>
113
114<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
115<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7501230c2fafa3655887d2da23b3184c"></a><!-- doxytag: member="Kalman::rvy" ref="7501230c2fafa3655887d2da23b3184c" args="" -->
116<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#7501230c2fafa3655887d2da23b3184c">rvy</a></td></tr>
117
118<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indetifier of output rv. <br></td></tr>
119<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44a16ffd5ac1e6e39bae34fea9e1e498"></a><!-- doxytag: member="Kalman::rvu" ref="44a16ffd5ac1e6e39bae34fea9e1e498" args="" -->
120<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#44a16ffd5ac1e6e39bae34fea9e1e498">rvu</a></td></tr>
121
122<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indetifier of exogeneous rv. <br></td></tr>
123<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39c8c403b46fa3b8c7da77cb2e3729eb"></a><!-- doxytag: member="Kalman::dimx" ref="39c8c403b46fa3b8c7da77cb2e3729eb" args="" -->
124int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#39c8c403b46fa3b8c7da77cb2e3729eb">dimx</a></td></tr>
125
126<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rv.count() <br></td></tr>
127<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba17b956df1e38b31fbbc299c8213b6a"></a><!-- doxytag: member="Kalman::dimy" ref="ba17b956df1e38b31fbbc299c8213b6a" args="" -->
128int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#ba17b956df1e38b31fbbc299c8213b6a">dimy</a></td></tr>
129
130<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rvy.count() <br></td></tr>
131<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0153795a1444b6968a86409c778d9ce"></a><!-- doxytag: member="Kalman::dimu" ref="b0153795a1444b6968a86409c778d9ce" args="" -->
132int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#b0153795a1444b6968a86409c778d9ce">dimu</a></td></tr>
133
134<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rvu.count() <br></td></tr>
135<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e02efe86ee91e9c74b93b425fe060b9"></a><!-- doxytag: member="Kalman::A" ref="5e02efe86ee91e9c74b93b425fe060b9" args="" -->
136mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#5e02efe86ee91e9c74b93b425fe060b9">A</a></td></tr>
137
138<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix A. <br></td></tr>
139<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc87704284a6c0bca13bf51f4345a50a"></a><!-- doxytag: member="Kalman::B" ref="dc87704284a6c0bca13bf51f4345a50a" args="" -->
140mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#dc87704284a6c0bca13bf51f4345a50a">B</a></td></tr>
141
142<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix B. <br></td></tr>
143<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86a805cd6515872d1132ad0d6eb5dc13"></a><!-- doxytag: member="Kalman::C" ref="86a805cd6515872d1132ad0d6eb5dc13" args="" -->
144mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#86a805cd6515872d1132ad0d6eb5dc13">C</a></td></tr>
145
146<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix C. <br></td></tr>
147<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d69f774ba3335c970c1c5b1d182f4dd1"></a><!-- doxytag: member="Kalman::D" ref="d69f774ba3335c970c1c5b1d182f4dd1" args="" -->
148mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#d69f774ba3335c970c1c5b1d182f4dd1">D</a></td></tr>
149
150<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix D. <br></td></tr>
151<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b69015c800eb93f3ee49da23a6f55d9"></a><!-- doxytag: member="Kalman::Q" ref="9b69015c800eb93f3ee49da23a6f55d9" args="" -->
152sq_T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#9b69015c800eb93f3ee49da23a6f55d9">Q</a></td></tr>
153
154<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix Q in square-root form. <br></td></tr>
155<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11d171dc0e0ab111c56a70f98b97b3ec"></a><!-- doxytag: member="Kalman::R" ref="11d171dc0e0ab111c56a70f98b97b3ec" args="" -->
156sq_T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#11d171dc0e0ab111c56a70f98b97b3ec">R</a></td></tr>
157
158<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix R in square-root form. <br></td></tr>
159<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5568c74bac67ae6d3b1061dba60c9424"></a><!-- doxytag: member="Kalman::est" ref="5568c74bac67ae6d3b1061dba60c9424" args="" -->
160<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>
161
162<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">posterior density on $x_t$ <br></td></tr>
163<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e580ab06483952bd03f2e651763e184f"></a><!-- doxytag: member="Kalman::fy" ref="e580ab06483952bd03f2e651763e184f" args="" -->
164<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>
165
166<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">preditive density on $y_t$ <br></td></tr>
167<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d422f51467c7a06174af2476d2826132"></a><!-- doxytag: member="Kalman::_K" ref="d422f51467c7a06174af2476d2826132" args="" -->
168mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#d422f51467c7a06174af2476d2826132">_K</a></td></tr>
169
170<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">placeholder for <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> gain <br></td></tr>
171<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="764bbc95238eda11fc81c5ebd0b1dcfd"></a><!-- doxytag: member="Kalman::_yp" ref="764bbc95238eda11fc81c5ebd0b1dcfd" args="" -->
172vec &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#764bbc95238eda11fc81c5ebd0b1dcfd">_yp</a></td></tr>
173
174<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of fy.mu <br></td></tr>
175<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45c9f928d2d62e0c884900fb3380f904"></a><!-- doxytag: member="Kalman::_Ry" ref="45c9f928d2d62e0c884900fb3380f904" args="" -->
176sq_T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#45c9f928d2d62e0c884900fb3380f904">_Ry</a></td></tr>
177
178<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of fy.R <br></td></tr>
179<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe803a81d2d847b0b1db3c6b29c18061"></a><!-- doxytag: member="Kalman::_mu" ref="fe803a81d2d847b0b1db3c6b29c18061" args="" -->
180vec &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#fe803a81d2d847b0b1db3c6b29c18061">_mu</a></td></tr>
181
182<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of est.mu <br></td></tr>
183<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9fb808cc94a4c2652e1fb93be9bb7dcf"></a><!-- doxytag: member="Kalman::_P" ref="9fb808cc94a4c2652e1fb93be9bb7dcf" args="" -->
184sq_T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#9fb808cc94a4c2652e1fb93be9bb7dcf">_P</a></td></tr>
185
186<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of est.R <br></td></tr>
187<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af00f0612fabe66241dd507188cdbf88"></a><!-- doxytag: member="Kalman::rv" ref="af00f0612fabe66241dd507188cdbf88" args="" -->
188<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>
189
190<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Random variable of the posterior. <br></td></tr>
191<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5623fef6572a08c2b53b8c87b82dc979"></a><!-- doxytag: member="Kalman::ll" ref="5623fef6572a08c2b53b8c87b82dc979" args="" -->
192double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td></tr>
193
194<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr>
195<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf6fb59b30141074f8ee1e2f43d03129"></a><!-- doxytag: member="Kalman::evalll" ref="bf6fb59b30141074f8ee1e2f43d03129" args="" -->
196bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a></td></tr>
197
198<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 computational time. <br></td></tr>
199</table>
200<hr><a name="_details"></a><h2>Detailed Description</h2>
201<h3>template&lt;class sq_T&gt;<br>
202 class Kalman&lt; sq_T &gt;</h3>
203
204<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.
205<p>
206Parameter evolution model:<p class="formulaDsp">
207<img class="formulaDsp" alt="\[ x_t = A x_{t-1} + B u_t + Q^{1/2} e_t \]" src="form_6.png">
208<p>
209 Observation model: <p class="formulaDsp">
210<img class="formulaDsp" alt="\[ y_t = C x_{t-1} + C u_t + Q^{1/2} w_t. \]" src="form_7.png">
211<p>
212 Where $e_t$ and $w_t$ are independent vectors Normal(0,1)-distributed disturbances. <hr><h2>Member Function Documentation</h2>
213<a class="anchor" name="8a8ce6df431689964c41cc6c849cfd06"></a><!-- doxytag: member="Kalman::logpred" ref="8a8ce6df431689964c41cc6c849cfd06" args="(const vec &amp;dt) const " -->
214<div class="memitem">
215<div class="memproto">
216      <table class="memname">
217        <tr>
218          <td class="memname">virtual double BM::logpred           </td>
219          <td>(</td>
220          <td class="paramtype">const vec &amp;&nbsp;</td>
221          <td class="paramname"> <em>dt</em>          </td>
222          <td>&nbsp;)&nbsp;</td>
223          <td> const<code> [inline, virtual, inherited]</code></td>
224        </tr>
225      </table>
226</div>
227<div class="memdoc">
228
229<p>
230Evaluates predictive log-likelihood of the given data record I.e. marginal likelihood of the data with the posterior integrated out.
231<p>Reimplemented in <a class="el" href="classARX.html#e7f9e7823aec9bf7ddc3b42d9b3304c4">ARX</a>, <a class="el" href="classMixEF.html#424ca64f36d4e41de7a7e7ae921d35ea">MixEF</a>, and <a class="el" href="classmultiBM.html#13e26a61757278981fd8cac9a7ef91eb">multiBM</a>.</p>
232
233<p>Referenced by <a class="el" href="libBM_8h-source.html#l00428">BM::logpred_m()</a>.</p>
234
235</div>
236</div><p>
237<a class="anchor" name="eb58c81d6a7b75b05fc6f276eed78887"></a><!-- doxytag: member="Kalman::_copy_" ref="eb58c81d6a7b75b05fc6f276eed78887" args="(bool changerv=false)" -->
238<div class="memitem">
239<div class="memproto">
240      <table class="memname">
241        <tr>
242          <td class="memname">virtual <a class="el" href="classBM.html">BM</a>* BM::_copy_           </td>
243          <td>(</td>
244          <td class="paramtype">bool&nbsp;</td>
245          <td class="paramname"> <em>changerv</em> = <code>false</code>          </td>
246          <td>&nbsp;)&nbsp;</td>
247          <td><code> [inline, virtual, inherited]</code></td>
248        </tr>
249      </table>
250</div>
251<div class="memdoc">
252
253<p>
254Copy function required in vectors, Arrays of <a class="el" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> etc. Have to be DELETED manually! Prototype: BM* <a class="el" href="classBM.html#eb58c81d6a7b75b05fc6f276eed78887">_copy_()</a>{<a class="el" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> Tmp*=new Tmp(this*); return Tmp; }
255<p>Reimplemented in <a class="el" href="classARX.html#5de61fbd4f97fa3216760b1f733f5af0">ARX</a>, and <a class="el" href="classBMEF.html#97f5312efe4a5bedb86d2daec59d8651">BMEF</a>.</p>
256
257</div>
258</div><p>
259<hr>The documentation for this class was generated from the following file:<ul>
260<li>work/git/mixpp/bdm/estim/<a class="el" href="libKF_8h-source.html">libKF.h</a></ul>
261</div>
262<hr size="1"><address style="text-align: right;"><small>Generated on Wed Nov 12 19:18:54 2008 for mixpp by&nbsp;
263<a href="http://www.doxygen.org/index.html">
264<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
265</body>
266</html>
Note: See TracBrowser for help on using the browser.