root/library/tests/tutorial/kalman_simple.cpp @ 477

Revision 477, 0.7 kB (checked in by mido, 15 years ago)

panove, vite, jak jsem peclivej na upravu kodu.. snad se vam bude libit:) konfigurace je v souboru /system/astylerc

  • Property svn:eol-style set to native
RevLine 
[386]1#include "estim/kalman.h"
[272]2using namespace bdm;
[477]3
[272]4// estimation of AR(0) model
5int main() {
6        //dimensions
[477]7        int dx = 3, dy = 3, du = 1;
[272]8        // matrices
[477]9        mat A = eye ( dx );
10        mat B = zeros ( dx, du );
11        mat C = eye ( dx );
12        mat D = zeros ( dy, du );
13        mat Q = eye ( dx );
14        mat R = 0.1 * eye ( dy );
[272]15        //prior
[477]16        mat P0 = 100 * eye ( dx );
17        vec mu0 = zeros ( dx );
[272]18        // Estimator
19        KalmanCh KF;
[477]20        KF.set_parameters ( A, B, C, D,/*covariances*/ Q, R );
21        KF.set_statistics ( mu0, P0 );
[272]22        // Estimation loop
[477]23        for ( int i = 0; i < 100; i++ ) {
24                KF.bayes ( randn ( dx + du ) );
[272]25        }
26        //print results
27        cout << "Posterior estimate of x is: "  << endl;
[477]28        cout << "mean: " << KF.posterior().mean() << endl;
29        cout << "variance: " << KF.posterior().variance() << endl;
[272]30}
Note: See TracBrowser for help on using the browser.