{
"cells": [
{
"cell_type": "markdown",
"id": "ce84b462",
"metadata": {},
"source": [
"# rf801_mcstudy\n",
"Validation and MC studies: toy Monte Carlo study that perform cycles of event generation and fitting\n",
"\n",
"\n",
"\n",
"\n",
"**Author:** Clemens Lange, Wouter Verkerke (C++ version) \n",
"This notebook tutorial was automatically generated with ROOTBOOK-izer from the macro found in the ROOT repository on Tuesday, March 19, 2024 at 07:17 PM."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "9d940a77",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:53.988041Z",
"iopub.status.busy": "2024-03-19T19:17:53.987186Z",
"iopub.status.idle": "2024-03-19T19:17:56.672425Z",
"shell.execute_reply": "2024-03-19T19:17:56.671157Z"
}
},
"outputs": [],
"source": [
"import ROOT"
]
},
{
"cell_type": "markdown",
"id": "269e7980",
"metadata": {},
"source": [
"Create model\n",
"-----------------------"
]
},
{
"cell_type": "markdown",
"id": "6d126569",
"metadata": {},
"source": [
"Declare observable x"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "d2309194",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:56.689158Z",
"iopub.status.busy": "2024-03-19T19:17:56.688566Z",
"iopub.status.idle": "2024-03-19T19:17:57.068462Z",
"shell.execute_reply": "2024-03-19T19:17:57.067369Z"
}
},
"outputs": [],
"source": [
"x = ROOT.RooRealVar(\"x\", \"x\", 0, 10)\n",
"x.setBins(40)"
]
},
{
"cell_type": "markdown",
"id": "fc0d2cc2",
"metadata": {},
"source": [
"Create two Gaussian PDFs g1(x,mean1,sigma) anf g2(x,mean2,sigma) and\n",
"their parameters"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "e783ebf5",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:57.078201Z",
"iopub.status.busy": "2024-03-19T19:17:57.077414Z",
"iopub.status.idle": "2024-03-19T19:17:57.386401Z",
"shell.execute_reply": "2024-03-19T19:17:57.379581Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[#0] WARNING:InputArguments -- The parameter 'sigma1' with range [-inf, inf] of the RooGaussian 'sig1' exceeds the safe range of (0, inf). Advise to limit its range.\n",
"[#0] WARNING:InputArguments -- The parameter 'sigma2' with range [-inf, inf] of the RooGaussian 'sig2' exceeds the safe range of (0, inf). Advise to limit its range.\n"
]
}
],
"source": [
"mean = ROOT.RooRealVar(\"mean\", \"mean of gaussians\", 5, 0, 10)\n",
"sigma1 = ROOT.RooRealVar(\"sigma1\", \"width of gaussians\", 0.5)\n",
"sigma2 = ROOT.RooRealVar(\"sigma2\", \"width of gaussians\", 1)\n",
"\n",
"sig1 = ROOT.RooGaussian(\"sig1\", \"Signal component 1\", x, mean, sigma1)\n",
"sig2 = ROOT.RooGaussian(\"sig2\", \"Signal component 2\", x, mean, sigma2)"
]
},
{
"cell_type": "markdown",
"id": "1f5250b7",
"metadata": {},
"source": [
"Build Chebychev polynomial pdf"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "7042a374",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:57.404927Z",
"iopub.status.busy": "2024-03-19T19:17:57.404469Z",
"iopub.status.idle": "2024-03-19T19:17:57.883710Z",
"shell.execute_reply": "2024-03-19T19:17:57.861945Z"
}
},
"outputs": [],
"source": [
"a0 = ROOT.RooRealVar(\"a0\", \"a0\", 0.5, 0.0, 1.0)\n",
"a1 = ROOT.RooRealVar(\"a1\", \"a1\", -0.2, -1, 1.0)\n",
"bkg = ROOT.RooChebychev(\"bkg\", \"Background\", x, [a0, a1])"
]
},
{
"cell_type": "markdown",
"id": "6181294e",
"metadata": {},
"source": [
"Sum the signal components into a composite signal pdf"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "4485dee0",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:57.907871Z",
"iopub.status.busy": "2024-03-19T19:17:57.907493Z",
"iopub.status.idle": "2024-03-19T19:17:58.067573Z",
"shell.execute_reply": "2024-03-19T19:17:58.066268Z"
}
},
"outputs": [],
"source": [
"sig1frac = ROOT.RooRealVar(\"sig1frac\", \"fraction of component 1 in signal\", 0.8, 0.0, 1.0)\n",
"sig = ROOT.RooAddPdf(\"sig\", \"Signal\", [sig1, sig2], [sig1frac])"
]
},