Changeset 527 for library/bdm/stat/exp_family.h
- Timestamp:
- 08/13/09 15:58:32 (15 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
library/bdm/stat/exp_family.h
r510 r527 236 236 UI::get (V, set, "V", UI::compulsory); 237 237 set_parameters (dimx, V, nu); 238 RV*rv = UI::build<RV> (set, "rv", UI::compulsory);238 shared_ptr<RV> rv = UI::build<RV> (set, "rv", UI::compulsory); 239 239 set_rv (*rv); 240 delete rv;241 240 } 242 241 //!@} … … 574 573 class mgnorm : public mpdf_internal< enorm< sq_T > > 575 574 { 576 pr otected:575 private: 577 576 // vec μ WHY NOT? 578 fnc* g; 577 shared_ptr<fnc> g; 578 579 579 public: 580 580 //!default constructor 581 581 mgnorm() : mpdf_internal<enorm<sq_T> >() { } 582 582 //!set mean function 583 inline void set_parameters ( fnc*g0, const sq_T &R0);583 inline void set_parameters (const shared_ptr<fnc> &g0, const sq_T &R0); 584 584 inline void condition (const vec &cond); 585 585 … … 613 613 614 614 void from_setting (const Setting &set) { 615 fnc*g = UI::build<fnc> (set, "g", UI::compulsory);615 shared_ptr<fnc> g = UI::build<fnc> (set, "g", UI::compulsory); 616 616 617 617 mat R; … … 1305 1305 /////// 1306 1306 template<class sq_T> 1307 void mgnorm<sq_T >::set_parameters (fnc* g0, const sq_T &R0) {g = g0; this->iepdf.set_parameters (zeros (g->dimension()), R0);} 1307 void mgnorm<sq_T >::set_parameters (const shared_ptr<fnc> &g0, const sq_T &R0) { 1308 g = g0; 1309 this->iepdf.set_parameters (zeros (g->dimension()), R0); 1310 } 1311 1308 1312 template<class sq_T> 1309 1313 void mgnorm<sq_T >::condition (const vec &cond) {this->iepdf._mu() = g->eval (cond);};