#include #if !defined(__CINT__) || defined(G__DICTIONARY) #include "Minuit2/FunctionMinimum.h" #include "Minuit2/MnHesse.h" #include "Minuit2/MnUserParameterState.h" #include "Minuit2/MnPrint.h" #include "Minuit2/MnUserFcn.h" #include "Minuit2/MnMigrad.h" #include "Minuit2/MnMinos.h" #include "Minuit2/MnContours.h" #include "Minuit2/MnPlot.h" #include "Minuit2/ContoursError.h" #endif #include "NeutronMultiFcn.h" #include #include #include #include #include #include #include #include #include "TF1.h" #include "TH1.h" using namespace ROOT::Minuit2; double nm(double *x, double* par) { double xx = *x; NeutronMulti nm(par[0],par[1],par[2],par[3],par[4]); return nm(xx); } int DemoNMSim(){ std::ifstream inpfile("F7.dat"); // TH1D* h1 = new TH1D("h1","h2",100,0,20); std::vector the_E; std::vector the_Y; std::vector the_Yer; int i=0; while(inpfile.good()) { i++; double en =0; double yi =0; double yerr =0; inpfile >> en >> yi >> yerr ; the_E.push_back(en); the_Y.push_back(yi); the_Yer.push_back(yerr); cout< par; par.push_back(ta1);par.push_back(ta2);par.push_back(ta3); par.push_back(tt2);par.push_back(tt3); cout<SetParameters(2.3,2.2,2.5,2,3); // myHist->GetYaxis()->SetRangeUser(1.,1e5); f1->Draw(); return 0; }