
{
"cell_type": "markdown",
"id": "1dff0f11",
"metadata": {},
"source": [
"Sum the composite signal and background"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "0a9f88e8",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:58.102739Z",
"iopub.status.busy": "2024-03-19T19:17:58.102335Z",
"iopub.status.idle": "2024-03-19T19:17:58.225502Z",
"shell.execute_reply": "2024-03-19T19:17:58.211232Z"
}
},
"outputs": [],
"source": [
"nbkg = ROOT.RooRealVar(\"nbkg\", \"number of background events, \", 150, 0, 1000)\n",
"nsig = ROOT.RooRealVar(\"nsig\", \"number of signal events\", 150, 0, 1000)\n",
"model = ROOT.RooAddPdf(\"model\", \"g1+g2+a\", [bkg, sig], [nbkg, nsig])"
]
},
{
"cell_type": "markdown",
"id": "b9d515c8",
"metadata": {},
"source": [
"Create manager\n",
"---------------------------"
]
},
{
"cell_type": "markdown",
"id": "9208439e",
"metadata": {},
"source": [
"Instantiate ROOT.RooMCStudy manager on model with x as observable and given choice of fit options\n",
"\n",
"The Silence() option kills all messages below the PROGRESS level, only a single message\n",
"per sample executed, any error message that occur during fitting\n",
"\n",
"The Extended() option has two effects:\n",
" 1) The extended ML term is included in the likelihood and\n",
" 2) A poisson fluctuation is introduced on the number of generated events\n",
"\n",
"The FitOptions() given here are passed to the fitting stage of each toy experiment.\n",
"If Save() is specified, fit result of each experiment is saved by the manager\n",
"\n",
"A Binned() option is added in self example to bin the data between generation and fitting\n",
"to speed up the study at the expemse of some precision"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "6cf2152e",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:58.261598Z",
"iopub.status.busy": "2024-03-19T19:17:58.261184Z",
"iopub.status.idle": "2024-03-19T19:17:58.985225Z",
"shell.execute_reply": "2024-03-19T19:17:58.953154Z"
}
},
"outputs": [],
"source": [
"mcstudy = ROOT.RooMCStudy(\n",
" model,\n",
" {x},\n",
" Binned=True,\n",
" Silence=True,\n",
" Extended=True,\n",
" FitOptions=dict(Save=True, PrintEvalErrors=0),\n",
")"
]
},
{
"cell_type": "markdown",
"id": "5ffcd6fb",
"metadata": {},
"source": [
"Generate and fit events\n",
"---------------------------------------------"
]
},