void problem(double range = 1){ TH1::SetDefaultSumw2(); TH1D * h_first = new TH1D("h_first", "h_first", 10, -1,1); TH1D * h_second = new TH1D("h_first", "h_first", 10, -1,1); h_first->FillRandom("pol0"); h_second->FillRandom("pol0"); TH1D *h_third = (TH1D*)h_first->Clone("h_third"); h_third->Divide(h_second); RooRealVar x("x","x",-1,1); RooDataHist data("data","histo", x, h_third); RooRealVar m("m", "m", 0, -range, range); RooGenericPdf f_p("f_p", "1 + m*x",RooArgSet(m, x)); f_p.fitTo(data, RooFit::SumW2Error(kTRUE)); RooPlot *xframe = x.frame(); data.plotOn(xframe, RooFit::Name("data")) ; f_p.plotOn(xframe, RooFit::Name("f_p")); f_p.paramOn(xframe, RooFit::Parameters(RooArgSet(m)), RooFit::Layout(0.32, 0.59,0.35)); xframe->Draw(); }