27 | | <a name="l00022"></a>00022 |
28 | | <a name="l00027"></a><a class="code" href="classARX.html">00027</a> <span class="keyword">class </span><a class="code" href="classARX.html" title="Ligear-Gaussian autoregressive model.">ARX</a> : <span class="keyword">public</span> <a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> { |
29 | | <a name="l00028"></a>00028 <span class="keyword">protected</span>: |
30 | | <a name="l00030"></a><a class="code" href="classARX.html#89e4fe48c9953307855b372351d290ab">00030</a> mat <a class="code" href="classARX.html#89e4fe48c9953307855b372351d290ab" title="Sufficient statistics.">V</a>; |
31 | | <a name="l00031"></a>00031 egiw <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>; |
32 | | <a name="l00032"></a>00032 <span class="keyword">public</span>: |
33 | | <a name="l00033"></a>00033 |
34 | | <a name="l00035"></a><a class="code" href="classARX.html#e9c85cefb7342bced83f38e12913bb68">00035</a> <a class="code" href="classARX.html#e9c85cefb7342bced83f38e12913bb68" title="Default constructor.">ARX</a>(<span class="keyword">const</span> <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &rv0) :<a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a>(rv0) {}; |
35 | | <a name="l00036"></a>00036 |
36 | | <a name="l00040"></a>00040 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classARX.html#ec6ab76ea10fc8c61006e15c7013b1ff" title="Incremental Bayes rule.">bayes</a> ( <span class="keyword">const</span> vec &dt ) = 0; |
37 | | <a name="l00042"></a>00042 <span class="keywordtype">void</span> <a class="code" href="classARX.html#ec6ab76ea10fc8c61006e15c7013b1ff" title="Incremental Bayes rule.">bayes</a> ( mat Dt ); |
38 | | <a name="l00044"></a>00044 <span class="keyword">virtual</span> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>& <a class="code" href="classARX.html#dbd59b76615ff2d2cd623b3107b58c5e" title="Returns a pointer to the epdf representing posterior density on parameters. Use with...">_epdf</a>()=0; |
39 | | <a name="l00045"></a>00045 }; |
40 | | <a name="l00046"></a>00046 |
41 | | <a name="l00056"></a><a class="code" href="classBMcond.html">00056</a> <span class="keyword">class </span><a class="code" href="classBMcond.html" title="Conditional Bayesian Filter.">BMcond</a> { |
42 | | <a name="l00057"></a>00057 <span class="keyword">protected</span>: |
43 | | <a name="l00059"></a><a class="code" href="classBMcond.html#9ba793c8ec453f04d372d17195ed8dec">00059</a> <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> <a class="code" href="classBMcond.html#9ba793c8ec453f04d372d17195ed8dec" title="Identificator of the conditioning variable.">rvc</a>; |
44 | | <a name="l00060"></a>00060 <span class="keyword">public</span>: |
45 | | <a name="l00062"></a>00062 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classBMcond.html#3543cfe274c35f9033c24d8036a96c4d" title="Substitute val for rvc.">condition</a> ( <span class="keyword">const</span> vec &val ) =0; |
46 | | <a name="l00064"></a><a class="code" href="classBMcond.html#9a38dcdabef902fd91da3c9fb6ac27f7">00064</a> <a class="code" href="classBMcond.html#9a38dcdabef902fd91da3c9fb6ac27f7" title="Default constructor.">BMcond</a>(<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &rv0):<a class="code" href="classBMcond.html#9ba793c8ec453f04d372d17195ed8dec" title="Identificator of the conditioning variable.">rvc</a>(rv0){}; |
47 | | <a name="l00066"></a><a class="code" href="classBMcond.html#d40c72250cf93640f982d06de20815b2">00066</a> <span class="keyword">virtual</span> <a class="code" href="classBMcond.html#d40c72250cf93640f982d06de20815b2" title="Destructor for future use.">~BMcond</a>(){}; |
48 | | <a name="l00068"></a><a class="code" href="classBMcond.html#3fa60348b2da6b4208bb95b8d146900a">00068</a> <span class="keyword">const</span> <a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a>& <a class="code" href="classBMcond.html#3fa60348b2da6b4208bb95b8d146900a" title="access function">_rvc</a>()<span class="keyword"> const </span>{<span class="keywordflow">return</span> <a class="code" href="classBMcond.html#9ba793c8ec453f04d372d17195ed8dec" title="Identificator of the conditioning variable.">rvc</a>;} |
49 | | <a name="l00069"></a>00069 }; |
50 | | <a name="l00070"></a>00070 |
51 | | <a name="l00071"></a>00071 <span class="preprocessor">#endif // BM_H</span> |
| 27 | <a name="l00036"></a><a class="code" href="classARX.html">00036</a> <span class="keyword">class </span><a class="code" href="classARX.html" title="Linear Autoregressive model with Gaussian noise.">ARX</a>: <span class="keyword">public</span> <a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> { |
| 28 | <a name="l00037"></a>00037 <span class="keyword">protected</span>: |
| 29 | <a name="l00039"></a><a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e">00039</a> <a class="code" href="classegiw.html" title="Gauss-inverse-Wishart density stored in LD form.">egiw</a> <a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>; |
| 30 | <a name="l00041"></a><a class="code" href="classARX.html#2291297861dd74ca0175a01f910a0ef7">00041</a> <a class="code" href="classldmat.html" title="Matrix stored in LD form, (typically known as UD).">ldmat</a> &<a class="code" href="classARX.html#2291297861dd74ca0175a01f910a0ef7" title="cached value of est.V">V</a>; |
| 31 | <a name="l00043"></a><a class="code" href="classARX.html#a4182c281098b2d86b62518a7493d9be">00043</a> <span class="keywordtype">double</span> &<a class="code" href="classARX.html#a4182c281098b2d86b62518a7493d9be" title="cached value of est.nu">nu</a>; |
| 32 | <a name="l00045"></a><a class="code" href="classARX.html#e467144efb0a5acbc10dba4eff8638fe">00045</a> <span class="keywordtype">double</span> <a class="code" href="classARX.html#e467144efb0a5acbc10dba4eff8638fe" title="forgetting factor">frg</a>; |
| 33 | <a name="l00047"></a><a class="code" href="classARX.html#6d0cd0f0734aa77cdc5e48f1cf6737ec">00047</a> <span class="keywordtype">double</span> <a class="code" href="classARX.html#6d0cd0f0734aa77cdc5e48f1cf6737ec" title="cached value of lognc() in the previous step">last_lognc</a>; |
| 34 | <a name="l00048"></a>00048 <span class="keyword">public</span>: |
| 35 | <a name="l00050"></a><a class="code" href="classARX.html#5fc6c18e73dcc0f1135eef33f42db8be">00050</a> <a class="code" href="classARX.html#5fc6c18e73dcc0f1135eef33f42db8be" title="Full constructor.">ARX</a> (<a class="code" href="classRV.html" title="Class representing variables, most often random variables.">RV</a> &<a class="code" href="classBM.html#af00f0612fabe66241dd507188cdbf88" title="Random variable of the posterior.">rv</a>, mat &V0, <span class="keywordtype">double</span> &nu0, <span class="keywordtype">double</span> frg0=1.0) : <a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a>(rv),<a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>(rv,V0,nu0), <a class="code" href="classARX.html#2291297861dd74ca0175a01f910a0ef7" title="cached value of est.V">V</a>(<a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>._V()), <a class="code" href="classARX.html#a4182c281098b2d86b62518a7493d9be" title="cached value of est.nu">nu</a>(<a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>._nu()), <a class="code" href="classARX.html#e467144efb0a5acbc10dba4eff8638fe" title="forgetting factor">frg</a>(frg0){<a class="code" href="classARX.html#6d0cd0f0734aa77cdc5e48f1cf6737ec" title="cached value of lognc() in the previous step">last_lognc</a>=<a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>.<a class="code" href="classegiw.html#70eb1a0b88459b227f919b425b0d3359" title="logarithm of the normalizing constant, ">lognc</a>();}; |
| 36 | <a name="l00052"></a>00052 <span class="keywordtype">void</span> <a class="code" href="classARX.html#ba82c956ca893826811aefe1e4af465d" title="Here .">bayes</a> ( <span class="keyword">const</span> vec &dt ); |
| 37 | <a name="l00053"></a><a class="code" href="classARX.html#9d8eff7a9df81786191a4c55b27e5b8a">00053</a> <a class="code" href="classepdf.html" title="Probability density function with numerical statistics, e.g. posterior density.">epdf</a>& <a class="code" href="classARX.html#9d8eff7a9df81786191a4c55b27e5b8a" title="Returns a pointer to the epdf representing posterior density on parameters. Use with...">_epdf</a>() {<span class="keywordflow">return</span> <a class="code" href="classARX.html#691d023662beffa1dda611b416c0e27e" title="Posterior estimate of in the form of Normal-inverse Wishart density.">est</a>;} |
| 38 | <a name="l00055"></a>00055 ivec <a class="code" href="classARX.html#130bb7336aac681ce14b027b8f1409fa" title="Brute force structure estimation.">structure_est</a>(<a class="code" href="classegiw.html" title="Gauss-inverse-Wishart density stored in LD form.">egiw</a> Eg0); |
| 39 | <a name="l00056"></a>00056 }; |
| 40 | <a name="l00057"></a>00057 |
| 41 | <a name="l00058"></a>00058 |
| 42 | <a name="l00059"></a>00059 <span class="preprocessor">#endif // AR_H</span> |
| 43 | <a name="l00060"></a>00060 <span class="preprocessor"></span> |
| 44 | <a name="l00061"></a>00061 |