Implementing the Barlow-Beeston method for taking into account the statistical uncertainty of a Monte-Carlo fit template.
Based on a demo by Wouter Verkerke
Author:
This notebook tutorial was automatically generated with ROOTBOOK-izer from the macro found in the ROOT repository on Wednesday, April 17, 2024 at 11:20 AM.
%%cpp -d
#include "RooRealVar.h"
#include "RooGaussian.h"
#include "RooUniform.h"
#include "RooDataSet.h"
#include "RooDataHist.h"
#include "RooHistFunc.h"
#include "RooRealSumPdf.h"
#include "RooParamHistFunc.h"
#include "RooHistConstraint.h"
#include "RooProdPdf.h"
#include "RooPlot.h"
#include "TCanvas.h"
#include "TPaveText.h"
#include <iostream>
#include <memory>
using namespace RooFit;
First, construct a likelihood model with a Gaussian signal on top of a uniform background
RooRealVar x("x", "x", -20, 20);
x.setBins(25);
RooRealVar meanG("meanG", "meanG", 1, -10, 10);
RooRealVar sigG("sigG", "sigG", 1.5, -10, 10);
RooGaussian g("g", "Gauss", x, meanG, sigG);
RooUniform u("u", "Uniform", x);
[#0] WARNING:InputArguments -- The parameter 'sigG' with range [-10, 10] of the RooGaussian 'g' exceeds the safe range of (0, inf). Advise to limit its range.
Generate the data to be fitted
std::unique_ptr<RooDataSet> sigData(g.generate(x, 50));
std::unique_ptr<RooDataSet> bkgData(u.generate(x, 1000));
RooDataSet sumData("sumData", "Gauss + Uniform", x);
sumData.append(*sigData);
sumData.append(*bkgData);
Make histogram templates for signal and background. Let's take a signal distribution with low statistics and a more accurate background distribution. Normally, these come from Monte Carlo simulations, but we will just generate them.
std::unique_ptr<RooDataHist> dh_sig( g.generateBinned(x, 50) );
std::unique_ptr<RooDataHist> dh_bkg( u.generateBinned(x, 10000) );
***** Case 0 - 'Rigid templates' *****
Construct histogram shapes for signal and background
RooHistFunc p_h_sig("p_h_sig","p_h_sig",x,*dh_sig);
RooHistFunc p_h_bkg("p_h_bkg","p_h_bkg",x,*dh_bkg);
Construct scale factors for adding the two distributions
RooRealVar Asig0("Asig","Asig",1,0.01,5000);
RooRealVar Abkg0("Abkg","Abkg",1,0.01,5000);
Construct the sum model
RooRealSumPdf model0("model0","model0",
RooArgList(p_h_sig,p_h_bkg),
RooArgList(Asig0,Abkg0),
true);
***** Case 1 - 'Barlow Beeston' *****
Construct parameterized histogram shapes for signal and background
RooParamHistFunc p_ph_sig1("p_ph_sig","p_ph_sig",*dh_sig);
RooParamHistFunc p_ph_bkg1("p_ph_bkg","p_ph_bkg",*dh_bkg);
RooRealVar Asig1("Asig","Asig",1,0.01,5000);
RooRealVar Abkg1("Abkg","Abkg",1,0.01,5000);
Construct the sum of these
RooRealSumPdf model_tmp("sp_ph", "sp_ph",
RooArgList(p_ph_sig1,p_ph_bkg1),
RooArgList(Asig1,Abkg1),
true);
Construct the subsidiary poisson measurements constraining the histogram parameters These ensure that the bin contents of the histograms are only allowed to vary within the statistical uncertainty of the Monte Carlo.
RooHistConstraint hc_sig("hc_sig","hc_sig",p_ph_sig1);
RooHistConstraint hc_bkg("hc_bkg","hc_bkg",p_ph_bkg1);
Construct the joint model with template PDFs and constraints
RooProdPdf model1("model1","model1",RooArgSet(hc_sig,hc_bkg),Conditional(model_tmp,x));
***** Case 2 - 'Barlow Beeston' light (one parameter per bin for all samples) *****
Construct the histogram shapes, using the same parameters for signal and background
This requires passing the first histogram to the second, so that their common parameters
can be re-used.
The first ParamHistFunc will create one parameter per bin, such as p_ph_sig2_gamma_bin_0
.
This allows bin 0 to fluctuate up and down.
Then, the SAME parameters are connected to the background histogram, so the bins fluctuate
synchronously. This reduces the number of parameters.
RooParamHistFunc p_ph_sig2("p_ph_sig2", "p_ph_sig2", *dh_sig);
RooParamHistFunc p_ph_bkg2("p_ph_bkg2", "p_ph_bkg2", *dh_bkg, p_ph_sig2, true);
RooRealVar Asig2("Asig","Asig",1,0.01,5000);
RooRealVar Abkg2("Abkg","Abkg",1,0.01,5000);
As before, construct the sum of signal2 and background2
RooRealSumPdf model2_tmp("sp_ph","sp_ph",
RooArgList(p_ph_sig2,p_ph_bkg2),
RooArgList(Asig2,Abkg2),
true);
Construct the subsidiary poisson measurements constraining the statistical fluctuations
RooHistConstraint hc_sigbkg("hc_sigbkg","hc_sigbkg",RooArgSet(p_ph_sig2,p_ph_bkg2));
Construct the joint model
RooProdPdf model2("model2","model2",hc_sigbkg, RooFit::Conditional(model2_tmp,x));
************ Fit all models to data and plot *********************
auto result0 = model0.fitTo(sumData, PrintLevel(0), Save());
auto result1 = model1.fitTo(sumData, PrintLevel(0), Save());
auto result2 = model2.fitTo(sumData, PrintLevel(0), Save());
TCanvas* can = new TCanvas("can", "", 1500, 600);
can->Divide(3,1);
TPaveText pt(-19.5, 1, -2, 25);
pt.SetFillStyle(0);
pt.SetBorderSize(0);
can->cd(1);
auto frame = x.frame(Title("No template uncertainties"));
[#1] INFO:Minimization -- p.d.f. provides expected number of events, including extended term in likelihood. [#1] INFO:Fitting -- RooAbsPdf::fitTo(model0_over_model0_Int[x]) fixing normalization set for coefficient determination to observables in data [#1] INFO:Fitting -- using CPU computation library compiled with -mavx2 [#1] INFO:Fitting -- RooAddition::defaultErrorLevel(nll_model0_over_model0_Int[x]_sumData) Summation contains a RooNLLVar, using its error level [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: activating const optimization Minuit2Minimizer: Minimize with max-calls 1000 convergence for edm < 1 strategy 1 Minuit2Minimizer : Valid minimum - status = 0 FVAL = -2388.31039421315518 Edm = 3.25299757922590944e-06 Nfcn = 60 Abkg = 0.0614547 +/- 0.00211669 (limited) Asig = 0.833778 +/- 0.1898 (limited) [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: deactivating const optimization [#1] INFO:Minimization -- p.d.f. provides expected number of events, including extended term in likelihood. [#1] INFO:Minimization -- Including the following constraint terms in minimization: (hc_sig,hc_bkg) [#1] INFO:Minimization -- The global observables are not defined , normalize constraints with respect to the parameters (Abkg,Asig,p_ph_bkg_gamma_bin_0,p_ph_bkg_gamma_bin_1,p_ph_bkg_gamma_bin_10,p_ph_bkg_gamma_bin_11,p_ph_bkg_gamma_bin_12,p_ph_bkg_gamma_bin_13,p_ph_bkg_gamma_bin_14,p_ph_bkg_gamma_bin_15,p_ph_bkg_gamma_bin_16,p_ph_bkg_gamma_bin_17,p_ph_bkg_gamma_bin_18,p_ph_bkg_gamma_bin_19,p_ph_bkg_gamma_bin_2,p_ph_bkg_gamma_bin_20,p_ph_bkg_gamma_bin_21,p_ph_bkg_gamma_bin_22,p_ph_bkg_gamma_bin_23,p_ph_bkg_gamma_bin_24,p_ph_bkg_gamma_bin_3,p_ph_bkg_gamma_bin_4,p_ph_bkg_gamma_bin_5,p_ph_bkg_gamma_bin_6,p_ph_bkg_gamma_bin_7,p_ph_bkg_gamma_bin_8,p_ph_bkg_gamma_bin_9,p_ph_sig_gamma_bin_0,p_ph_sig_gamma_bin_1,p_ph_sig_gamma_bin_10,p_ph_sig_gamma_bin_11,p_ph_sig_gamma_bin_12,p_ph_sig_gamma_bin_13,p_ph_sig_gamma_bin_14,p_ph_sig_gamma_bin_15,p_ph_sig_gamma_bin_16,p_ph_sig_gamma_bin_17,p_ph_sig_gamma_bin_18,p_ph_sig_gamma_bin_19,p_ph_sig_gamma_bin_2,p_ph_sig_gamma_bin_20,p_ph_sig_gamma_bin_21,p_ph_sig_gamma_bin_22,p_ph_sig_gamma_bin_23,p_ph_sig_gamma_bin_24,p_ph_sig_gamma_bin_3,p_ph_sig_gamma_bin_4,p_ph_sig_gamma_bin_5,p_ph_sig_gamma_bin_6,p_ph_sig_gamma_bin_7,p_ph_sig_gamma_bin_8,p_ph_sig_gamma_bin_9) [#1] INFO:Fitting -- RooAbsPdf::fitTo(model1) fixing normalization set for coefficient determination to observables in data [#1] INFO:Fitting -- RooAddition::defaultErrorLevel(nll_model1_sumData) Summation contains a RooNLLVar, using its error level [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: activating const optimization Minuit2Minimizer: Minimize with max-calls 16000 convergence for edm < 1 strategy 1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10432.8) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=0.024706 Asig=0.0100001 p_ph_bkg_gamma_bin_0=0.351482 p_ph_bkg_gamma_bin_1=0.352595 p_ph_bkg_gamma_bin_10=0.342683 p_ph_bkg_gamma_bin_11=0.37094 p_ph_bkg_gamma_bin_12=0.38745 p_ph_bkg_gamma_bin_13=0.369417 p_ph_bkg_gamma_bin_14=0.359349 p_ph_bkg_gamma_bin_15=0.358779 p_ph_bkg_gamma_bin_16=0.367344 p_ph_bkg_gamma_bin_17=0.356263 p_ph_bkg_gamma_bin_18=0.362211 p_ph_bkg_gamma_bin_19=0.340063 p_ph_bkg_gamma_bin_2=0.35054 p_ph_bkg_gamma_bin_20=0.352376 p_ph_bkg_gamma_bin_21=0.351589 p_ph_bkg_gamma_bin_22=0.351615 p_ph_bkg_gamma_bin_23=0.344488 p_ph_bkg_gamma_bin_24=0.365687 p_ph_bkg_gamma_bin_3=0.355197 p_ph_bkg_gamma_bin_4=0.347776 p_ph_bkg_gamma_bin_5=0.348629 p_ph_bkg_gamma_bin_6=0.357616 p_ph_bkg_gamma_bin_7=0.351061 p_ph_bkg_gamma_bin_8=0.342678 p_ph_bkg_gamma_bin_9=0.357292 p_ph_sig_gamma_bin_11=0.308343 p_ph_sig_gamma_bin_12=0.308335 p_ph_sig_gamma_bin_13=0.308335 p_ph_sig_gamma_bin_14=0.308347 p_ph_sig_gamma_bin_15=0.308442 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10432.8) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=0.328233 Asig=0.264207 p_ph_bkg_gamma_bin_0=0.638775 p_ph_bkg_gamma_bin_1=0.639514 p_ph_bkg_gamma_bin_10=0.632902 p_ph_bkg_gamma_bin_11=0.651599 p_ph_bkg_gamma_bin_12=0.662315 p_ph_bkg_gamma_bin_13=0.650603 p_ph_bkg_gamma_bin_14=0.643986 p_ph_bkg_gamma_bin_15=0.643609 p_ph_bkg_gamma_bin_16=0.649245 p_ph_bkg_gamma_bin_17=0.641946 p_ph_bkg_gamma_bin_18=0.645873 p_ph_bkg_gamma_bin_19=0.631145 p_ph_bkg_gamma_bin_2=0.638149 p_ph_bkg_gamma_bin_20=0.639369 p_ph_bkg_gamma_bin_21=0.638846 p_ph_bkg_gamma_bin_22=0.638863 p_ph_bkg_gamma_bin_23=0.634111 p_ph_bkg_gamma_bin_24=0.648158 p_ph_bkg_gamma_bin_3=0.64124 p_ph_bkg_gamma_bin_4=0.636308 p_ph_bkg_gamma_bin_5=0.636876 p_ph_bkg_gamma_bin_6=0.642841 p_ph_bkg_gamma_bin_7=0.638495 p_ph_bkg_gamma_bin_8=0.632899 p_ph_bkg_gamma_bin_9=0.642627 p_ph_sig_gamma_bin_11=0.609504 p_ph_sig_gamma_bin_12=0.609499 p_ph_sig_gamma_bin_13=0.609499 p_ph_sig_gamma_bin_14=0.609508 p_ph_sig_gamma_bin_15=0.609573 Minuit2Minimizer : Valid minimum - status = 0 FVAL = -2270.48050824794791 Edm = 0.000153332442797131428 Nfcn = 1154 Abkg = 0.065609 +/- 0.00212867 (limited) Asig = 0.0100011 +/- 0.00635557 (limited) p_ph_bkg_gamma_bin_0 = 0.991874 +/- 0.0471194 (limited) p_ph_bkg_gamma_bin_1 = 0.994102 +/- 0.0471725 (limited) p_ph_bkg_gamma_bin_10 = 0.974237 +/- 0.0453281 (limited) p_ph_bkg_gamma_bin_11 = 1.03076 +/- 0.0500424 (limited) p_ph_bkg_gamma_bin_12 = 1.06366 +/- 0.0503051 (limited) p_ph_bkg_gamma_bin_13 = 1.02772 +/- 0.0484445 (limited) p_ph_bkg_gamma_bin_14 = 1.00762 +/- 0.049149 (limited) p_ph_bkg_gamma_bin_15 = 1.00647 +/- 0.0472353 (limited) p_ph_bkg_gamma_bin_16 = 1.02358 +/- 0.0489002 (limited) p_ph_bkg_gamma_bin_17 = 1.00144 +/- 0.0464448 (limited) p_ph_bkg_gamma_bin_18 = 1.01333 +/- 0.0506378 (limited) p_ph_bkg_gamma_bin_19 = 0.968979 +/- 0.0455751 (limited) p_ph_bkg_gamma_bin_2 = 0.989989 +/- 0.0465634 (limited) p_ph_bkg_gamma_bin_20 = 0.993665 +/- 0.0470469 (limited) p_ph_bkg_gamma_bin_21 = 0.992089 +/- 0.0471824 (limited) p_ph_bkg_gamma_bin_22 = 0.992141 +/- 0.0484514 (limited) p_ph_bkg_gamma_bin_23 = 0.977858 +/- 0.0458922 (limited) p_ph_bkg_gamma_bin_24 = 1.02028 +/- 0.0476754 (limited) p_ph_bkg_gamma_bin_3 = 0.99931 +/- 0.0492701 (limited) p_ph_bkg_gamma_bin_4 = 0.984451 +/- 0.0480759 (limited) p_ph_bkg_gamma_bin_5 = 0.98616 +/- 0.047933 (limited) p_ph_bkg_gamma_bin_6 = 1.00415 +/- 0.0493897 (limited) p_ph_bkg_gamma_bin_7 = 0.991031 +/- 0.0457188 (limited) p_ph_bkg_gamma_bin_8 = 0.974227 +/- 0.0460243 (limited) p_ph_bkg_gamma_bin_9 = 1.0035 +/- 0.0475126 (limited) p_ph_sig_gamma_bin_11 = 0.983392 +/- 0.347749 (limited) p_ph_sig_gamma_bin_12 = 0.983386 +/- 0.231835 (limited) p_ph_sig_gamma_bin_13 = 0.983386 +/- 0.238556 (limited) p_ph_sig_gamma_bin_14 = 0.983395 +/- 0.401543 (limited) p_ph_sig_gamma_bin_15 = 0.983465 +/- 0.983467 (limited) [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: deactivating const optimization [#1] INFO:Minimization -- p.d.f. provides expected number of events, including extended term in likelihood. [#1] INFO:Minimization -- Including the following constraint terms in minimization: (hc_sigbkg) [#1] INFO:Minimization -- The global observables are not defined , normalize constraints with respect to the parameters (Abkg,Asig,p_ph_sig2_gamma_bin_0,p_ph_sig2_gamma_bin_1,p_ph_sig2_gamma_bin_10,p_ph_sig2_gamma_bin_11,p_ph_sig2_gamma_bin_12,p_ph_sig2_gamma_bin_13,p_ph_sig2_gamma_bin_14,p_ph_sig2_gamma_bin_15,p_ph_sig2_gamma_bin_16,p_ph_sig2_gamma_bin_17,p_ph_sig2_gamma_bin_18,p_ph_sig2_gamma_bin_19,p_ph_sig2_gamma_bin_2,p_ph_sig2_gamma_bin_20,p_ph_sig2_gamma_bin_21,p_ph_sig2_gamma_bin_22,p_ph_sig2_gamma_bin_23,p_ph_sig2_gamma_bin_24,p_ph_sig2_gamma_bin_3,p_ph_sig2_gamma_bin_4,p_ph_sig2_gamma_bin_5,p_ph_sig2_gamma_bin_6,p_ph_sig2_gamma_bin_7,p_ph_sig2_gamma_bin_8,p_ph_sig2_gamma_bin_9) [#1] INFO:Fitting -- RooAbsPdf::fitTo(model2) fixing normalization set for coefficient determination to observables in data [#1] INFO:Fitting -- RooAddition::defaultErrorLevel(nll_model2_sumData) Summation contains a RooNLLVar, using its error level [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: activating const optimization Minuit2Minimizer: Minimize with max-calls 13500 convergence for edm < 1 strategy 1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=7.2928 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=7.2928 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=7.2928 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=7.2928 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=7.2928 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=7.2928 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=7.2928 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=7.2928 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=7.2928 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=7.2928 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=7.2928 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=7.2928 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=7.2928 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=7.2928 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=7.2928 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=7.2928 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=7.2928 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=7.2928 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=7.2928 p_ph_sig2_gamma_bin_9=1 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=1 Asig=1 p_ph_sig2_gamma_bin_0=1 p_ph_sig2_gamma_bin_1=1 p_ph_sig2_gamma_bin_10=1 p_ph_sig2_gamma_bin_11=1 p_ph_sig2_gamma_bin_12=1 p_ph_sig2_gamma_bin_13=1 p_ph_sig2_gamma_bin_14=1 p_ph_sig2_gamma_bin_15=1 p_ph_sig2_gamma_bin_16=1 p_ph_sig2_gamma_bin_17=1 p_ph_sig2_gamma_bin_18=1 p_ph_sig2_gamma_bin_19=1 p_ph_sig2_gamma_bin_2=1 p_ph_sig2_gamma_bin_20=1 p_ph_sig2_gamma_bin_21=1 p_ph_sig2_gamma_bin_22=1 p_ph_sig2_gamma_bin_23=1 p_ph_sig2_gamma_bin_24=1 p_ph_sig2_gamma_bin_3=1 p_ph_sig2_gamma_bin_4=1 p_ph_sig2_gamma_bin_5=1 p_ph_sig2_gamma_bin_6=1 p_ph_sig2_gamma_bin_7=1 p_ph_sig2_gamma_bin_8=1 p_ph_sig2_gamma_bin_9=7.2928 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=0.024706 Asig=0.0100001 p_ph_sig2_gamma_bin_0=0.351536 p_ph_sig2_gamma_bin_1=0.35265 p_ph_sig2_gamma_bin_10=0.342736 p_ph_sig2_gamma_bin_11=0.36962 p_ph_sig2_gamma_bin_12=0.383863 p_ph_sig2_gamma_bin_13=0.366897 p_ph_sig2_gamma_bin_14=0.358549 p_ph_sig2_gamma_bin_15=0.358659 p_ph_sig2_gamma_bin_16=0.3674 p_ph_sig2_gamma_bin_17=0.356318 p_ph_sig2_gamma_bin_18=0.362267 p_ph_sig2_gamma_bin_19=0.340116 p_ph_sig2_gamma_bin_2=0.350595 p_ph_sig2_gamma_bin_20=0.352431 p_ph_sig2_gamma_bin_21=0.351643 p_ph_sig2_gamma_bin_22=0.35167 p_ph_sig2_gamma_bin_23=0.344542 p_ph_sig2_gamma_bin_24=0.365744 p_ph_sig2_gamma_bin_3=0.355252 p_ph_sig2_gamma_bin_4=0.34783 p_ph_sig2_gamma_bin_5=0.348683 p_ph_sig2_gamma_bin_6=0.357671 p_ph_sig2_gamma_bin_7=0.351115 p_ph_sig2_gamma_bin_8=0.342731 p_ph_sig2_gamma_bin_9=0.357348 RooAbsMinimizerFcn: Minimized function has error status. Returning maximum FCN so far (10423.1) to force MIGRAD to back out of this region. Error log follows. Parameter values: Abkg=0.32823 Asig=0.264205 p_ph_sig2_gamma_bin_0=0.638809 p_ph_sig2_gamma_bin_1=0.639549 p_ph_sig2_gamma_bin_10=0.632936 p_ph_sig2_gamma_bin_11=0.650734 p_ph_sig2_gamma_bin_12=0.659997 p_ph_sig2_gamma_bin_13=0.64895 p_ph_sig2_gamma_bin_14=0.643456 p_ph_sig2_gamma_bin_15=0.643529 p_ph_sig2_gamma_bin_16=0.64928 p_ph_sig2_gamma_bin_17=0.641981 p_ph_sig2_gamma_bin_18=0.645908 p_ph_sig2_gamma_bin_19=0.631179 p_ph_sig2_gamma_bin_2=0.638183 p_ph_sig2_gamma_bin_20=0.639404 p_ph_sig2_gamma_bin_21=0.638881 p_ph_sig2_gamma_bin_22=0.638898 p_ph_sig2_gamma_bin_23=0.634145 p_ph_sig2_gamma_bin_24=0.648194 p_ph_sig2_gamma_bin_3=0.641275 p_ph_sig2_gamma_bin_4=0.636342 p_ph_sig2_gamma_bin_5=0.63691 p_ph_sig2_gamma_bin_6=0.642876 p_ph_sig2_gamma_bin_7=0.638529 p_ph_sig2_gamma_bin_8=0.632933 p_ph_sig2_gamma_bin_9=0.642662 Minuit2Minimizer : Valid minimum - status = 0 FVAL = -2279.84465204538174 Edm = 8.88263582252356954e-05 Nfcn = 985 Abkg = 0.0656436 +/- 0.00212917 (limited) Asig = 0.01 +/- 0.00603235 (limited) p_ph_sig2_gamma_bin_0 = 0.991923 +/- 0.0471206 (limited) p_ph_sig2_gamma_bin_1 = 0.994157 +/- 0.0471739 (limited) p_ph_sig2_gamma_bin_10 = 0.974247 +/- 0.0453279 (limited) p_ph_sig2_gamma_bin_11 = 1.02973 +/- 0.0495286 (limited) p_ph_sig2_gamma_bin_12 = 1.06 +/- 0.0491551 (limited) p_ph_sig2_gamma_bin_13 = 1.02569 +/- 0.0474643 (limited) p_ph_sig2_gamma_bin_14 = 1.00716 +/- 0.0487808 (limited) p_ph_sig2_gamma_bin_15 = 1.00647 +/- 0.047182 (limited) p_ph_sig2_gamma_bin_16 = 1.02371 +/- 0.0489042 (limited) p_ph_sig2_gamma_bin_17 = 1.00151 +/- 0.0464467 (limited) p_ph_sig2_gamma_bin_18 = 1.01344 +/- 0.050641 (limited) p_ph_sig2_gamma_bin_19 = 0.968977 +/- 0.0455745 (limited) p_ph_sig2_gamma_bin_2 = 0.990034 +/- 0.0465644 (limited) p_ph_sig2_gamma_bin_20 = 0.993719 +/- 0.0470482 (limited) p_ph_sig2_gamma_bin_21 = 0.992138 +/- 0.0471837 (limited) p_ph_sig2_gamma_bin_22 = 0.992191 +/- 0.0484527 (limited) p_ph_sig2_gamma_bin_23 = 0.977876 +/- 0.0458923 (limited) p_ph_sig2_gamma_bin_24 = 1.0204 +/- 0.047679 (limited) p_ph_sig2_gamma_bin_3 = 0.999377 +/- 0.049272 (limited) p_ph_sig2_gamma_bin_4 = 0.984483 +/- 0.0480765 (limited) p_ph_sig2_gamma_bin_5 = 0.986196 +/- 0.0479338 (limited) p_ph_sig2_gamma_bin_6 = 1.00423 +/- 0.049392 (limited) p_ph_sig2_gamma_bin_7 = 0.991078 +/- 0.04572 (limited) p_ph_sig2_gamma_bin_8 = 0.974236 +/- 0.0460241 (limited) p_ph_sig2_gamma_bin_9 = 1.00358 +/- 0.0475148 (limited) [#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: deactivating const optimization
Plot data to enable automatic determination of model0 normalisation:
sumData.plotOn(frame);
model0.plotOn(frame, LineColor(kBlue), VisualizeError(*result0));
Plot data again to show it on top of model0 error bands:
sumData.plotOn(frame);
Plot model components
model0.plotOn(frame, LineColor(kBlue));
model0.plotOn(frame, Components(p_h_sig), LineColor(kAzure));
model0.plotOn(frame, Components(p_h_bkg), LineColor(kRed));
model0.paramOn(frame);
sigData->plotOn(frame, MarkerColor(kBlue));
frame->Draw();
for (auto text : {
"No template uncertainties",
"are taken into account.",
"This leads to low errors",
"for the parameters A, since",
"the only source of errors",
"are the data statistics."}) {
pt.AddText(text);
}
pt.DrawClone();
can->cd(2);
frame = x.frame(Title("Barlow Beeston for Sig & Bkg separately"));
sumData.plotOn(frame);
model1.plotOn(frame, LineColor(kBlue), VisualizeError(*result1));
[#1] INFO:Plotting -- RooAbsPdf::plotOn(model0) directly selected PDF components: (p_h_sig) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model0) indirectly selected PDF components: () [#1] INFO:Plotting -- RooAbsPdf::plotOn(model0) directly selected PDF components: (p_h_bkg) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model0) indirectly selected PDF components: () [#1] INFO:Plotting -- RooPlot::updateFitRangeNorm: New event count of 50 will supersede previous event count of 1050 for normalization of PDF projections
Plot data again to show it on top of error bands:
sumData.plotOn(frame);
model1.plotOn(frame, LineColor(kBlue));
model1.plotOn(frame, Components(p_ph_sig1), LineColor(kAzure));
model1.plotOn(frame, Components(p_ph_bkg1), LineColor(kRed));
model1.paramOn(frame, Parameters(RooArgSet(Asig1, Abkg1)));
sigData->plotOn(frame, MarkerColor(kBlue));
frame->Draw();
pt.Clear();
for (auto text : {
"With gamma parameters, the",
"signal & background templates",
"can adapt to the data.",
"Note how the blue signal",
"template changes its shape.",
"This leads to higher errors",
"of the scale parameters A."}) {
pt.AddText(text);
}
pt.DrawClone();
can->cd(3);
frame = x.frame(Title("Barlow Beeston light for (Sig+Bkg)"));
sumData.plotOn(frame);
model2.plotOn(frame, LineColor(kBlue), VisualizeError(*result2));
[#1] INFO:Plotting -- RooAbsPdf::plotOn(model1) directly selected PDF components: (p_ph_sig) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model1) indirectly selected PDF components: (sp_ph) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model1) directly selected PDF components: (p_ph_bkg) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model1) indirectly selected PDF components: (sp_ph) [#1] INFO:Plotting -- RooPlot::updateFitRangeNorm: New event count of 50 will supersede previous event count of 1050 for normalization of PDF projections
Plot data again to show it on top of model0 error bands:
sumData.plotOn(frame);
model2.plotOn(frame, LineColor(kBlue));
model2.plotOn(frame, Components(p_ph_sig2), LineColor(kAzure));
model2.plotOn(frame, Components(p_ph_bkg2), LineColor(kRed));
model2.paramOn(frame, Parameters(RooArgSet(Asig2, Abkg2)));
sigData->plotOn(frame, MarkerColor(kBlue));
frame->Draw();
pt.Clear();
for (auto text : {
"When signal and background",
"template share one gamma para-",
"meter per bin, they adapt less.",
"The errors of the A parameters",
"also shrink slightly."}) {
pt.AddText(text);
}
pt.DrawClone();
std::cout << "Asig [normal ] = " << Asig0.getVal() << " +/- " << Asig0.getError() << std::endl;
std::cout << "Asig [BB ] = " << Asig1.getVal() << " +/- " << Asig1.getError() << std::endl;
std::cout << "Asig [BBlight] = " << Asig2.getVal() << " +/- " << Asig2.getError() << std::endl;
[#1] INFO:Plotting -- RooAbsPdf::plotOn(model2) directly selected PDF components: (p_ph_sig2) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model2) indirectly selected PDF components: (sp_ph) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model2) directly selected PDF components: (p_ph_bkg2) [#1] INFO:Plotting -- RooAbsPdf::plotOn(model2) indirectly selected PDF components: (sp_ph) [#1] INFO:Plotting -- RooPlot::updateFitRangeNorm: New event count of 50 will supersede previous event count of 1050 for normalization of PDF projections Asig [normal ] = 0.833778 +/- 0.189814 Asig [BB ] = 0.0100011 +/- 0.00635558 Asig [BBlight] = 0.01 +/- 0.00603235
Draw all canvases
%jsroot on
gROOT->GetListOfCanvases()->Draw()