I am using the splot technique for the background subtraction. As we know to compute the sweights, we need fit functions of signal and background.
In my case due to higher statistics, I am doing a binned fit using RooDataHist. But SPlots can only work with unbinned datasets (RooDataset) because they have to reweight each entry in the dataset.
Here is the script (splot_all.C) and file (data_hist.root and data_tree.root) that I am using:
Here I used the RooDataset for Splot and RooDataHist for fit, But it’s not working.
I am in a similar situation. What I did was to start with binned fit to determine the parameters of my fit model. Next I created a RooDataSet and input my determined fit model into sWeight calculation.
Theoretically, once you get the distribution you can calculate weight directly, but I’m not quite sure if this is reliable either.
I have a point to add. The yield obtained from binned fit directly is 362190, while the yield calculated by SPlot is 362246. They have a slight difference.