
{
"cell_type": "markdown",
"id": "3d17578a",
"metadata": {},
"source": [
"Generate and fit 1000 samples of Poisson(nExpected) events"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "7eca5f2c",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:17:59.000785Z",
"iopub.status.busy": "2024-03-19T19:17:59.000371Z",
"iopub.status.idle": "2024-03-19T19:18:01.504845Z",
"shell.execute_reply": "2024-03-19T19:18:01.502104Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 990\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 980\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 970\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 960\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 950\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-797.721) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.716236\ta1=-0.675686\tmean=5.04367\tnbkg=115.661\tnsig=155.327\tsig1frac=0.880121\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 940\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 930\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-867.289) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.907715\ta1=-0.26012\tmean=4.95881\tnbkg=147.451\tnsig=156.366\tsig1frac=0.890535\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 920\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 910\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 900\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-871.381) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.716361\ta1=-0.355239\tmean=5.05578\tnbkg=159.647\tnsig=151.993\tsig1frac=0.742914\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 890\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 880\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 870\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-903.916) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.877959\ta1=-0.428367\tmean=4.99746\tnbkg=167.444\tnsig=157.288\tsig1frac=0.424997\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 860\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 850\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 840\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 830\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-970.563) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.867793\ta1=-0.296045\tmean=5.10353\tnbkg=164.822\tnsig=173.566\tsig1frac=0.899431\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 820\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 810\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 800\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 790\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 780\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 770\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 760\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-915.472) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.807508\ta1=-0.34963\tmean=5.09438\tnbkg=142.436\tnsig=172.312\tsig1frac=0.886183\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 750\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-885.867) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.7962\ta1=-0.414289\tmean=5.07605\tnbkg=135.514\tnsig=167.164\tsig1frac=0.927781\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-848.597) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.577138\ta1=-0.518554\tmean=5.09299\tnbkg=144.203\tnsig=156.938\tsig1frac=0.54541\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 740\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 730\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 720\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 710\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 700\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-814.549) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.848973\ta1=-0.489149\tmean=5.08811\tnbkg=132.911\tnsig=150.647\tsig1frac=0.826731\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 690\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 680\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 670\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-809.662) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.713661\ta1=-0.606754\tmean=5.02862\tnbkg=142.583\tnsig=145.399\tsig1frac=0.623944\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-861.002) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.744046\ta1=-0.311529\tmean=5.09799\tnbkg=161.409\tnsig=148.884\tsig1frac=0.512806\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 660\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 650\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 640\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 630\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 620\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 610\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-809.027) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.719517\ta1=-0.347533\tmean=5.00927\tnbkg=127.977\tnsig=152.559\tsig1frac=0.917291\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 600\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 590\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 580\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-869.586) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.621299\ta1=-0.442393\tmean=5.13262\tnbkg=131.7\tnsig=167.982\tsig1frac=0.776177\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 570\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 560\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 550\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 540\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 530\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-820.086) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.699182\ta1=-0.532303\tmean=4.90748\tnbkg=130.722\tnsig=155.109\tsig1frac=0.843514\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 520\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 510\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-814.421) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.729962\ta1=-0.49802\tmean=4.92039\tnbkg=146.276\tnsig=144.44\tsig1frac=0.620699\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 500\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 490\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 480\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 470\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 460\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 450\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 440\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 430\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-926.481) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.653979\ta1=-0.469539\tmean=5.00078\tnbkg=160.963\tnsig=166.526\tsig1frac=0.628924\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 420\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-768.847) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.749295\ta1=-0.303934\tmean=4.98272\tnbkg=121.461\tnsig=145.338\tsig1frac=0.822833\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-798.509) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.791035\ta1=-0.287544\tmean=4.98693\tnbkg=127.577\tnsig=149.203\tsig1frac=0.914567\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 410\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 400\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 390\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-977.775) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.565967\ta1=-0.529635\tmean=5.0065\tnbkg=153.38\tnsig=185.083\tsig1frac=0.751239\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 380\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 370\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-945.036) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.824344\ta1=-0.338546\tmean=5.06339\tnbkg=161.705\tnsig=169.087\tsig1frac=0.910016\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 360\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 350\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 340\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 330\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 320\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 310\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-831.776) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.823781\ta1=-0.287947\tmean=4.96347\tnbkg=133.185\tnsig=155.535\tsig1frac=0.887106\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 300\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 290\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 280\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-867.974) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.806741\ta1=-0.376486\tmean=4.95962\tnbkg=143.191\tnsig=160.421\tsig1frac=0.787531\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 270\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-810.184) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.701119\ta1=-0.376392\tmean=4.96099\tnbkg=126.85\tnsig=153.527\tsig1frac=0.880449\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-845.198) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.74363\ta1=-0.435344\tmean=5.01952\tnbkg=162.467\tnsig=143.571\tsig1frac=0.630815\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 260\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 250\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-1003.82) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.674666\ta1=-0.383697\tmean=5.00365\tnbkg=169.829\tnsig=179.534\tsig1frac=0.921743\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-712.949) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.711808\ta1=-0.34088\tmean=4.99573\tnbkg=115.49\tnsig=133.015\tsig1frac=0.908627\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 240\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 230\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 220\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 210\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 200\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 190\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 180\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 170\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 160\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 150\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-750.903) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.726225\ta1=-0.429497\tmean=5.03871\tnbkg=129.53\tnsig=136.644\tsig1frac=0.687558\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 140\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-740.756) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.899536\ta1=-0.345881\tmean=5.03897\tnbkg=135.176\tnsig=129.13\tsig1frac=0.899393\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-677.604) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.766597\ta1=-0.547838\tmean=5.03836\tnbkg=119.039\tnsig=121.817\tsig1frac=0.213703\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 130\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-777.498) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.527582\ta1=-0.893856\tmean=5.24753\tnbkg=162.951\tnsig=65.9357\tsig1frac=0.970262\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-777.498) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.516095\ta1=-0.955515\tmean=5.14443\tnbkg=157.502\tnsig=97.2821\tsig1frac=0.174928\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-777.498) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.510348\ta1=-0.776595\tmean=5.09286\tnbkg=154.805\tnsig=114.979\tsig1frac=0.0496841\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 120\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 110\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-796.54) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.702991\ta1=-0.414346\tmean=5.11911\tnbkg=145.466\tnsig=141.134\tsig1frac=0.532895\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 100\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-920.777) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.726241\ta1=-0.424659\tmean=5.05565\tnbkg=151.228\tnsig=170.816\tsig1frac=0.771802\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-743.339) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.942558\ta1=-0.775768\tmean=4.99866\tnbkg=187.872\tnsig=63.0852\tsig1frac=0.868175\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-743.339) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.984478\ta1=-0.59938\tmean=4.99914\tnbkg=173.959\tnsig=90.3182\tsig1frac=0.461117\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 90\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 80\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 70\n",
"RooAbsMinimizerFcn: Minimized function has error status.\n",
"Returning maximum FCN so far (-775.389) to force MIGRAD to back out of this region. Error log follows.\n",
"Parameter values: \ta0=0.72761\ta1=-0.375581\tmean=5.04879\tnbkg=141.143\tnsig=137.402\tsig1frac=0.495257\n",
"RooAddPdf::model[ nbkg * bkg_over_bkg_Int[x] + nsig * sig ] has 1 errors\n",
"\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 60\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 50\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 40\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 30\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 20\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 10\n",
"[#0] PROGRESS:Generation -- RooMCStudy::run: sample 0\n",
"[#0] WARNING:Generation -- Fit parameter 'sigma1' does not have an error. A pull distribution cannot be generated. This might be caused by the parameter being constant or because the fits were not run.\n",
"[#0] WARNING:Generation -- Fit parameter 'sigma2' does not have an error. A pull distribution cannot be generated. This might be caused by the parameter being constant or because the fits were not run.\n"
]
}
],
"source": [
"mcstudy.generateAndFit(1000)"
]
},