// // Project: BaBar detector at the SLAC PEP-II B-factory // Package: RooRarFit // $Id: omh.config,v 1.1 2007/06/25 22:15:22 clz2992 Exp $ // // This sample config is intended to demonstrate simultaneous K-pi fitting // using omegaH mode. When it is adopted for your analysis, please go // through the config files carefully and make necessary changes. [Dataset Definition] include dsd_omk.config bDecayMode = RooCategory "B Decay Mode" useIdx "B0->omegah" 5101 pullPion = RooRealVar "pull_{#pi}" -24.5 3.5 B(56) pullKaon = RooRealVar "pull_{K}" -3.5 24.5 B(56) diffDE = RooRealVar "diffDE" .026 .090 B(16) "GeV" dPullK = RooFormulaVar "@0-@1" pullPion pullKaon -21 -1 deK = RooFormulaVar "@0+@1" de diffDE //runBlock = RooMappedCategory "Run Block" noIdx runRange Run1 "*Run1" "Run1" "*Run2" "Run2" //[omegahDSI] [Dataset Input] dsdSec = Dataset Definition Datasets = sigPMC sigKMC chlsMC onData \\ sigMC gsbData desbData sigPMC = ascii "sig pion MC Data" "mydats/omegah_SIGMC_Pion.text" Q // quiet mode sigKMC = ascii "sig kaon MC Data" "mydats/omegah_SIGMC_Kaon.text" Q // quiet mode chlsMC = ascii "charmless MC Data" "mydats/omega_h_BBbarBG_allmodes.txt" Q // quiet mode onData12 = ascii "onpeak Data run12" "mydats/omegah_run12.text" Q onData = ascii "onpeak Data" "mydats/omegah_run14.text" Q sigMC = add "K+P full MC" sigPMC 0 sigKMC 0 gsbData = reduce "gsd Data" onData "mes<5.27" desbData = reduce "de sb Data" onData "(de<-.1)||(de>.1)" ub_onData = 845c6cbe0479650ab2a69eab12a0d760 \\ 6f1cc54ba24cffa8b4f3c0bc63d3e8e2 tabulateDatasets = yes //computeCorrelations = yes computeCorrelations = sigPMC sigKMC onData [mlFitter Config] Comps = yieldModel // dataset to fit fitData = onData simultaneousFit = yes yieldSplitMethod = auto // SimPdfBuilder configs //physModels = physCat : Gold=the_yieldModel physModels = the_yieldModel // Please remember the RooFit pdf is created with a // "the_" before the name of rarFit object. splitCats = DataMC(Data) runBlock chgCat(Minus,Plus) protDataVars = DataMC runBlock chgCat protDataEVars = DataMC runBlock the_yieldModel = DataMC : deSig_scale, deSig_shift, mOSig_shift, mOSig_scale \\ DataMC,runBlock : mesSig_shift \\ chgCat : Frac_nSigP_chgCat[Minus], Frac_nBkgP_chgCat[Minus] \\ chgCat : Frac_nSigK_chgCat[Minus], Frac_nBkgK_chgCat[Minus] \\ chgCat : Frac_nChlsK_chgCat[Minus], Frac_nChlsP_chgCat[Minus] \\ runBlock : Frac_nSigP_runBlock[Run4], Frac_nBkgP_runBlock[Run4] \\ runBlock : Frac_nChlsP_runBlock[Run4], Frac_nChlsK_runBlock[Run4] \\ runBlock : Frac_nSigK_runBlock[Run4], Frac_nBkgK_runBlock[Run4] postPdfFloat = Frac_nSigP_chgCat_Plus Frac_nBkgP_chgCat_Plus Frac_nSigK_chgCat_Plus Frac_nBkgK_chgCat_Plus // BR fit master pdf config, use command line option -C BRFit [BRFit] Comps = BRModel // dataset to fit fitData = onData preMLReadParams = D "Dataset Input" C "mlFitter Config" simultaneousFit = yes yieldSplitMethod = auto // SimPdfBuilder configs //physModels = physCat : Gold=the_BRModel physModels = the_BRModel // Please remember the RooFit pdf is created with a // "the_" before the name of rarFit object. splitCats = DataMC(Data) runBlock chgCat(Minus,Plus) protDataVars = DataMC runBlock chgCat protDataEVars = DataMC runBlock the_BRModel = DataMC : deSig_scale, deSig_shift, mOSig_shift, mOSig_scale \\ DataMC,runBlock : mesSig_shift \\ chgCat : Frac_nSigP_chgCat[Minus], Frac_nBkgP_chgCat[Minus] \\ chgCat : Frac_nSigK_chgCat[Minus], Frac_nBkgK_chgCat[Minus] \\ runBlock : Frac_nSigP_runBlock[Run4], Frac_nBkgP_runBlock[Run4] \\ runBlock : Frac_nChlsP_runBlock[Run4], Frac_nChlsK_runBlock[Run4] \\ runBlock : Frac_nSigK_runBlock[Run4], Frac_nBkgK_runBlock[Run4] postPdfFloat = Frac_nSigK_chgCat_Plus Frac_nBkgK_chgCat_Plus Frac_nSigP_chgCat_Plus Frac_nBkgP_chgCat_Plus [yieldModel Config] configStr = MLPdf "ml model" Comps = SigP SigK ChlsP ChlsK BkgP BkgK Coeffs = nSigP nSigK nChlsP nChlsK nBkgP nBkgK nBkgP = nBkgP 29966 L(-1e6 - 1e6) nBkgK = nBkgK 13366 L(-1e6 - 1e6) nSigP = nSigP 274 L(-1e6 - 1e6) nSigK = nSigK 265 L(-1e6 - 1e6) nChlsP = nChlsP RooFormulaVar "@0*@1" nChls fChlsP nChlsK = nChlsK RooFormulaVar "@0*(1-@1)" nChls fChlsP nChls = nChls RooRealVar "number charmless combinded" 220 C L(-1e6 - 1e6) fChlsP = fChlsP RooRealVar "fraction charmless pion" .65 L(0 - 1) postPdfFloat = nSigP nSigK fChlsP nBkgP nBkgK [BRModel Config] configStr = MLPdf "ml BR model" Comps = SigP SigK ChlsP ChlsK BkgP BkgK Coeffs = nSigP nSigK nChlsP nChlsK nBkgP nBkgK nBkgP = nBkgP 30000 L(-1e6 - 1e6) nBkgK = nBkgK 13500 L(-1e6 - 1e6) nChlsP = nChlsP RooFormulaVar "@0*@1" nChls fChlsP nChlsK = nChlsK RooFormulaVar "@0*(1-@1)" nChls fChlsP nSigP = nSigP RooFormulaVar "@0*@1*@2*@3+@4" measBRP nBBbar pBRP effcP fBiasP nSigK = nSigK RooFormulaVar "@0*@1*@2*@3+@4" measBRK nBBbar pBRK effcK fBiasK nBBbar = nBBbar RooRealVar "nBBbar" 231.8 +/- 0.0 C measBRP = measBRP RooRealVar "Fit BR Pion" 6 -1 100 pBRP = pBRP RooRealVar "prodBR Pion" 0.891 +/- 0.0 C fBiasP = fBiasP RooRealVar "fitBias Pion" 17.5 +/- 1.0 C effcP = effcP RooRealVar "effcorr Pion" 0.2045 +/- 0.0 C measBRK = measBRK RooRealVar "Fit BR Kaon" 6 -1 100 pBRK = pBRK RooRealVar "prodBR Kaon" 0.891 +/- 0.0 C fBiasK = fBiasK RooRealVar "fitBias Kaon" 15.9 +/- 0.8 C effcK = effcK RooRealVar "effcorr Kaon" 0.1988 +/- 0.0 C nChls = nChls RooRealVar "number charmless combinded" 220 C L(-1e6 - 1e6) fChlsP = fChlsP RooRealVar "fraction charmless pion" .64 L(0 - 1) postPdfFloat = measBRP measBRK fChlsP nBkgP nBkgK [SigP Config] configStr = ProdPdf "Signal Pion Pdf" Comps = dePSig mesSig fisSig mOSig heliSig pidP fitData = sigMC [SigK Config] configStr = ProdPdf "Signal Kaon Pdf" Comps = deKSig mesSig fisSig mOSig heliSig pidK xtraPdfs = deKSigO fitData = sigMC [BkgP Config] configStr = ProdPdf "Continuum Pion Pdf" Comps = deBkg mesBkg fisBkg mOBkg heliBkg pidP fitData = gsbData [BkgK Config] configStr = ProdPdf "Continuum Kaon Pdf" Comps = deBkg mesBkg fisBkg mOBkg heliBkg pidK pdfFit = no fitData = gsbData [ChlsP Config] configStr = ProdPdf "Charmless Pion Pdf" Comps = deChls mesChls fisChls mOChls heliChls pidP fitData = chlsMC [ChlsK Config] configStr = ProdPdf "Charmless Kaon Pdf" Comps = deChls mesChls fisChls mOChls heliChls pidK pdfFit = no fitData = chlsMC [dePSig Config] fitData = sigPMC configStr = TwoGauss x = de meanC = 0. L(-.1 - .1) meanT = -0.04 L(-.1 - .1) sigmaC = 0.025 L(0 - 0.15) sigmaT = 0.09 L(0 - 0.3) fracC = 0.75 L(0.5 - 1.0) scale = deSig_scale 1.0 C L(0.8 - 1.2) shift = deSig_shift 0.0 C L(-0.2 - 0.2) [deKSig Config] fitData = sigKMC configStr = TwoGauss pdfFit = no pdfPlot = no x = RooFormulaVar "@0+@1" de diffDE protDataVars=diffDE meanC = deKSigO_meanC meanT = deKSigO_meanT sigmaC = deKSigO_sigmaC sigmaT = deKSigO_sigmaT fracC = deKSigO_fracC scale = deSig_scale shift = deSig_shift [deKSigO Config] fitData = sigKMC configStr = TwoGauss plotBins_deK = 20 plotRange_deK = -.2 .2 x = deK meanC = 0. L(-.1 - .1) meanT = -0.04 L(-.1 - .1) sigmaC = 0.025 L(0 - 0.15) sigmaT = 0.09 L(0 - 0.3) fracC = 0.75 L(0.5 - 1.0) scale = deSig_scale 1.0 C L(0.8 - 1.2) shift = deSig_shift 0.0 C L(-0.2 - 0.2) [deBkg Config] configStr = Polynomial x = de nOrder = 2 P01 = -1.5 L(-100 - 100) P02 = 2.0 L(-100 - 100) postPdfFloat = P01 [deChls Config] configStr = TwoGauss x = de meanC = 0.13 L(-0.2 - 0.2) meanT = -0.20 L(-0.3 - 0.2) sigmaC = 0.06 L( 0.0 - 0.3) sigmaT = 0.14 L( 0.0 - 0.3) fracC = 0.35 L( 0.0 - 1.0) [mesSig Config] configStr = TwoGauss x = mes meanC = 5.28 L(5.25 - 5.29) meanT = 5.27 L(5.25 - 5.29) sigmaC = 0.0028 L(0. - .01) sigmaT = 0.008 L(0. - .1) fracC = 0.95 L(0.5 - 1) shift = 0.0 C L(-.1 - .1) [mesBkg Config] fitData = desbData configStr = ArgusBG x = mes max = 5.29 C c = -15. L(-80. - -0.1) postPdfFloat = c [CB mesChls Config] configStr = CBShape x = mes mean = 5.277 L(5.265 - 5.290) sigma = 0.006 L(0.001 - 0.050) alpha = 1.5 L(0.1 - 10.0) n = 1.0 C(0.1 - 5.0) [mesChls Config] configStr = AddPdf Comps = mesChlsGauss mesChlsArgus Coeffs = fracG fracG = fracG "f_{G}" 0.08 L(0.0 - 1.0) [mesChlsArgus Config] configStr = ArgusBG x = mes max = 5.29 C c = -380. L(-800. - -0.1) pow = 1.5 L( -3. - 3.0) [mesChlsGauss Config] configStr = Gaussian x = mes mean = 5.28 L(5.2 - 5.29) sigma = 0.004 L(0.0 - 0.1) [fisSig Config] configStr = BGGauss x = fisher mean = -0.5 L(-2. - 2.) rms = 0.6 L(0. - 1.) asym = 0.1 L(-0.5 - 0.5) [fisBkg Config] configStr = AddPdf Comps = fisBkgC fisBkgT Coeffs = fracC fracC = T "f_{C}" 0.97 L(0.5 - 1.) [fisBkgC Config] configStr = BGGauss x = fisher mean = T "#mu_{C}" 0.43 L(-2.0 - 2.0) rms = T "#sigma_{C}" 0.60 L( 0.0 - 1.0) asym = T "A_{C}" 0.07 L(-0.5 - 0.5) postPdfFloat = mean rms asym [fisBkgT Config] configStr = Gaussian x = fisher mean = T "#mu_{T}" 0.8 L(-1.0 - 2.0) sigma = T "#sigma_{T}" 2.0 L( 0.0 - 5.0) [fisChls Config] configStr = BGGauss x = fisher mean = -0.4 L(-2.0 - 2.0) rms = 0.6 L( 0.0 - 1.0) asym = 0.1 L(-0.5 - 0.5) [mOSig Config] configStr = TwoGauss x = mOmega meanC = 0.782 L(0.76 - 0.80) meanT = 0.780 L(0.76 - 0.80) sigmaC =0.008 L(0. - 0.01) sigmaT =0.02 L(0. - .1) fracC = 0.6 L(0. - 1.) shift = 0.0 C L(-.1 - 0.1) scale = 1.0 C L(0.8 - 1.2) [mOBkg Config] configStr = AddPdf Comps = mOSig mOPolyBkg Coeffs = fracS fracS = T "f_{S}" 0.23 L(0 - 1.) prePdfFix = mOSig mOSig_shift 0.0011 mOSig_scale 1.05 postPdfFloat = mOBkg_fracS [mOPolyBkg Config] configStr = Chebychev x = mOmega nOrder = 2 P01 = 0.2 L(-100 - 100) P02 = -0.02 L(-100 - 100) postPdfFloat = P01 [mOChls Config] configStr = AddPdf Comps = mOChlsC mOChlsT Coeffs = FracC FracC = T "f_{C}" 0.23 L(0 - 1.) [mOChlsC Config] configStr = Gaussian x = mOmega mean = 0.782 L(0.76 - 0.80) sigma = 0.01 L(0. - 0.05) [mOChlsT Config] configStr = Chebychev x = mOmega nOrder = 2 P01 = 0.0 L(-10 - 10) P02 = 0.0 L(-10 - 10) [heliSig Config] configStr = Polynomial x = heli nOrder = 2 P01 = -3.5 L(-10 - 10) P02 = 70. L(0 - 250) [heliBkg Config] configStr = Polynomial x = heli nOrder = 4 P01 = -3.5 L(-10 - 10) P02 = 70. L(-100 - 100) P03 = 0. L(-50 - 50) P04 = 0. L(-50 - 50) [heliChls Config] configStr = Polynomial x = heli nOrder = 4 P01 = -3.5 L(-10 - 10) P02 = 70. L(-100 - 100) P03 = 0. L(-50 - 50) P04 = 0. L(-50 - 50) [pidP Config] fitData = sigPMC configStr = TwoGauss x = pullPion //pion shape params meanC = 0.022 C L(-.5 - .5) meanT = -0.23 C L(-.5 - .5) sigmaC = 0.918 C L(0. - 1.5) sigmaT = 1.661 C L(0. - 2.5) fracC = 0.826 C L(0. - 1.) //kaon shape params (for systematics) //meanC = -0.028 C L(-.5 - .5) //meanT = 0.188 C L(-.5 - .5) //sigmaC = 0.902 C L(0. - 1.5) //sigmaT = 1.584 C L(0. - 2.5) //fracC = 0.808 C L(0. - 1.) [pidK Config] fitData = sigKMC configStr = TwoGauss projWData_pullPion = yes projWData_dPullK = -1 x = RooFormulaVar "@0-@1" pullPion dPullK protDataVars=dPullK meanC = pidP_meanC meanT = pidP_meanT sigmaC = pidP_sigmaC sigmaT = pidP_sigmaT fracC = pidP_fracC pdfFit = no pdfPlot = no [PdfAct] // pdfFit options pdfFit = yes postPdfMakePlot = yes postPdfWriteParams = yes postPdfReadParams = yes // put values you want to fix to the control sample, or for any reason deSig_scale_Data = 1.0500 +/- 0.20000 C L(0.8 - 1.2) deSig_shift_Data = 0.0 +/- 0.20000 C L(-0.2 - 0.2) mesSig_shift = 0.0004 +/- 0.0001 C L(-.1 - .1) mOSig_shift_Data = 0.0011 +/- 0.00085288 C L(-0.1 - 0.1) mOSig_scale_Data = 1.05 +/- 0.29237 C L(0.8 - 1.2) mesSig_shift_{Data;Run1} = 0.0008 +/- 0.0001 C L(-.1 - .1) mesSig_shift_{Data;Run2} = 0.0006 +/- 0.0001 C L(-.1 - .1) mesSig_shift_{Data;Run3} = 0.0004 +/- 0.0001 C L(-.1 - .1) mesSig_shift_{Data;Run4} = 0.0001 +/- 0.0001 C L(-.1 - .1) //pion shape params meanC = 0.022 C L(-.5 - .5) meanT = -0.23 C L(-.5 - .5) sigmaC = 0.918 C L(0. - 1.5) sigmaT = 1.661 C L(0. - 2.5) fracC = 0.826 C L(0. - 1.) //kaon shape params (for systematics) //meanC = -0.028 C L(-.5 - .5) //meanT = 0.188 C L(-.5 - .5) //sigmaC = 0.902 C L(0. - 1.5) //sigmaT = 1.584 C L(0. - 2.5) //fracC = 0.808 C L(0. - 1.) [MLAct] // Datasets config here overrides that in [Dataset Input] Datasets = onData mlFitData = onData // mlFit options mlFit = yes //mlFitOption = emhr preMLReadParams = yes postMLWriteParams = yes postMLSignf = nSigK nSigP //postMLSysParams = deSig_scale_Data .05V deSig_shift_Data .005V mOSig_scale_Data .02V mOSig_shift_Data .0001V fisSig_asym 0.0064V fisSig_mean 0.005V fisSig_rms 0.014V mesSig_shift_Data .0002V //postMLSysVars = nSigP nSigK [eToyAct] // toy options toyStudy = yes protDatasets = onData toyNexp = 1 // # experiments toyNevt = 0 fixed // default: 0 (set to protData #evt), fixed (no fluctuation) toySrc_nSigP = sigPMC 250 // embedded toy toySrc_nSigK = sigKMC 250 // embedded toy toySrc_nChlsP = chlsMC 120 // embedded toy toySrc_nChlsK = chlsMC 100 // embedded toy [pToyAct] // toy options toyStudy = yes protDatasets = onData toyNexp = 1 // # experiments toyNevt = 0 floated // default: 0 (set to protData #evt), fixed (no fluctuation) toySrc_nSigP = pdf 250 // pure toy toySrc_nSigK = pdf 250 // pure toy toySrc_nChlsP = pdf 120 // pure toy toySrc_nChlsK = pdf 100 // pure toy // nBkgP nBkgK use default, ie pdf nBkgP pdf nBkgK [ProjActBoth] // projectionPlot options projPlot = yes projPlotData = onData projComps = SigP SigK projLLRPlots = yes projVars = mes de fisher mOmega heli projLRatioCut = .810 projLRatioCut_mes = .835 projLRatioCut_de = .996 projLRatioCut_fisher = .890 projLRatioCut_mOmega = .925 projLRatioCut_heli = .945 projLRatioCut_deltaT = .975 plotBins_mes = 20 plotBins_de = 20 plotBins_fisher = 18 plotBins_mOmega = 18 plotBins_heli = 20 projFindOptimCut = yes projOptimStep = 0.001 projOptimData = sigPMC sigKMC projOptimRange_mes = "abs(mes-5.28)<0.006" projOptimRange_de = "abs(de)<0.07" projOptimRange_fisher = "fisher<0.0" projOptimRange_mOmega = "abs(mOmega-0.783)<0.025" projOptimRange_heli = "heli>0.5" [ProjActK] // projectionPlot options projPlot = yes projPlotData = onData projComps = SigK projLLRPlots = yes projVars = pullPion de mes fisher mOmega heli projLRatioCut = .998 projLRatioCut_mes = .998 projLRatioCut_de = .998 projLRatioCut_fisher = .999 projLRatioCut_mOmega = .999 projLRatioCut_heli = .999 projLRatioCut_deltaT = .975 plotBins_mes = 20 plotBins_de = 20 plotBins_fisher = 18 plotBins_mOmega = 18 plotBins_heli = 20 plotBins_pullPion = 26 projFindOptimCut = no projOptimStep = 0.001 projOptimData = sigKMC projOptimRange_de = "abs(de)<0.07" projOptimRange_mes = "abs(mes-5.28)<0.006" projOptimRange_fisher = "fisher<0.0" projOptimRange_mOmega = "abs(mOmega-0.783)<0.025" projOptimRange_heli = "heli>0.5" projOptimRange_pullPion = "abs(pullPion+4)<2" [ProjActP] // projectionPlot options projPlot = yes projPlotData = onData projComps = SigP projLLRPlots = yes projVars = pullPion mes de fisher mOmega heli projLRatioCut = .810 projLRatioCut_mes = .835 projLRatioCut_de = .996 projLRatioCut_fisher = .890 projLRatioCut_mOmega = .925 projLRatioCut_heli = .945 projLRatioCut_deltaT = .975 plotBins_mes = 20 plotBins_de = 20 plotBins_fisher = 18 plotBins_mOmega = 18 plotBins_heli = 20 plotBins_pullPion = 26 projFindOptimCut = yes projOptimStep = 0.001 projOptimData = sigPMC projOptimRange_mes = "abs(mes-5.28)<0.006" projOptimRange_de = "abs(de)<0.07" projOptimRange_fisher = "fisher<0.0" projOptimRange_mOmega = "abs(mOmega-0.783)<0.025" projOptimRange_heli = "heli>0.5" projOptimRange_pullPion = "abs(pullPion)<2" [ProjActPBB] // projectionPlot options projPlot = yes projPlotData = onData projComps = ChlsP projLLRPlots = yes projVars = fisher projLRatioCut = .810 projLRatioCut_fisher = .890 plotBins_fisher = 18 projFindOptimCut = yes projOptimStep = 0.001 projOptimData = chlsMC projOptimRange_fisher = "fisher<0.0" [SPlotAct] // sPlot options sPlot = yes sPlotData = onData sPlotComps = all sPlotVars = pullKaon pullPion mes de fisher mOmega heli plotBins_mes = 20 plotBins_de = 20 plotBins_fisher = 18 plotBins_mOmega = 18 plotBins_heli = 20 plotBins_pullPion = 27 plotBins_pullKaon = 27 sPlotNormIgnoredObs = diffDE dPullK //plotPdfOverlay_pullPion = nSigK pidK //PlotPdfOverlay_pullKaon = pidK //sPlotNoPdfOverlay = nSigK nChlsK nBkgK [ESPlotKAct] // sPlot options sPlot = yes sPlotData = onData sPlotComps = all sPlotVars = pullKaon pullPion plotBins_de = 20 plotBins_pullPion = 27 plotBins_pullKaon = 27 sPlotNormIgnoredObs = diffDE dPullK [ESPlotPAct] // sPlot options sPlot = yes sPlotData = onData sPlotComps = all sPlotVars = pullKaon pullPion plotBins_de = 20 plotBins_pullPion = 27 plotBins_pullKaon = 27 sPlotNormIgnoredObs = diffDE dPullK [BrScanP] // scanPlot options scanPlot = yes scanPlotData = onData scanVars = measBRP 0 15 nScanPoints = 75 [BrScanK] // scanPlot options scanPlot = yes scanPlotData = onData scanVars = measBRK 0 15 nScanPoints = 75 [BrScan] // scanPlot options scanPlot = yes scanPlotData = onData scanVars = measBRK 0 15 measBRP 0 15 nScanPoints = 75