arx_ext.h
Go to the documentation of this file.00001 00008 #ifndef AREX_H 00009 #define AREX_H 00010 00011 #include "../math/functions.h" 00012 #include "arx.h" 00013 00014 namespace bdm { 00015 00029 class ARXg: public ARX { 00030 protected: 00032 shared_ptr<fnc> g; 00033 public: 00036 ARXg (): ARX() {} 00037 ARXg (const ARXg &A0): ARX(A0),g(A0.g) {} 00038 ARXg* _copy() const { 00039 return new ARXg(*this); 00040 } 00042 00045 00047 void bayes_weighted ( const vec &yt, const vec &cond = empty_vec, const double w = 1.0 ) { 00048 int dimc_store =dimc; 00049 dimc =0; 00050 int rgrlen_store = rgrlen; 00051 rgrlen =0; 00052 ARX::bayes_weighted(yt - g->eval(cond), empty_vec, w); 00053 dimc = dimc_store; 00054 rgrlen=rgrlen_store; 00055 }; 00057 00076 void from_setting ( const Setting &set ) { 00077 ARX::from_setting(set); 00078 g=UI::build<fnc>(set,"g",UI::compulsory); 00079 } 00080 00081 void validate() { 00082 ARX::validate();//if dimc not set set it from V 00083 bdm_assert(g->dimension()==dimensiony(),"incompatible g"); 00084 bdm_assert(g->dimensionc()==dimensionc(),"incompatible g"); 00085 } 00086 00087 void to_setting ( Setting &set ) const 00088 { 00089 ARX::to_setting( set ); // takes care of rv, yrv, rvc 00090 UI::save(g,set,"g"); 00091 } 00092 }; 00093 UIREGISTER ( ARXg ); 00094 SHAREDPTR ( ARXg ); 00095 00096 }; 00097 #endif // AREX_H 00098 00099
Generated on 2 Dec 2013 for mixpp by
