I have a fit which is a sum of signal and background.
RooRealVar x("x","x",1,1.04);
RooDataHist data("data","dataset with x",x,mass); // mass is a histo
RooRealVar mean ("mean","mean",1.02,1.01,1.03);
RooRealVar sigmabw("sigmabw","sigmabw",0.0043,0,0.01);
RooRealVar sigmag("sigmag","sigmag",0.01,0,0.1);
RooGaussian signal("signal","signal",x,mean,sigmag) ;
RooRealVar parbkg("parexp","parexp",0.1,-482,482);
RooExponential bkg("bkg","bkg",x,parbkg);
RooRealVar fsig("fsig","signal fraction",0,1);
RooAddPdf model("model","model",RooArgList(signal,bkg),fsig);
model.fitTo(data,PrintLevel(-1));
// plot
RooPlot* frame = x.frame();
data.plotOn(frame);
model.plotOn(frame,ProjWData(data));
model.plotOn(frame,Components("signal"),LineColor(kDashed));
model.plotOn(frame,Components("bkg"),LineStyle(kDashed));
I would like to get three integrals:
- Integral of of my fit (model)
- Integral of signal (gauss)
- Integral of background (exponent)
But, what is important that I don’t want to normalize them! I just need pure numbers of events under each curve. I’ve experimented with method “createIntegral” but I couldn’t manage to take unnormaized signal and background.
Thanks in advance