
{
"cell_type": "markdown",
"id": "2d1c1083",
"metadata": {},
"source": [
"Explore results of study\n",
"------------------------------------------------"
]
},
{
"cell_type": "markdown",
"id": "b0eba14c",
"metadata": {},
"source": [
"Make plots of the distributions of mean, error on mean and the pull of\n",
"mean"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "fd28b4ad",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:01.511549Z",
"iopub.status.busy": "2024-03-19T19:18:01.511153Z",
"iopub.status.idle": "2024-03-19T19:18:01.985689Z",
"shell.execute_reply": "2024-03-19T19:18:01.984261Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[#1] INFO:ObjectHandling -- RooWorkspace::import() importing RooRealVar::meanpull\n",
"\n",
"[#1] INFO:Fitting -- RooAbsPdf::fitTo(pullGauss_over_pullGauss_Int[meanpull]) fixing normalization set for coefficient determination to observables in data\n",
"[#1] INFO:Fitting -- using CPU computation library compiled with -mavx2\n",
"[#1] INFO:Fitting -- RooAddition::defaultErrorLevel(nll_pullGauss_over_pullGauss_Int[meanpull]_fitParData_model) Summation contains a RooNLLVar, using its error level\n",
"[#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: activating const optimization\n",
"[#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: deactivating const optimization\n"
]
}
],
"source": [
"frame1 = mcstudy.plotParam(mean, Bins=40)\n",
"frame2 = mcstudy.plotError(mean, Bins=40)\n",
"frame3 = mcstudy.plotPull(mean, Bins=40, FitGauss=True)"
]
},
{
"cell_type": "markdown",
"id": "b8349949",
"metadata": {},
"source": [
"Plot distribution of minimized likelihood"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "c49aca88",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:02.026971Z",
"iopub.status.busy": "2024-03-19T19:18:02.026520Z",
"iopub.status.idle": "2024-03-19T19:18:02.286082Z",
"shell.execute_reply": "2024-03-19T19:18:02.281348Z"
}
},
"outputs": [],
"source": [
"frame4 = mcstudy.plotNLL(Bins=40)"
]
},
{
"cell_type": "markdown",
"id": "00c26f7c",
"metadata": {},
"source": [
"Make some histograms from the parameter dataset"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "e22a10f9",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:02.308142Z",
"iopub.status.busy": "2024-03-19T19:18:02.307723Z",
"iopub.status.idle": "2024-03-19T19:18:02.594735Z",
"shell.execute_reply": "2024-03-19T19:18:02.592464Z"
}
},
"outputs": [],
"source": [
"hh_cor_a0_s1f = mcstudy.fitParDataSet().createHistogram(\"hh\", a1, YVar=sig1frac)\n",
"hh_cor_a0_a1 = mcstudy.fitParDataSet().createHistogram(\"hh\", a0, YVar=a1)"
]
},