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

# arx_ui.h

Go to the documentation of this file.

    00001
    00014 #ifndef ARX_UI_H
    00015 #define ARX_UI_H
    00016
    00017
    00018 #include "arx.h"
    00019 #include "stat/loggers_ui.h"
    00020
    00041 class UIARX : public UIbuilder {
    00042 public:
    00043         UIARX() :UIbuilder ( "ARXest" ) {};
    00044         bdmroot* build ( Setting &S ) const {
    00045                 RV *yrv;  UIbuild(S["y"],yrv);
    00046                 RV *rrv; UIbuild(S["rgr"],rrv);
    00047                 int ylen = yrv->_dsize();
    00048                 int rgrlen = rrv->_dsize();
    00049
    00050                 //init
    00051                 mat V0;
    00052                 if ( S.exists ( "dV0" ) ) {
    00053                         V0=diag ( getvec(S["dV0"]) );
    00054                 }
    00055                 else {
    00056                         V0=concat ( 1e-3*ones ( ylen ), 1e-5*ones ( rgrlen ) );
    00057                 }
    00058                 double nu0;
    00059                 if ( S.exists ( "nu0" ) ) {
    00060                         nu0=double(S["nu0"]);
    00061                 }
    00062                 else {
    00063                         nu0 = rgrlen+ylen+2;
    00064                 }
    00065                 double frg;
    00066                 if ( S.exists ( "frg" ) ) {
    00067                         frg = S["frg"];
    00068                 }
    00069                 else {
    00070                         frg = 1.0;
    00071                 }
    00072                 ARX* A=new ARX;
    00073                 A->set_parameters(frg);
    00074                 A->set_statistics(ylen,V0, nu0);
    00075                 A->set_drv(concat(*yrv,*rrv));
    00076
    00077                 //name results (for logging)
    00078                 A->set_rv(RV("{theta r }", vec_2(ylen*rgrlen, ylen*ylen)));
    00079                 delete yrv; delete rrv;
    00080                 return A;
    00081         };
    00082 };
    00083
    00084 UIREGISTER ( UIARX );
    00085
    00086 #endif // DS_UI_H