Changeset 290 for doc/html/libKF_8h-source.html
- Timestamp:
- 03/06/09 15:03:45 (16 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
doc/html/libKF_8h-source.html
r287 r290 2 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3 3 <title>mixpp: libKF.h Source File</title> 4 <link href="tabs.css" rel="stylesheet" type="text/css"> 4 5 <link href="doxygen.css" rel="stylesheet" type="text/css"> 5 <link href="tabs.css" rel="stylesheet" type="text/css">6 6 </head><body> 7 <!-- Generated by Doxygen 1.5. 6-->7 <!-- Generated by Doxygen 1.5.8 --> 8 8 <script type="text/javascript"> 9 9 <!-- … … 53 53 <li><a href="pages.html"><span>Related Pages</span></a></li> 54 54 <li><a href="modules.html"><span>Modules</span></a></li> 55 <li><a href=" classes.html"><span>Classes</span></a></li>55 <li><a href="annotated.html"><span>Classes</span></a></li> 56 56 <li class="current"><a href="files.html"><span>Files</span></a></li> 57 </ul> 58 </div> 59 <div class="tabs"> 60 <ul> 61 <li><a href="files.html"><span>File List</span></a></li> 62 <li><a href="globals.html"><span>File Members</span></a></li> 57 63 </ul> 58 64 </div> … … 159 165 <a name="l00185"></a>00185 <a class="code" href="classbdm_1_1diffbifn.html" title="Class representing a differentiable function of two variables .">diffbifn</a>* phxu; 160 166 <a name="l00186"></a>00186 161 <a name="l00187"></a>00187 <a class="code" href="classbdm_1_1enorm.html" title="Gaussian density with positive definite (decomposed) covariance matrix.">enorm<fsqmat></a> E;167 <a name="l00187"></a>00187 <a class="code" href="classbdm_1_1enorm.html">enorm<fsqmat></a> E; 162 168 <a name="l00188"></a>00188 <span class="keyword">public</span>: 163 169 <a name="l00190"></a>00190 <a class="code" href="classbdm_1_1EKFfull.html#6939c345389abb8b2481457b4cfe1165" title="Default constructor.">EKFfull</a> ( ); … … 166 172 <a name="l00196"></a><a class="code" href="classbdm_1_1EKFfull.html#7562b3d3c17241dab3baf70258742eb2">00196</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1EKFfull.html#7562b3d3c17241dab3baf70258742eb2" title="set estimates">set_est</a> ( vec mu0, mat P0 ) {<a class="code" href="classbdm_1_1KalmanFull.html#2defb75e58892615c5f95fd844f3a666" title="Mean value of the posterior density.">mu</a>=mu0;<a class="code" href="classbdm_1_1KalmanFull.html#acacd228e100c3e937de575ad2d7cd9c" title="Variance of the posterior density.">P</a>=P0;}; 167 173 <a name="l00198"></a><a class="code" href="classbdm_1_1EKFfull.html#7e9a69f36a0a0615c9abb806772ef36d">00198</a> <span class="keyword">const</span> <a class="code" href="classbdm_1_1epdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>& <a class="code" href="classbdm_1_1EKFfull.html#7e9a69f36a0a0615c9abb806772ef36d" title="dummy!">posterior</a>()<span class="keyword"> const</span>{<span class="keywordflow">return</span> E;}; 168 <a name="l00199"></a>00199 <span class="keyword">const</span> <a class="code" href="classbdm_1_1enorm.html" title="Gaussian density with positive definite (decomposed) covariance matrix.">enorm<fsqmat></a>* _e()<span class="keyword"> const</span>{<span class="keywordflow">return</span> &E;};174 <a name="l00199"></a>00199 <span class="keyword">const</span> <a class="code" href="classbdm_1_1enorm.html">enorm<fsqmat></a>* _e()<span class="keyword"> const</span>{<span class="keywordflow">return</span> &E;}; 169 175 <a name="l00200"></a>00200 <span class="keyword">const</span> mat _R() {<span class="keywordflow">return</span> <a class="code" href="classbdm_1_1KalmanFull.html#acacd228e100c3e937de575ad2d7cd9c" title="Variance of the posterior density.">P</a>;} 170 176 <a name="l00201"></a>00201 }; … … 222 228 <a name="l00285"></a>00285 223 229 <a name="l00286"></a>00286 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 224 <a name="l00287"></a><a class="code" href="classbdm_1_1Kalman.html#8b22c45cffa949d70b8e5ac92ed5ce25">00287</a> <a class="code" href="classbdm_1_1Kalman.html " title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T>::Kalman</a> ( <span class="keyword">const</span> <a class="code" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T></a> &K0 ) : <a class="code" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> ( ),rvy ( K0.rvy ),rvu ( K0.rvu ),230 <a name="l00287"></a><a class="code" href="classbdm_1_1Kalman.html#8b22c45cffa949d70b8e5ac92ed5ce25">00287</a> <a class="code" href="classbdm_1_1Kalman.html#025a0196cbcc2e6adb13311f9d3d52b4" title="Default constructor.">Kalman<sq_T>::Kalman</a> ( <span class="keyword">const</span> <a class="code" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T></a> &K0 ) : <a class="code" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> ( ),rvy ( K0.rvy ),rvu ( K0.rvu ), 225 231 <a name="l00288"></a>00288 dimx ( K0.dimx ), dimy ( K0.dimy ),dimu ( K0.dimu ), 226 232 <a name="l00289"></a>00289 A ( K0.A ), B ( K0.B ), C ( K0.C ), D ( K0.D ), … … 237 243 <a name="l00300"></a>00300 238 244 <a name="l00301"></a>00301 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 239 <a name="l00302"></a><a class="code" href="classbdm_1_1Kalman.html#025a0196cbcc2e6adb13311f9d3d52b4">00302</a> <a class="code" href="classbdm_1_1Kalman.html " title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T>::Kalman</a> ( ) : <a class="code" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> (), est ( ), fy (), _yp ( fy._mu() ), _Ry ( fy._R() ), _mu ( est._mu() ), _P ( est._R() ) {245 <a name="l00302"></a><a class="code" href="classbdm_1_1Kalman.html#025a0196cbcc2e6adb13311f9d3d52b4">00302</a> <a class="code" href="classbdm_1_1Kalman.html#025a0196cbcc2e6adb13311f9d3d52b4" title="Default constructor.">Kalman<sq_T>::Kalman</a> ( ) : <a class="code" href="classbdm_1_1BM.html" title="Bayesian Model of a system, i.e. all uncertainty is modeled by probabilities.">BM</a> (), est ( ), fy (), _yp ( fy._mu() ), _Ry ( fy._R() ), _mu ( est._mu() ), _P ( est._R() ) { 240 246 <a name="l00303"></a>00303 }; 241 247 <a name="l00304"></a>00304 242 248 <a name="l00305"></a>00305 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 243 <a name="l00306"></a><a class="code" href="classbdm_1_1Kalman.html#3c7fb87fb6b87d08deb6a5a7862da957">00306</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1Kalman.html " title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T>::set_parameters</a> ( <span class="keyword">const</span> mat &A0,<span class="keyword">const</span> mat &B0, <span class="keyword">const</span> mat &C0, <span class="keyword">const</span> mat &D0, <span class="keyword">const</span> sq_T &Q0, <span class="keyword">const</span> sq_T &R0 ) {249 <a name="l00306"></a><a class="code" href="classbdm_1_1Kalman.html#3c7fb87fb6b87d08deb6a5a7862da957">00306</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1Kalman.html#3c7fb87fb6b87d08deb6a5a7862da957" title="Set parameters with check of relevance.">Kalman<sq_T>::set_parameters</a> ( <span class="keyword">const</span> mat &A0,<span class="keyword">const</span> mat &B0, <span class="keyword">const</span> mat &C0, <span class="keyword">const</span> mat &D0, <span class="keyword">const</span> sq_T &Q0, <span class="keyword">const</span> sq_T &R0 ) { 244 250 <a name="l00307"></a>00307 <a class="code" href="classbdm_1_1Kalman.html#ba7699cdb3b1382a54d3e28b9b7517fa" title="cache of rv.count()">dimx</a> = A0.rows(); 245 251 <a name="l00308"></a>00308 <a class="code" href="classbdm_1_1Kalman.html#d2c36ba01760bf207b985bf321b7817f" title="cache of rvy.count()">dimy</a> = C0.rows(); … … 262 268 <a name="l00325"></a>00325 263 269 <a name="l00326"></a>00326 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 264 <a name="l00327"></a><a class="code" href="classbdm_1_1Kalman.html#4a39330c14eff8d13179e868a1d1aa8c">00327</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1Kalman.html " title="Kalman filter with covariance matrices in square root form.">Kalman<sq_T>::bayes</a> ( <span class="keyword">const</span> vec &dt ) {270 <a name="l00327"></a><a class="code" href="classbdm_1_1Kalman.html#4a39330c14eff8d13179e868a1d1aa8c">00327</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1Kalman.html#4a39330c14eff8d13179e868a1d1aa8c" title="Here dt = [yt;ut] of appropriate dimensions.">Kalman<sq_T>::bayes</a> ( <span class="keyword">const</span> vec &dt ) { 265 271 <a name="l00328"></a>00328 it_assert_debug ( dt.length() == ( <a class="code" href="classbdm_1_1Kalman.html#d2c36ba01760bf207b985bf321b7817f" title="cache of rvy.count()">dimy</a>+<a class="code" href="classbdm_1_1Kalman.html#c5136ef617f6ac0e426bea222755d92b" title="cache of rvu.count()">dimu</a> ),<span class="stringliteral">"KalmanFull::bayes wrong size of dt"</span> ); 266 272 <a name="l00329"></a>00329 … … 304 310 <a name="l00367"></a>00367 305 311 <a name="l00368"></a>00368 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 306 <a name="l00369"></a><a class="code" href="classbdm_1_1EKF.html#d087a8bb408d26ac4f5c542746b81059">00369</a> <a class="code" href="classbdm_1_1EKF.html " title="Extended Kalman Filter.">EKF<sq_T>::EKF</a> ( <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvx0, <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvy0, <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvu0 ) : <a class="code" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a><sq_T> ( rvx0,rvy0,rvu0 ) {}312 <a name="l00369"></a><a class="code" href="classbdm_1_1EKF.html#d087a8bb408d26ac4f5c542746b81059">00369</a> <a class="code" href="classbdm_1_1EKF.html#d087a8bb408d26ac4f5c542746b81059" title="Default constructor.">EKF<sq_T>::EKF</a> ( <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvx0, <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvy0, <a class="code" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> rvu0 ) : <a class="code" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a><sq_T> ( rvx0,rvy0,rvu0 ) {} 307 313 <a name="l00370"></a>00370 308 314 <a name="l00371"></a>00371 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 309 <a name="l00372"></a><a class="code" href="classbdm_1_1EKF.html#00fec1a0a6a467eb83fb36c65eba7bcb">00372</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1EKF.html " title="Extended Kalman Filter.">EKF<sq_T>::set_parameters</a> ( <a class="code" href="classbdm_1_1diffbifn.html" title="Class representing a differentiable function of two variables .">diffbifn</a>* pfxu0, <a class="code" href="classbdm_1_1diffbifn.html" title="Class representing a differentiable function of two variables .">diffbifn</a>* phxu0,<span class="keyword">const</span> sq_T Q0,<span class="keyword">const</span> sq_T R0 ) {315 <a name="l00372"></a><a class="code" href="classbdm_1_1EKF.html#00fec1a0a6a467eb83fb36c65eba7bcb">00372</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1EKF.html#00fec1a0a6a467eb83fb36c65eba7bcb" title="Set nonlinear functions for mean values and covariance matrices.">EKF<sq_T>::set_parameters</a> ( <a class="code" href="classbdm_1_1diffbifn.html" title="Class representing a differentiable function of two variables .">diffbifn</a>* pfxu0, <a class="code" href="classbdm_1_1diffbifn.html" title="Class representing a differentiable function of two variables .">diffbifn</a>* phxu0,<span class="keyword">const</span> sq_T Q0,<span class="keyword">const</span> sq_T R0 ) { 310 316 <a name="l00373"></a>00373 pfxu = pfxu0; 311 317 <a name="l00374"></a>00374 phxu = phxu0; … … 324 330 <a name="l00387"></a>00387 325 331 <a name="l00388"></a>00388 <span class="keyword">template</span><<span class="keyword">class</span> sq_T> 326 <a name="l00389"></a><a class="code" href="classbdm_1_1EKF.html#3fb182ecc29b10ca1163cecbf3bcccfa">00389</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1EKF.html " title="Extended Kalman Filter.">EKF<sq_T>::bayes</a> ( <span class="keyword">const</span> vec &dt ) {332 <a name="l00389"></a><a class="code" href="classbdm_1_1EKF.html#3fb182ecc29b10ca1163cecbf3bcccfa">00389</a> <span class="keywordtype">void</span> <a class="code" href="classbdm_1_1EKF.html#3fb182ecc29b10ca1163cecbf3bcccfa" title="Here dt = [yt;ut] of appropriate dimensions.">EKF<sq_T>::bayes</a> ( <span class="keyword">const</span> vec &dt ) { 327 333 <a name="l00390"></a>00390 it_assert_debug ( dt.length() == ( <a class="code" href="classbdm_1_1Kalman.html#d2c36ba01760bf207b985bf321b7817f" title="cache of rvy.count()">dimy</a>+<a class="code" href="classbdm_1_1Kalman.html#c5136ef617f6ac0e426bea222755d92b" title="cache of rvu.count()">dimu</a> ),<span class="stringliteral">"KalmanFull::bayes wrong size of dt"</span> ); 328 334 <a name="l00391"></a>00391 … … 364 370 <a name="l00427"></a>00427 365 371 </pre></div></div> 366 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Mar 4 18:50:112009 for mixpp by 372 <hr size="1"><address style="text-align: right;"><small>Generated on Fri Mar 6 15:01:36 2009 for mixpp by 367 373 <a href="http://www.doxygen.org/index.html"> 368 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5. 6</small></address>374 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address> 369 375 </body> 370 376 </html>