[Dataset Definition] include dsd_KsKsKl_dt.config [Dataset Input] dsdSec = Dataset Definition Datasets = sigMC1 sigMC2 \\ udsMC ccMC \\ bpMC bzMC \\ KKPiZMC \\ KKKstMC \\ KsKsKsMC \\ udscMC \\ bbMC \\ simData \\ onData gsbData \\ offData //onData = root "onpeak data" "KsKsKl/dat/KsKsKl_ONDATA.root" outNtp //offData = root "onpeak data" "KsKsKl/dat/KsKsKl_ONDATA.root" outNtp //sigMC1 = root "sig MC Data Reg1" "KsKsKl/dat/KsKsKl_SIGMC1.root" outNtp //sigMC2 = root "sig MC Data Reg2" "KsKsKl/dat/KsKsKl_SIGMC2.root" outNtp //udsMC = root "uds MC Data" "KsKsKl/dat/KsKsKl_UDSMC.root" outNtp //ccMC = root "ccb MC Data" "KsKsKl/dat/KsKsKl_CCMC.root" outNtp //bpMC = root "bpm MC Data" "KsKsKl/dat/KsKsKl_BPMC.root" outNtp //bzMC = root "bz MC Data" "KsKsKl/dat/KsKsKl_BZMC.root" outNtp //KKPiZMC = root "KKPiZ MC Data" "KsKsKl/dat/KsKsKl_KKPiZMC.root" outNtp //KKKstMC = root "KKKst MC Data" "KsKsKl/dat/KsKsKl_KKKstMC.root" outNtp onData = ascii "onpeak data" "KsKsKl/dat/KsKsKl_ONDATA.text" Q offData = ascii "offpeak data" "KsKsKl/dat/KsKsKl_OFFDATA.text" Q gsbData = reduce "gsd Data" onData "de>.01" sigMC1 = ascii "sig MC Data Reg1" "KsKsKl/dat/KsKsKl_SIGMC1.text" Q sigMC2 = ascii "sig MC Data Reg2" "KsKsKl/dat/KsKsKl_SIGMC2.text" Q udsMC = ascii "uds MC Data" "KsKsKl/dat/KsKsKl_UDSMC.text" Q ccMC = ascii "ccb MC Data" "KsKsKl/dat/KsKsKl_CCMC.text" Q bpMC = ascii "bpm MC Data" "KsKsKl/dat/KsKsKl_BPMC.text" Q bzMC = ascii "bz MC Data" "KsKsKl/dat/KsKsKl_BZMC.text" Q KKPiZMC = ascii "KKPiZ MC Data" "KsKsKl/dat/KsKsKl_KKPiZMC.text" Q KKKstMC = ascii "KKKst MC Data" "KsKsKl/dat/KsKsKl_KKKstMC.text" Q KsKsKsMC = ascii "KsKsKs MC Data" "KsKsKl/dat/KsKsKl_KsKsKsMC.text" Q udscMC = add "udsc MC Data" udsMC 0 ccMC 0 bbMC = add "BpmBzMC Data" bpMC 0 bzMC 0 // weighted simulated data sample //simData = add "sig+udsc+BB+peaking" sigMC1 0.00513 udsMC 0.7219 ccMC 0.6414 bpMC 0.1978 bzMC 0.2191 KKPiZMC 6 KKKstMC 44 simData = add "sig+udsc+peaking" sigMC1 20 udsMC 0.4732 ccMC 0.4205 KKPiZMC 2.3 KsKsKsMC 20 KKKstMC 70 //simData = add "sig+udsc+peaking" sigMC1 50 udsMC 0.4732 ccMC 0.4205 KKPiZMC 2.3 KsKsKsMC 20 KKKstMC 70 //simData = add "sig+udsc+peaking" sigMC1 100 udsMC 0.4732 ccMC 0.4205 KKPiZMC 2.3 KsKsKsMC 20 KKKstMC 70 tabulateDatasets = yes ub_onData = d3d1f04607d691a25c808e8a5c85d72c // default master pdf [mlFitter Config] Comps = Reg1Pdf // dataset to fit fitData = onData evtType==1 //mlFitData = onData evtType==1 //projPlotData = onData evtType==1 //sPlotData = onData evtType==1 //mlFitData = offData evtType==1 //projPlotData = offData evtType==1 simultaneousFit = yes yieldSplitMethod = semi physModels = the_Reg1Pdf splitCats = kltype(emc,ifr) protDataVars = kltype the_Reg1Pdf = kltype : deSig1_meanC, deSig1_meanO, deSig1_meanT, deSig1_sigmaC, \\ deSig1_sigmaO, deSig1_sigmaT, deSig1_fracC, deSig1_fracO \\ //postPdfFloat = Frac_nSig1_kltype // BR fit master pdf config, use command line option -C brFitter [brFitter] Comps = brModel // dataset to fit fitData = onData evtType==1 mlFitData = onData evtType==1 projPlotData = onData evtType==1 preMLReadParams = D "Dataset Input" C "mlFitter Config" simultaneousFit = yes yieldSplitMethod = semi physModels = the_brModel splitCats = kltype(emc,ifr) protDataVars = kltype the_brModel = kltype : deSig1_meanC, deSig1_meanO, deSig1_meanT, deSig1_sigmaC, \\ deSig1_sigmaO, deSig1_sigmaT, deSig1_fracC, deSig1_fracO \\ //postPdfFloat = Frac_nSig1_kltype [reg2Fitter] Comps = Reg2Pdf // dataset to fit fitData = onData evtType==2 mlFitData = onData evtType==2 projPlotData = onData evtType==2 sPlotData = onData evtType==2 scanPlotData = onData evtType==2 simultaneousFit = yes yieldSplitMethod = semi physModels = the_Reg2Pdf splitCats = kltype(emc,ifr) protDataVars = kltype the_Reg2Pdf = kltype : deSig1_meanC, deSig1_meanO, deSig1_meanT, deSig1_sigmaC, \\ deSig1_sigmaO, deSig1_sigmaT, deSig1_fracC, deSig1_fracO \\ [reg2BrFitter] Comps = Reg2brModel // dataset to fit fitData = onData evtType==2 mlFitData = onData evtType==2 projPlotData = onData evtType==2 scanPlotData = onData evtType==2 preMLReadParams = D "Dataset Input" C "reg2Fitter" simultaneousFit = yes yieldSplitMethod = semi physModels = the_Reg2brModel splitCats = kltype(emc,ifr) protDataVars = kltype the_Reg2Pdf = kltype : deSig1_meanC, deSig1_meanO, deSig1_meanT, deSig1_sigmaC, \\ deSig1_sigmaO, deSig1_sigmaT, deSig1_fracC, deSig1_fracO \\ [brModel Config] configStr = MLPdf "ml BR model" Comps = Sig1 Bkg1 KKPiZ KsKsKs KKKst Coeffs = nSig1 nBkg1 nKKPiZ nKsKsKs nKKKst nSig1 = nSig1 RooFormulaVar "@0*@1*@2*@3+@4" measBR nBBbar prodBR effcorr fitBias measBR = measBR 6 L(-100 - 1e6) nBBbar = nBBbar RooRealVar "nBBbar" 228.3 +/- 2.5 C prodBR = prodBR RooRealVar "prodBR" 0.471 +/- 0.0 C // .0796*.955 //effcorr = effcorr RooRealVar "effcorr" 0.0760 +/- 0.0 C // .0871*.955*.962 effcorr = effcorr RooRealVar "effcorr" .0805 +/- 0.0 C // fitBias include 0.3 fitbias 2.1 ccKz subtraction fitBias = fitBias RooRealVar "fitBias" 2.4 +/- 0.0 C nBkg1 = nBkg1 2500 L(-1000 - 100000) nBB = nBB 431 L(-1000 - 100000) nKKPiZ = nKKPiZ 2.3 C L(0 - 1000) nKsKsKs = nKsKsKs 20 C L(-1000 - 1000) nKKKst = nKKKst 70 C L(-1000 - 1000) postPdfFloat = measBR nBkg1 nBB //nKKKst [Reg1Pdf Config] configStr = MLPdf "model for reg1" //Comps = esNN3Sig1 esNN3Bkg1 esNN3KKPiZ esNN3KKKst esNN3KsKsKs //BBPdf Comps = Sig1 Bkg1 KKPiZ KKKst KsKsKs //BBPdf Coeffs = nSig1 nBkg1 nKKPiZ nKKKst nKsKsKs //nBB //Coeffs = nbSig nbBkg nBB nKKPiZ nKKKst nSig1 = nSig1 156 L(-1000 - 5000) nBkg1 = nBkg1 2500 L(-1000 - 100000) nBB = nBB 431 L(-1000 - 100000) postPdfFloat = nSig1 nBkg1 nBB //nKKKst nKKPiZ = nKKPiZ 2.3 C L(0 - 1000) nKKKst = nKKKst 70 C L(-1000 - 1000) nKsKsKs = nKsKsKs 20 C L(-1000 - 1000) yBlindCat = yBlindCat RooCategory "Yield blind state" useIdx Blind 1 Unblind 0 nbSig = nbSig RooUnblindPrecision "blind nSig" "keep yield of mode kskskl blind" 100 20 nSig yBlindCat kFALSE nbBkg = nbBkg RooUnblindPrecision "blind nBkg" "keep yield of mode kskskl blind" 1560 90 nBkg yBlindCat kFALSE [Reg2Pdf Config] configStr = MLPdf "model for reg2" Comps = Sig1 Bkg2 Coeffs = nSig2 nBkg2 //Coeffs = nbSig nbBkg nBB nKKPiZ nKKKst nSig2 = nSig2 15 L(-1000 - 5000) nBkg2 = nBkg2 250 L(-1000 - 10000) postPdfFloat = nSig2 nBkg2 [Reg2brModel Config] configStr = MLPdf "model for reg2" Comps = Sig1 Bkg2 Coeffs = nSig2 nBkg2 nSig2 = nSig2 RooFormulaVar "@0*@1*@2*@3+@4" measBR nBBbar prodBR effcorr fitBias measBR = measBR 6 L(-100 - 1e6) nBBbar = nBBbar RooRealVar "nBBbar" 228.3 +/- 2.5 C prodBR = prodBR RooRealVar "prodBR" 0.162 +/- 0.0 C // .061*.955*.962 effcorr = effcorr RooRealVar "effcorr" .056 +/- 0.0 C // fitBias fitBias = fitBias RooRealVar "fitBias" 0. +/- 0.0 C nBkg2 = nBkg2 250 L(-1000 - 10000) postPdfFloat = nBkg2 measBR [Sig1 Config] //pdfFit = simFit //ndFit = yes configStr = ProdPdf "Signal Reg1" Comps = deSig1 esNN3Sig1 fitData = sigMC1 evtType==1 [Bkg1 Config] configStr = ProdPdf "Continuum Reg1" Comps = deBkg1 esNN3Bkg1 fitData = udscMC evtType==1 [Bkg2 Config] configStr = ProdPdf "Continuum Reg2" Comps = deBkg2 esNN3Bkg2 fitData = udscMC evtType==2 [BBPdf Config] configStr = ProdPdf "BB Pdf" Comps = deBB esNN3BB fitData = bbMC evtType==1 [KKPiZ Config] configStr = ProdPdf "KKPiZ Pdf" Comps = deKKPiZ esNN3KKPiZ fitData = KKPiZMC evtType==1 [KKKst Config] configStr = ProdPdf "KKKst Pdf" Comps = deKKKst esNN3KKKst fitData = KKKstMC evtType==1 [KsKsKs Config] configStr = ProdPdf "KsKsKs Pdf" Comps = deKsKsKs esNN3KsKsKs fitData = KsKsKsMC evtType==1 [deSig1 Config] pdfFit = simFit // to fit for meanC_, etc. //pdfFit = no configStr = TriGauss //configStr = TwoGauss x = de //fitRange_de = -.01 .03 //plotRange_de = -.01 .03 //fitData = sigMC1 evtType==1&&de<.03 meanC = 0.001 L(-.01 - 0.08) meanO = 0 L(-.01 - 0.08) meanT = 0 L(-.01 - 0.08) sigmaC = 0.002 L(0 - .1) sigmaO = 0.01 L(0 - .1) sigmaT = 0.05 L(0 - .1) fracC = .8 L(0 - 1) fracO = .1 L(0 - 1) //paramsOnPlot=no //chi2OnPlot=no //chi2OnPlot=nbin [deBkg1 Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-80 - -.1) postPdfFloat = c [deBkg2 Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-80 - -.1) postPdfFloat = c [deBB Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-80 - -.1) pow = 0.5 L(-3 - 3) //postPdfFloat = c [deKKPiZ Config] configStr = AddPdf Comps = deKKPiZC deKKPiZT Coeffs = fracC fracC = T "f_{G}" 0.8 L(0 - 1) [deKKPiZC Config] //configStr = TwoGauss //configStr = Gaussian configStr = Landau x = de mean = 0 L(-.01 - .08) sigma = .05 L(0 - .1) meanC = 0.001 L(-.01 - 0.08) meanT = 0 L(-.01 - 0.08) sigmaC = 0.002 L(0 - .1) sigmaT = 0.05 L(0 - .1) fracC = .8 L(0 - 1) [deKKPiZT Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-80 - -.1) [deKKKst Config] configStr = AddPdf Comps = deKKKstA deKKKstG Coeffs = fracA fracA = T "f_{AGS}" .2 L(0 - 1) [deKKKstG Config] //configStr = Gaussian //configStr = BGGauss configStr = Landau x = de mean = 0 L(-.01 - 0.02) sigma = 0.005 L(0 - .1) rms = 0.005 L(0 - .1) asym=.5 L(0 - 1) [deKKKstA Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-180 - -.1) //pow = 0.5 L(-3 - 3) [deKsKsKs Config] configStr = AddPdf Comps = deKsKsKsA deKsKsKsG Coeffs = fracA fracA = T "f_{AGS}" .2 L(0 - 1) [deKsKsKsG Config] //configStr = Gaussian //configStr = BGGauss configStr = Landau x = de mean = 0 L(-.01 - 0.02) sigma = 0.005 L(0 - .1) rms = 0.005 L(0 - .1) asym=.5 L(0 - 1) [deKsKsKsA Config] configStr = ArgusBG x = RooFormulaVar "5.28-@0" de //max = 5.29 C max = 5.290001 C c = -20 L(-180 - -.1) //pow = 0.5 L(-3 - 3) [esNN3Sig1 Config] configStr = Polynomial x = esNN3 nOrder=4 // order 4 for cuts04 P01=1 +/- 100 L(-1000 - 1000) P02=1 +/- 100 L(-1000 - 1000) P03=1 +/- 100 L(-1000 - 1000) P04=1 +/- 100 L(-1000 - 1000) [esNN3Bkg1 Config] configStr = AddPdf Comps = esNN3Bkg1Poly esNN3Bkg1AGS Coeffs = fracP fracP = T "f_{P}" 0.8 L(0 - 1) fitData = gsbData postPdfFloat = fracP [esNN3Bkg1Poly Config] configStr = Polynomial x = RooFormulaVar "@0-.75" esNN3 nOrder = 1 fitData = gsbData // P00 not needed P01 = -2.6572 +/- .5 L(-5 - 1.333333) P02 = 1.52 +/- .5 L(-100000 - 100000) P03 = .91 +/- .5 L(-100000 - 100000) P04 = .39 +/- .5 L(-100000 - 100000) P05 = -1.154 +/- .5 L(-100000 - 100000) //postPdfFloat = P01 //P02 //P03 [esNN3Bkg1AGS Config] configStr = ArgusBG x = esNN3 max = .955 C c = -3 L(-80 - -.1) postPdfFloat = c [esNN3Bkg2 Config] configStr = Polynomial x = esNN3 nOrder = 5 // P00 not needed P01 = -2.4553 +/- .5 L(-10 - 10) P02 = 1.363 +/- .075 L(-100000 - 100000) P03 = .802 +/- .08 L(-100000 - 100000) P04 = .356 +/- .08 L(-100000 - 100000) P05 = -1.0947 +/- .06 L(-100000 - 100000) [esNN3BB Config] configStr = Polynomial x = esNN3 nOrder = 9 // P00 not needed P01 = 1 +/- 100 L(-10 - 10) P02 = 1 +/- 100 L(-100000 - 100000) P03 = 0 +/- 100 L(-100000 - 100000) P04 = 0 +/- 100 L(-100000 - 100000) P05 = 0 +/- 100 L(-100000 - 100000) [esNN3KKPiZ Config] configStr = Polynomial x = esNN3 nOrder = 2 // P00 not needed P01 = 1 +/- 100 L(-10 - 10) P02 = 1 +/- 100 L(-10000 - 10000) [esNN3KKKst Config] configStr = Polynomial x = esNN3 nOrder = 9 // P00 not needed P01 = 1 +/- 100 L(-10 - 10) P02 = 1 +/- 100 L(-10000 - 10000) [esNN3KsKsKs Config] configStr = Polynomial x = esNN3 nOrder = 9 // P00 not needed P01 = 1 +/- 100 L(-10 - 10) P02 = 1 +/- 100 L(-10000 - 10000) [PdfAct] // pdfFit options pdfFit = yes //prePdfReadParams = yes //pdfToFit = emcNNSigSimEmc emcNNBkgSimEmc //pdfToFit = deSig1 //pdfToFit = deBkg1 //fitRange_de = -.01 .02 //plotRange_de = -.01 .02 //pdfToFit = deBB //pdfToFit = esNN3KKPiZ esNN3KKKst //pdfToFit = deKKPiZ //pdfToFit = deKKKst //pdfToFit = esNN3Bkg1 //pdfToFit = deKsKsKs esNN3KsKsKs postPdfMakePlot = yes postPdfWriteParams = yes [MCParamSec] deSig1_meanC_emc = -4.49778e-04 +/- 1.320e-04 C L(-0.01 - 0.08) // [GeV] deSig1_meanC_ifr = -2.32490e-04 +/- 9.577e-05 C L(-0.01 - 0.08) // [GeV] deSig1_sigmaC_emc = 2.84078e-03 +/- 8.753e-05 C L(0 - 0.1) // [GeV] deSig1_sigmaC_ifr = 3.45661e-03 +/- 9.796e-05 C L(0 - 0.1) // [GeV] Frac_nSig1_kltype_ifr = 2.44229e-01 +/- 5.000e-01 C L(0 - 1) Frac_nSig2_kltype_ifr = 1.61905e-01 +/- 5.000e-01 C L(0 - 1) [DataParamSec] deSig1_meanC_emc = -1.60292e-03 +/- (-1.784e-04, 1.790e-04) C L(-0.01 - 0.08) // [GeV] deSig1_meanC_ifr = -7.94607e-04 +/- (-3.314e-04, 3.386e-04) C L(-0.01 - 0.08) // [GeV] deSig1_sigmaC_emc = 3.12783e-03 +/- (-1.478e-04, 1.566e-04) C L(0 - 0.1) // [GeV] deSig1_sigmaC_ifr = 3.77240e-03 +/- (-2.916e-04, 3.195e-04) C L(0 - 0.1) // [GeV] Frac_nSig1_kltype_ifr = 3.15432e-01 +/- (-1.875e-02, 1.883e-02) C L(0 - 1) Frac_nSig2_kltype_ifr = 3.15432e-01 +/- (-1.875e-02, 1.883e-02) C L(0 - 1) [MLAct] // mlFit options mlFit = yes mlFitData = onData evtType==1 fracSrc_nKKPiZ_kltype = KKPiZMC evtType==1 fracSrc_nKKKst_kltype = KKKstMC evtType==1 fracSrc_nKsKsKs_kltype = KsKsKsMC evtType==1 preMLReadParams = yes preMLReadSecParams = DataParamSec postMLWriteParams = yes postMLSignf = nSig1 nSig2 measBR postMLSysVars = nSig1 //nBkg1 postMLSysParams = nKKPiZ 4V 2V nKKKst 35V 35V nKsKsKs 5V 5V \\ Frac_nSig1_kltype_ifr \\ deSig1_meanC deSig1_meanO deSig1_meanT \\ deSig1_sigmaC deSig1_sigmaO deSig1_sigmaT \\ deSig1_fracC deSig1_fracO nKKKst = 70 C L(-1000 - 1000) nKKPiZ = 2.3 C L(0 - 1000) nKsKsKs = 20 C L(-100 - 1000) //nKKKst = 0 C L(-1000 - 1000) //nKKPiZ = 0 C L(0 - 1000) nBkg1 = 10000 L(-1000 - 100000) //preMLFix = deBkg1_c [ScanAct] scanPlot = yes scanPlotData = onData evtType==1 //scanPlotFitOption = ehr //scanVarShiftToNorm = yes nScanPoints = 40 scanVars = nSig1 0 200 measBR 0 10 //scanUnCorrErr = 0.6 //scanUnCorrErr = 2.37 scanUnCorrErr = 0.8 //scanUnCorrErr = 1.4 //scanCorrErr = 15 [ContourAct] contourPlot = yes contourPlotData = onData nContours = 2 contourVars = nSig -60 60 deBkg_c -40 -1 [SPlotAct] sPlot = yes sPlotSaveSWeight = yes sPlotVars = m2ks1kl m2ks2kl esNN3 de sPlotData = onData evtType==1 //sPlotData = onData evtType==2 //sPlotData = onData m2ks1kl<1.4||m2ks2kl<1.4 [ProjAct] // projectionPlot options projPlot = yes projComps = Sig1 projVars = de esNN3 projLRatioCut = .45 //projLRatioCut = .0 plotBins_de = 15 //plotBins_de = 12 //plotBins_esNN3 = 30 //projFindOptimCut = no projFindOptimCut = yes projOptimRange_de = "-.07