root/doc/html/classEKF__unQ.html @ 224

Revision 224, 35.0 kB (checked in by smidl, 15 years ago)

doc

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: EKF_unQ Class 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><a href="modules.html"><span>Modules</span></a></li>
14      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
15      <li><a href="files.html"><span>Files</span></a></li>
16    </ul>
17  </div>
18  <div class="tabs">
19    <ul>
20      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
21      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
22      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
23    </ul>
24  </div>
25</div>
26<div class="contents">
27<h1>EKF_unQ Class Reference</h1><!-- doxytag: class="EKF_unQ" --><!-- doxytag: inherits="EKFCh,BMcond,EKFCh,BMcond,EKFCh,BMcond,EKFCh,BMcond" -->Extended <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with unknown <code>Q</code>
28<a href="#_details">More...</a>
29<p>
30<div class="dynheader">
31Inheritance diagram for EKF_unQ:</div>
32<div class="dynsection">
33<p><center><img src="classEKF__unQ__inherit__graph.png" border="0" usemap="#EKF__unQ__inherit__map" alt="Inheritance graph"></center>
34<map name="EKF__unQ__inherit__map">
35<area shape="rect" href="classEKFCh.html" title="Extended Kalman Filter in Square root." alt="" coords="44,343,105,369"><area shape="rect" href="classKalmanCh.html" title="Kalman filter in square root form." alt="" coords="32,263,117,289"><area shape="rect" href="classKalman.html" title="Kalman\&lt; chmat \&gt;" alt="" coords="5,183,144,209"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="67,7,107,33"><area shape="rect" href="classKalman.html" title="Kalman filter with covariance matrices in square root form." alt="" coords="91,87,219,113"><area shape="rect" href="classBMcond.html" title="Conditional Bayesian Filter." alt="" coords="144,343,216,369"></map>
36<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
37<div class="dynheader">
38Collaboration diagram for EKF_unQ:</div>
39<div class="dynsection">
40<p><center><img src="classEKF__unQ__coll__graph.png" border="0" usemap="#EKF__unQ__coll__map" alt="Collaboration graph"></center>
41<map name="EKF__unQ__coll__map">
42<area shape="rect" href="classEKFCh.html" title="Extended Kalman Filter in Square root." alt="" coords="504,785,565,812"><area shape="rect" href="classKalmanCh.html" title="Kalman filter in square root form." alt="" coords="368,705,453,732"><area shape="rect" href="classKalman.html" title="Kalman\&lt; chmat \&gt;" alt="" coords="307,625,445,652"><area shape="rect" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities." alt="" coords="147,231,187,257"><area shape="rect" href="classKalman.html" title="Kalman filter with covariance matrices in square root form." alt="" coords="5,377,133,404"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="445,7,483,33"><area shape="rect" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density." alt="" coords="359,119,407,145"><area shape="rect" href="classdiffbifn.html" title="Class representing a differentiable function of two variables ." alt="" coords="539,119,603,145"><area shape="rect" href="classBMcond.html" title="Conditional Bayesian Filter." alt="" coords="604,785,676,812"><area shape="rect" href="classchmat.html" title="Symmetric matrix stored in square root decomposition using upper cholesky." alt="" coords="405,377,467,404"><area shape="rect" href="classenorm.html" title="enorm\&lt; chmat \&gt;" alt="" coords="251,493,384,520"><area shape="rect" href="classsqmat.html" title="Virtual class for representation of double symmetric matrices in square&#45;root form..." alt="" coords="405,231,467,257"><area shape="rect" href="classeEF.html" title="General conjugate exponential family posterior density." alt="" coords="303,231,345,257"><area shape="rect" href="classenorm.html" title="Gaussian density with positive definite (decomposed) covariance matrix." alt="" coords="259,377,381,404"><area shape="rect" href="classfnc.html" title="Class representing function &#160;of variable &#160;represented by rv." alt="" coords="653,7,693,33"></map>
43<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
44
45<p>
46<a href="classEKF__unQ-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
47<tr><td></td></tr>
48<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
49<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="159eaaa5a05c5ceecdaa20956a307244"></a><!-- doxytag: member="EKF_unQ::EKF_unQ" ref="159eaaa5a05c5ceecdaa20956a307244" args="(RV rx, RV ry, RV ru, RV rQ)" -->
50&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#159eaaa5a05c5ceecdaa20956a307244">EKF_unQ</a> (<a class="el" href="classRV.html">RV</a> rx, <a class="el" href="classRV.html">RV</a> ry, <a class="el" href="classRV.html">RV</a> ru, <a class="el" href="classRV.html">RV</a> rQ)</td></tr>
51
52<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br></td></tr>
53<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd06a8c662da244cf61bb5bd39688c99"></a><!-- doxytag: member="EKF_unQ::condition" ref="cd06a8c662da244cf61bb5bd39688c99" args="(const vec &amp;Q0)" -->
54void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#cd06a8c662da244cf61bb5bd39688c99">condition</a> (const vec &amp;Q0)</td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr>
57<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="159eaaa5a05c5ceecdaa20956a307244"></a><!-- doxytag: member="EKF_unQ::EKF_unQ" ref="159eaaa5a05c5ceecdaa20956a307244" args="(RV rx, RV ry, RV ru, RV rQ)" -->
58&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#159eaaa5a05c5ceecdaa20956a307244">EKF_unQ</a> (<a class="el" href="classRV.html">RV</a> rx, <a class="el" href="classRV.html">RV</a> ry, <a class="el" href="classRV.html">RV</a> ru, <a class="el" href="classRV.html">RV</a> rQ)</td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br></td></tr>
61<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd06a8c662da244cf61bb5bd39688c99"></a><!-- doxytag: member="EKF_unQ::condition" ref="cd06a8c662da244cf61bb5bd39688c99" args="(const vec &amp;Q0)" -->
62void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#cd06a8c662da244cf61bb5bd39688c99">condition</a> (const vec &amp;Q0)</td></tr>
63
64<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr>
65<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="159eaaa5a05c5ceecdaa20956a307244"></a><!-- doxytag: member="EKF_unQ::EKF_unQ" ref="159eaaa5a05c5ceecdaa20956a307244" args="(RV rx, RV ry, RV ru, RV rQ)" -->
66&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#159eaaa5a05c5ceecdaa20956a307244">EKF_unQ</a> (<a class="el" href="classRV.html">RV</a> rx, <a class="el" href="classRV.html">RV</a> ry, <a class="el" href="classRV.html">RV</a> ru, <a class="el" href="classRV.html">RV</a> rQ)</td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br></td></tr>
69<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd06a8c662da244cf61bb5bd39688c99"></a><!-- doxytag: member="EKF_unQ::condition" ref="cd06a8c662da244cf61bb5bd39688c99" args="(const vec &amp;Q0)" -->
70void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#cd06a8c662da244cf61bb5bd39688c99">condition</a> (const vec &amp;Q0)</td></tr>
71
72<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr>
73<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44b49058c8eb27c7910ae31a1dfd3d21"></a><!-- doxytag: member="EKF_unQ::bayes" ref="44b49058c8eb27c7910ae31a1dfd3d21" args="(const vec dt)" -->
74void&nbsp;</td><td class="memItemRight" valign="bottom"><b>bayes</b> (const vec dt)</td></tr>
75
76<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="159eaaa5a05c5ceecdaa20956a307244"></a><!-- doxytag: member="EKF_unQ::EKF_unQ" ref="159eaaa5a05c5ceecdaa20956a307244" args="(RV rx, RV ry, RV ru, RV rQ)" -->
77&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#159eaaa5a05c5ceecdaa20956a307244">EKF_unQ</a> (<a class="el" href="classRV.html">RV</a> rx, <a class="el" href="classRV.html">RV</a> ry, <a class="el" href="classRV.html">RV</a> ru, <a class="el" href="classRV.html">RV</a> rQ)</td></tr>
78
79<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br></td></tr>
80<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd06a8c662da244cf61bb5bd39688c99"></a><!-- doxytag: member="EKF_unQ::condition" ref="cd06a8c662da244cf61bb5bd39688c99" args="(const vec &amp;Q0)" -->
81void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKF__unQ.html#cd06a8c662da244cf61bb5bd39688c99">condition</a> (const vec &amp;Q0)</td></tr>
82
83<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Substitute <code>val</code> for <code>rvc</code>. <br></td></tr>
84<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0216bed270df59fe65d0d62d41f8257c"></a><!-- doxytag: member="EKF_unQ::set_parameters" ref="0216bed270df59fe65d0d62d41f8257c" args="(diffbifn *pfxu, diffbifn *phxu, const chmat Q0, const chmat R0)" -->
85void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKFCh.html#0216bed270df59fe65d0d62d41f8257c">set_parameters</a> (<a class="el" href="classdiffbifn.html">diffbifn</a> *<a class="el" href="classEKFCh.html#f4d595c2a674f8c6831eb1909bf21757">pfxu</a>, <a class="el" href="classdiffbifn.html">diffbifn</a> *<a class="el" href="classEKFCh.html#02503fee942fb63bfbe27354cdf8e734">phxu</a>, const <a class="el" href="classchmat.html">chmat</a> Q0, const <a class="el" href="classchmat.html">chmat</a> R0)</td></tr>
86
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set nonlinear functions for mean values and covariance matrices. <br></td></tr>
88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="92fb227287af05c9f0078d523c7c9793"></a><!-- doxytag: member="EKF_unQ::set_parameters" ref="92fb227287af05c9f0078d523c7c9793" args="(const mat &amp;A0, const mat &amp;B0, const mat &amp;C0, const mat &amp;D0, const chmat &amp;R0, const chmat &amp;Q0)" -->
89void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalmanCh.html#92fb227287af05c9f0078d523c7c9793">set_parameters</a> (const mat &amp;A0, const mat &amp;B0, const mat &amp;C0, const mat &amp;D0, const <a class="el" href="classchmat.html">chmat</a> &amp;R0, const <a class="el" href="classchmat.html">chmat</a> &amp;Q0)</td></tr>
90
91<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set parameters with check of relevance. <br></td></tr>
92<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96f6edda324a0b7ef8b4e86cc7af60c1"></a><!-- doxytag: member="EKF_unQ::bayes" ref="96f6edda324a0b7ef8b4e86cc7af60c1" args="(const vec &amp;dt)" -->
93void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKFCh.html#96f6edda324a0b7ef8b4e86cc7af60c1">bayes</a> (const vec &amp;dt)</td></tr>
94
95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Here dt = [yt;ut] of appropriate dimensions. <br></td></tr>
96<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b261b20f6210d4c85131d33302df0adc"></a><!-- doxytag: member="EKF_unQ::set_est" ref="b261b20f6210d4c85131d33302df0adc" args="(const vec &amp;mu0, const chmat &amp;P0)" -->
97void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalmanCh.html#b261b20f6210d4c85131d33302df0adc">set_est</a> (const vec &amp;mu0, const <a class="el" href="classchmat.html">chmat</a> &amp;P0)</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set estimate values, used e.g. in initialization. <br></td></tr>
100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67cccaf1c4dcdcd1df110e15ef326bfe"></a><!-- doxytag: member="EKF_unQ::_epdf" ref="67cccaf1c4dcdcd1df110e15ef326bfe" args="() const " -->
101const <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>
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="11f82ef04e3dbc54bd1d3d89edb6aa07"></a><!-- doxytag: member="EKF_unQ::_e" ref="11f82ef04e3dbc54bd1d3d89edb6aa07" args="() const " -->
105const <a class="el" href="classenorm.html">enorm</a>&lt; <a class="el" href="classchmat.html">chmat</a> &gt; *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#11f82ef04e3dbc54bd1d3d89edb6aa07">_e</a> () const </td></tr>
106
107<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>
108<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="980fcd41c6c548c5da7b8b67c8e6da79"></a><!-- doxytag: member="EKF_unQ::__K" ref="980fcd41c6c548c5da7b8b67c8e6da79" args="()" -->
109mat &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#980fcd41c6c548c5da7b8b67c8e6da79">__K</a> ()</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"><a class="anchor" name="ac9540f3850b74d89a5fe4db6fc358ce"></a><!-- doxytag: member="EKF_unQ::_dP" ref="ac9540f3850b74d89a5fe4db6fc358ce" args="()" -->
113vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#ac9540f3850b74d89a5fe4db6fc358ce">_dP</a> ()</td></tr>
114
115<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
116<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0186270f75189677f390fe088a9947e9"></a><!-- doxytag: member="EKF_unQ::bayesB" ref="0186270f75189677f390fe088a9947e9" args="(const mat &amp;Dt)" -->
117virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#0186270f75189677f390fe088a9947e9">bayesB</a> (const mat &amp;Dt)</td></tr>
118
119<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Batch Bayes rule (columns of Dt are observations). <br></td></tr>
120<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>
121
122<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd0660f2a1a344b56ac39802708ff165"></a><!-- doxytag: member="EKF_unQ::logpred_m" ref="cd0660f2a1a344b56ac39802708ff165" args="(const mat &amp;dt) const " -->
123vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#cd0660f2a1a344b56ac39802708ff165">logpred_m</a> (const mat &amp;dt) const </td></tr>
124
125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix version of logpred. <br></td></tr>
126<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5594d68ee9aa6fc8c1e79019da5c9d56"></a><!-- doxytag: member="EKF_unQ::predictor" ref="5594d68ee9aa6fc8c1e79019da5c9d56" args="(const RV &amp;rv) const " -->
127virtual <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>
128
129<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructs a predictive density (marginal density on data). <br></td></tr>
130<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="126bd2595c48e311fc2a7ab72876092a"></a><!-- doxytag: member="EKF_unQ::_rv" ref="126bd2595c48e311fc2a7ab72876092a" args="() const " -->
131const <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>
132
133<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
134<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87f4a547d2c29180be88175e5eab9c88"></a><!-- doxytag: member="EKF_unQ::_ll" ref="87f4a547d2c29180be88175e5eab9c88" args="() const " -->
135double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#87f4a547d2c29180be88175e5eab9c88">_ll</a> () const </td></tr>
136
137<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
138<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ffa9f23669aabecc3760c06c6987522"></a><!-- doxytag: member="EKF_unQ::set_evalll" ref="1ffa9f23669aabecc3760c06c6987522" args="(bool evl0)" -->
139void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#1ffa9f23669aabecc3760c06c6987522">set_evalll</a> (bool evl0)</td></tr>
140
141<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
142<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>
143
144<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3fa60348b2da6b4208bb95b8d146900a"></a><!-- doxytag: member="EKF_unQ::_rvc" ref="3fa60348b2da6b4208bb95b8d146900a" args="() const " -->
145const <a class="el" href="classRV.html">RV</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBMcond.html#3fa60348b2da6b4208bb95b8d146900a">_rvc</a> () const </td></tr>
146
147<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
148<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
149<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4d595c2a674f8c6831eb1909bf21757"></a><!-- doxytag: member="EKF_unQ::pfxu" ref="f4d595c2a674f8c6831eb1909bf21757" args="" -->
150<a class="el" href="classdiffbifn.html">diffbifn</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKFCh.html#f4d595c2a674f8c6831eb1909bf21757">pfxu</a></td></tr>
151
152<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal Model f(x,u). <br></td></tr>
153<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="02503fee942fb63bfbe27354cdf8e734"></a><!-- doxytag: member="EKF_unQ::phxu" ref="02503fee942fb63bfbe27354cdf8e734" args="" -->
154<a class="el" href="classdiffbifn.html">diffbifn</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEKFCh.html#02503fee942fb63bfbe27354cdf8e734">phxu</a></td></tr>
155
156<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Observation Model h(x,u). <br></td></tr>
157<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="94ee9da75b0e0f632e4a354988ca3798"></a><!-- doxytag: member="EKF_unQ::preA" ref="94ee9da75b0e0f632e4a354988ca3798" args="" -->
158mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalmanCh.html#94ee9da75b0e0f632e4a354988ca3798">preA</a></td></tr>
159
160<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">pre array (triangular matrix) <br></td></tr>
161<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0d31a26dc72b5846cfe5af3ccb63ac87"></a><!-- doxytag: member="EKF_unQ::postA" ref="0d31a26dc72b5846cfe5af3ccb63ac87" args="" -->
162mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalmanCh.html#0d31a26dc72b5846cfe5af3ccb63ac87">postA</a></td></tr>
163
164<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">post array (triangular matrix) <br></td></tr>
165<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7501230c2fafa3655887d2da23b3184c"></a><!-- doxytag: member="EKF_unQ::rvy" ref="7501230c2fafa3655887d2da23b3184c" args="" -->
166<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>
167
168<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indetifier of output rv. <br></td></tr>
169<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44a16ffd5ac1e6e39bae34fea9e1e498"></a><!-- doxytag: member="EKF_unQ::rvu" ref="44a16ffd5ac1e6e39bae34fea9e1e498" args="" -->
170<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>
171
172<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indetifier of exogeneous rv. <br></td></tr>
173<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39c8c403b46fa3b8c7da77cb2e3729eb"></a><!-- doxytag: member="EKF_unQ::dimx" ref="39c8c403b46fa3b8c7da77cb2e3729eb" args="" -->
174int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#39c8c403b46fa3b8c7da77cb2e3729eb">dimx</a></td></tr>
175
176<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rv.count() <br></td></tr>
177<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba17b956df1e38b31fbbc299c8213b6a"></a><!-- doxytag: member="EKF_unQ::dimy" ref="ba17b956df1e38b31fbbc299c8213b6a" args="" -->
178int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#ba17b956df1e38b31fbbc299c8213b6a">dimy</a></td></tr>
179
180<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rvy.count() <br></td></tr>
181<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0153795a1444b6968a86409c778d9ce"></a><!-- doxytag: member="EKF_unQ::dimu" ref="b0153795a1444b6968a86409c778d9ce" args="" -->
182int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#b0153795a1444b6968a86409c778d9ce">dimu</a></td></tr>
183
184<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of rvu.count() <br></td></tr>
185<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e02efe86ee91e9c74b93b425fe060b9"></a><!-- doxytag: member="EKF_unQ::A" ref="5e02efe86ee91e9c74b93b425fe060b9" args="" -->
186mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#5e02efe86ee91e9c74b93b425fe060b9">A</a></td></tr>
187
188<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix A. <br></td></tr>
189<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc87704284a6c0bca13bf51f4345a50a"></a><!-- doxytag: member="EKF_unQ::B" ref="dc87704284a6c0bca13bf51f4345a50a" args="" -->
190mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#dc87704284a6c0bca13bf51f4345a50a">B</a></td></tr>
191
192<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix B. <br></td></tr>
193<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86a805cd6515872d1132ad0d6eb5dc13"></a><!-- doxytag: member="EKF_unQ::C" ref="86a805cd6515872d1132ad0d6eb5dc13" args="" -->
194mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#86a805cd6515872d1132ad0d6eb5dc13">C</a></td></tr>
195
196<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix C. <br></td></tr>
197<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d69f774ba3335c970c1c5b1d182f4dd1"></a><!-- doxytag: member="EKF_unQ::D" ref="d69f774ba3335c970c1c5b1d182f4dd1" args="" -->
198mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#d69f774ba3335c970c1c5b1d182f4dd1">D</a></td></tr>
199
200<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix D. <br></td></tr>
201<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b69015c800eb93f3ee49da23a6f55d9"></a><!-- doxytag: member="EKF_unQ::Q" ref="9b69015c800eb93f3ee49da23a6f55d9" args="" -->
202<a class="el" href="classchmat.html">chmat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#9b69015c800eb93f3ee49da23a6f55d9">Q</a></td></tr>
203
204<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix Q in square-root form. <br></td></tr>
205<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11d171dc0e0ab111c56a70f98b97b3ec"></a><!-- doxytag: member="EKF_unQ::R" ref="11d171dc0e0ab111c56a70f98b97b3ec" args="" -->
206<a class="el" href="classchmat.html">chmat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#11d171dc0e0ab111c56a70f98b97b3ec">R</a></td></tr>
207
208<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix R in square-root form. <br></td></tr>
209<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5568c74bac67ae6d3b1061dba60c9424"></a><!-- doxytag: member="EKF_unQ::est" ref="5568c74bac67ae6d3b1061dba60c9424" args="" -->
210<a class="el" href="classenorm.html">enorm</a>&lt; <a class="el" href="classchmat.html">chmat</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#5568c74bac67ae6d3b1061dba60c9424">est</a></td></tr>
211
212<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">posterior density on $x_t$ <br></td></tr>
213<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e580ab06483952bd03f2e651763e184f"></a><!-- doxytag: member="EKF_unQ::fy" ref="e580ab06483952bd03f2e651763e184f" args="" -->
214<a class="el" href="classenorm.html">enorm</a>&lt; <a class="el" href="classchmat.html">chmat</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#e580ab06483952bd03f2e651763e184f">fy</a></td></tr>
215
216<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">preditive density on $y_t$ <br></td></tr>
217<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d422f51467c7a06174af2476d2826132"></a><!-- doxytag: member="EKF_unQ::_K" ref="d422f51467c7a06174af2476d2826132" args="" -->
218mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#d422f51467c7a06174af2476d2826132">_K</a></td></tr>
219
220<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>
221<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="764bbc95238eda11fc81c5ebd0b1dcfd"></a><!-- doxytag: member="EKF_unQ::_yp" ref="764bbc95238eda11fc81c5ebd0b1dcfd" args="" -->
222vec &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#764bbc95238eda11fc81c5ebd0b1dcfd">_yp</a></td></tr>
223
224<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of fy.mu <br></td></tr>
225<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45c9f928d2d62e0c884900fb3380f904"></a><!-- doxytag: member="EKF_unQ::_Ry" ref="45c9f928d2d62e0c884900fb3380f904" args="" -->
226<a class="el" href="classchmat.html">chmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#45c9f928d2d62e0c884900fb3380f904">_Ry</a></td></tr>
227
228<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of fy.R <br></td></tr>
229<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe803a81d2d847b0b1db3c6b29c18061"></a><!-- doxytag: member="EKF_unQ::_mu" ref="fe803a81d2d847b0b1db3c6b29c18061" args="" -->
230vec &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#fe803a81d2d847b0b1db3c6b29c18061">_mu</a></td></tr>
231
232<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of est.mu <br></td></tr>
233<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9fb808cc94a4c2652e1fb93be9bb7dcf"></a><!-- doxytag: member="EKF_unQ::_P" ref="9fb808cc94a4c2652e1fb93be9bb7dcf" args="" -->
234<a class="el" href="classchmat.html">chmat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKalman.html#9fb808cc94a4c2652e1fb93be9bb7dcf">_P</a></td></tr>
235
236<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache of est.R <br></td></tr>
237<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af00f0612fabe66241dd507188cdbf88"></a><!-- doxytag: member="EKF_unQ::rv" ref="af00f0612fabe66241dd507188cdbf88" args="" -->
238<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>
239
240<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Random variable of the posterior. <br></td></tr>
241<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5623fef6572a08c2b53b8c87b82dc979"></a><!-- doxytag: member="EKF_unQ::ll" ref="5623fef6572a08c2b53b8c87b82dc979" args="" -->
242double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#5623fef6572a08c2b53b8c87b82dc979">ll</a></td></tr>
243
244<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Logarithm of marginalized data likelihood. <br></td></tr>
245<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf6fb59b30141074f8ee1e2f43d03129"></a><!-- doxytag: member="EKF_unQ::evalll" ref="bf6fb59b30141074f8ee1e2f43d03129" args="" -->
246bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBM.html#bf6fb59b30141074f8ee1e2f43d03129">evalll</a></td></tr>
247
248<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>
249<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ba793c8ec453f04d372d17195ed8dec"></a><!-- doxytag: member="EKF_unQ::rvc" ref="9ba793c8ec453f04d372d17195ed8dec" args="" -->
250<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBMcond.html#9ba793c8ec453f04d372d17195ed8dec">rvc</a></td></tr>
251
252<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Identificator of the conditioning variable. <br></td></tr>
253</table>
254<hr><a name="_details"></a><h2>Detailed Description</h2>
255Extended <a class="el" href="classKalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter with unknown <code>Q</code>. <hr><h2>Member Function Documentation</h2>
256<a class="anchor" name="8a8ce6df431689964c41cc6c849cfd06"></a><!-- doxytag: member="EKF_unQ::logpred" ref="8a8ce6df431689964c41cc6c849cfd06" args="(const vec &amp;dt) const " -->
257<div class="memitem">
258<div class="memproto">
259      <table class="memname">
260        <tr>
261          <td class="memname">virtual double BM::logpred           </td>
262          <td>(</td>
263          <td class="paramtype">const vec &amp;&nbsp;</td>
264          <td class="paramname"> <em>dt</em>          </td>
265          <td>&nbsp;)&nbsp;</td>
266          <td> const<code> [inline, virtual, inherited]</code></td>
267        </tr>
268      </table>
269</div>
270<div class="memdoc">
271
272<p>
273Evaluates predictive log-likelihood of the given data record I.e. marginal likelihood of the data with the posterior integrated out.
274<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>
275
276<p>Referenced by <a class="el" href="libBM_8h-source.html#l00439">BM::logpred_m()</a>.</p>
277
278</div>
279</div><p>
280<a class="anchor" name="eb58c81d6a7b75b05fc6f276eed78887"></a><!-- doxytag: member="EKF_unQ::_copy_" ref="eb58c81d6a7b75b05fc6f276eed78887" args="(bool changerv=false)" -->
281<div class="memitem">
282<div class="memproto">
283      <table class="memname">
284        <tr>
285          <td class="memname">virtual <a class="el" href="classBM.html">BM</a>* BM::_copy_           </td>
286          <td>(</td>
287          <td class="paramtype">bool&nbsp;</td>
288          <td class="paramname"> <em>changerv</em> = <code>false</code>          </td>
289          <td>&nbsp;)&nbsp;</td>
290          <td><code> [inline, virtual, inherited]</code></td>
291        </tr>
292      </table>
293</div>
294<div class="memdoc">
295
296<p>
297Copy 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; }
298<p>Reimplemented in <a class="el" href="classARX.html#5de61fbd4f97fa3216760b1f733f5af0">ARX</a>, and <a class="el" href="classBMEF.html#97f5312efe4a5bedb86d2daec59d8651">BMEF</a>.</p>
299
300</div>
301</div><p>
302<hr>The documentation for this class was generated from the following files:<ul>
303<li>work/git/mixpp/pmsm/<a class="el" href="mpf__test_8cpp.html">mpf_test.cpp</a><li>work/git/mixpp/pmsm/pmsm_sim.cpp<li>work/git/mixpp/pmsm/pmsm_sim2.cpp<li>work/git/mixpp/pmsm/<a class="el" href="pmsm__unkQpf_8cpp.html">pmsm_unkQpf.cpp</a></ul>
304</div>
305<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jan 5 19:29:15 2009 for mixpp by&nbsp;
306<a href="http://www.doxygen.org/index.html">
307<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
308</body>
309</html>
Note: See TracBrowser for help on using the browser.