
{
"cell_type": "markdown",
"id": "9cdc4807",
"metadata": {},
"source": [
"Access some of the saved fit results from individual toys"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "bd2640b4",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:02.602919Z",
"iopub.status.busy": "2024-03-19T19:18:02.602507Z",
"iopub.status.idle": "2024-03-19T19:18:02.806402Z",
"shell.execute_reply": "2024-03-19T19:18:02.804761Z"
}
},
"outputs": [],
"source": [
"corrHist000 = mcstudy.fitResult(0).correlationHist(\"c000\")\n",
"corrHist127 = mcstudy.fitResult(127).correlationHist(\"c127\")\n",
"corrHist953 = mcstudy.fitResult(953).correlationHist(\"c953\")"
]
},
{
"cell_type": "markdown",
"id": "81d3bc18",
"metadata": {},
"source": [
"Draw all plots on a canvas"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "151aecef",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:02.811699Z",
"iopub.status.busy": "2024-03-19T19:18:02.811334Z",
"iopub.status.idle": "2024-03-19T19:18:03.521937Z",
"shell.execute_reply": "2024-03-19T19:18:03.518774Z"
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Info in : png file rf801_mcstudy.png has been created\n"
]
}
],
"source": [
"ROOT.gStyle.SetPalette(1)\n",
"ROOT.gStyle.SetOptStat(0)\n",
"c = ROOT.TCanvas(\"rf801_mcstudy\", \"rf801_mcstudy\", 900, 900)\n",
"c.Divide(3, 3)\n",
"c.cd(1)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"frame1.GetYaxis().SetTitleOffset(1.4)\n",
"frame1.Draw()\n",
"c.cd(2)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"frame2.GetYaxis().SetTitleOffset(1.4)\n",
"frame2.Draw()\n",
"c.cd(3)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"frame3.GetYaxis().SetTitleOffset(1.4)\n",
"frame3.Draw()\n",
"c.cd(4)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"frame4.GetYaxis().SetTitleOffset(1.4)\n",
"frame4.Draw()\n",
"c.cd(5)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"hh_cor_a0_s1f.GetYaxis().SetTitleOffset(1.4)\n",
"hh_cor_a0_s1f.Draw(\"box\")\n",
"c.cd(6)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"hh_cor_a0_a1.GetYaxis().SetTitleOffset(1.4)\n",
"hh_cor_a0_a1.Draw(\"box\")\n",
"c.cd(7)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"corrHist000.GetYaxis().SetTitleOffset(1.4)\n",
"corrHist000.Draw(\"colz\")\n",
"c.cd(8)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"corrHist127.GetYaxis().SetTitleOffset(1.4)\n",
"corrHist127.Draw(\"colz\")\n",
"c.cd(9)\n",
"ROOT.gPad.SetLeftMargin(0.15)\n",
"corrHist953.GetYaxis().SetTitleOffset(1.4)\n",
"corrHist953.Draw(\"colz\")\n",
"\n",
"c.SaveAs(\"rf801_mcstudy.png\")"
]
},
{
"cell_type": "markdown",
"id": "e8d13638",
"metadata": {},
"source": [
"Make ROOT.RooMCStudy object available on command line after\n",
"macro finishes"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "0f9158e7",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:03.528643Z",
"iopub.status.busy": "2024-03-19T19:18:03.528214Z",
"iopub.status.idle": "2024-03-19T19:18:03.651622Z",
"shell.execute_reply": "2024-03-19T19:18:03.649563Z"
}
},
"outputs": [],
"source": [
"ROOT.gDirectory.Add(mcstudy)"
]
},
{
"cell_type": "markdown",
"id": "4a37d577",
"metadata": {},
"source": [
"Draw all canvases "
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "a7743c9c",
"metadata": {
"collapsed": false,
"execution": {
"iopub.execute_input": "2024-03-19T19:18:03.659375Z",
"iopub.status.busy": "2024-03-19T19:18:03.658970Z",
"iopub.status.idle": "2024-03-19T19:18:04.133896Z",
"shell.execute_reply": "2024-03-19T19:18:04.125102Z"
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from ROOT import gROOT \n",
"gROOT.GetListOfCanvases().Draw()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.10"
}
},
"nbformat": 4,
"nbformat_minor": 5
}