00001 /* 00002 * KalmanFilter.h 00003 * 00004 * Created on: Apr 28, 2009 00005 * Author: jgoppert 00006 */ 00007 00008 #ifndef KALMANFILTER_H_ 00009 #define KALMANFILTER_H_ 00010 00011 #include "Navigator.h" 00012 #include <boost/numeric/ublas/matrix.hpp> 00013 #include <uvsim/dynamics/LinearModel.h> 00014 #include <iostream> 00015 00016 using namespace boost::numeric::ublas; 00017 00018 namespace uvsim 00019 { 00020 00026 class KalmanFilter: public Navigator 00027 { 00028 public: 00029 KalmanFilter(LinearModel *model, vector<double> *y, matrix<double> *P); 00030 virtual ~KalmanFilter(); 00031 void update(); 00032 void print(); 00033 00034 // Public members TODO: Make set/get functions 00035 LinearModel * model; 00036 matrix<double> *P; 00037 vector<double>*y; 00038 matrix<double> K; 00039 }; 00040 00041 } 00042 00043 #endif /* KALMANFILTER_H_ */