- Main Page
- Related Pages
- Modules
- Classes
- Files

# KF_ui.h

Go to the documentation of this file.

    00001
    00014 #include "libKF.h"
    00015 #include <uibuilder.h>
    00016
    00017 class UIEKF: public UIbuilder {
    00018         public:
    00019         UIEKF():UIbuilder("EKF"){};
    00020         bdmroot* build ( Setting &S ) const {
    00021                 diffbifn* IM; UIbuild(S["IM"],IM);
    00022                 diffbifn* OM; UIbuild(S["OM"],OM);
    00023
    00024                 //parameters
    00025                 EKFCh* E; E=new EKFCh;
    00026                 E->set_parameters(IM, OM, diag(getvec(S["dQ"])), diag(getvec(S["dR"])));
    00027
    00028                 //statistics
    00029                 int dim=IM->dimension();
    00030                 vec mu0;
    00031                 mat P0;
    00032                 if (S.exists("mu0")){mu0=getvec(S["mu0"]);}else{mu0=zeros(dim);};
    00033                 if (S.exists("P0")){mu0=getmat(S["P0"],dim);}else{P0=eye(dim);};
    00034                 E->set_statistics(mu0,P0);
    00035
    00036                 //connect
    00037                 RV* drv; UIbuild(S["drv"],drv);
    00038                 E->set_drv(*drv);
    00039                 RV* rv; UIbuild(S["rv"],rv);
    00040                 E->set_rv(*rv);
    00041                 return E;
    00042         }
    00043 };
    00044 UIREGISTER ( UIEKF );
    00045
    00046