void ssdl2015bck(){ md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="ssdlSync"; string fileList="ssdlSync"; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //} //observables ********************** md.dp.setObservables("l1Pt"); //Binning & title ************************* Binning & titre string yTitle="number of events"; int binning=8; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; double rangeX[2]={0,200}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=true; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=1280;//pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //control categories ============================== //md.anConf.setControlCategs("Fake"); //=============================================================== //md.anConf.addSample( "TTJets", "TTJets", kBlack); // md.anConf.addSample( "WJetsToLNu" , "W+jetsgen", kRed+1 ); // md.anConf.addSample( "DYJetsToLL_M10to50fake" , "DYgen", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M50fake" , "DYgen", kOrange+7); // md.anConf.addSample( "TTJetsfake" , "t#bar{t}gen", kOrange-3); // md.anConf.addSample( "WJetsToLNu" , "W+jets", kRed+1 ); // md.anConf.addSample( "DYJetsToLL_M10to50fake" , "DY", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M50fake" , "DY", kOrange+7); // md.anConf.addSample( "TTJetsfake" , "t#bar{t}", kOrange-3); // md.anConf.addSample( "Fake:WJetsToLNu" , "W+jets", kRed+1 ); // md.anConf.addSample( "Fake:DYJetsToLL_M10to50" , "DY", kOrange+7); // md.anConf.addSample( "Fake:DYJetsToLL_M50" , "DY", kOrange+7); // md.anConf.addSample( "Fake:TTJets" , "t#bar{t}", kOrange-3); // md.anConf.addSample( "Fake:WJetsToLNu" , "data", kRed+1 ); // md.anConf.addSample( "Fake:DYJetsToLL_M10to50" , "data", kOrange+7); // md.anConf.addSample( "Fake:DYJetsToLL_M50" , "data", kOrange+7); // md.anConf.addSample( "Fake:TTJets" , "data", kOrange-3); md.anConf.addSample( "DYJetsToLL_M10to50charge" , "DY", kOrange+7); md.anConf.addSample( "DYJetsToLL_M50charge" , "DY", kOrange+7); md.anConf.addSample( "TTJetscharge" , "t#bar{t}", kOrange-2); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v4_runs_258159_258714", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v4_runs_258159_258714", "data", kBlack); // md.anConf.addSample( "Fake:MuEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:MuEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:MuEG_Run2015D_v4_runs_258159_258714", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v3_run_256926", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); // md.anConf.addSample( "Fake:DoubleEG_Run2015D_v4_runs_258211_258750", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v3_run_256926", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); // md.anConf.addSample( "Fake:DoubleMuon_Run2015D_v4_runs_258211_258750", "data", kBlack); // md.anConf.addSample( "Fake:MuonEG_Run2015D_v3_run_256926", "data", kBlack); // md.anConf.addSample( "Fake:MuonEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "Fake:MuonEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "Fake:MuonEG_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); // md.anConf.addSample( "Fake:MuonEG_Run2015D_v4_runs_258211_258750", "data", kBlack); md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_run_256926", "data", kBlack); md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); md.anConf.addSample( "mId:DoubleEG_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); md.anConf.addSample( "mId:DoubleEG_Run2015D_v4_runs_258211_258750", "data", kBlack); // md.anConf.addSample( "mId:MuonEG_Run2015D_v3_run_256926", "data", kBlack); // md.anConf.addSample( "mId:MuonEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "mId:MuonEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "mId:MuonEG_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); // md.anConf.addSample( "mId:MuonEG_Run2015D_v4_runs_258211_258750", "data", kBlack); // md.anConf.addSample( "mId:DoubleMuon_Run2015D_v3_run_256926", "data", kBlack); // md.anConf.addSample( "mId:DoubleMuon_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "mId:DoubleMuon_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "mId:DoubleMuon_Run2015D_v4_runs_258159_258714_excl", "data", kBlack); // md.anConf.addSample( "mId:DoubleMuon_Run2015D_v4_runs_258211_258750", "data", kBlack); //md.anConf.addSample( "Fake:DYJetsToLL_M50" , "DYf", kOrange+7); // md.anConf.addSample( "TTJets" , "ttprompt", kOrange+7); // md.anConf.addSample( "Fake:TTJets" , "ttFake", kOrange+7); // md.anConf.addSample( "TTJetsfake" , "ttGenFake", kRed+1); // md.anConf.addSample( "Fake:DYJetsToLL_M50" , "DYFake", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M50fake" , "DYGenFake", kRed+1); // md.anConf.addSample( "Fake:DYJetsToLL_M10to50" , "DYLmFake", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M10to50fake" , "DYLmGenFake", kRed+1); //md.anConf.addSample( "WJetsToLNucharge" , "W+jets", kRed+1 ); // md.anConf.addSample( "mId:DYJetsToLL_M10to50" , "DYm", kOrange+7); // md.anConf.addSample( "mId:DYJetsToLL_M50" , "DYm", kOrange+7); // md.anConf.addSample( "mId:TTJets" , "t#bar{t}m", kOrange-3); // md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // md.anConf.addSample( "mId:DoubleEG_Run2015D_v4_runs_258159_258714", "data", kBlack); // md.anConf.addSample( "DYJetsToLL_M50" , "prompt", kOrange+7); //md.anConf.addSample( "DYJetsToLL_M10to50charge" , "DY", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M50charge" , "promptCharge", kOrange+7); //md.anConf.addSample( "DYJetsToLL_M50charge" , "promptCharge", kOrange+7); //md.anConf.addSample( "DYJetsToLL_M50fake" , "promptFake", kOrange+7); //md.anConf.addSample( "TTJetscharge" , "t#bar{t}", kOrange-3); // //DoubleEG_Run2015C_v1_runs_254231_254914.root //md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); // // md.anConf.addSample( "mId:DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); // // md.anConf.addSample( "mId:DoubleEG_Run2015D_v4_runs_258159_258714", "data", kBlack); // md.anConf.addSample( "T1ttbbWW_mGo1300_mCh300_mChi290", "T1ttbbWW", kBlack); // md.anConf.addSample( "T5qqqqWW_mGo1500_mCh800_mChi100", "T5qqqqWW", kBlack); // md.anConf.addSample( "T6ttWW_mSbot600_mCh425_mChi50", "T6ttWW64", kBlack); // md.anConf.addSample( "T6ttWW_mSbot650_mCh150_mChi50", "T6ttWW61", kBlack); //md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_dil", "T5t4Deg", kBlack); //md.anConf.addSample( "TTJets", "t#bar{t}", kWhite); //md.anConf.addSample( "TTJets=80", "fake0", kBlue+1); // manual norm //md.anConf.addSample( "SR1A:TTJets", "fake1", kOrange-3); //both shape and norm from Fake workflow // md.anConf.addSample( "Fake:TTJets=120", "fake2", kBlue+1); //shape from Fake workflow, manual norm // md.anConf.addSample( "data:TTJets", "fake3", kBlue+1); //data driven process // md.anConf.addSample( "data:Fake:TTJets", "fake4", kBlue+1); //data driven process from Fake workflow // md.anConf.addSample( "data:Fake:TTJets=50", "fake5", kBlue+1); //data driven process, Fake workflow, manual norm //=============================================================== //*********************************************************************² //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); //md.doPlot(); //cout<<" =========================== NOMINAL ============================= "<<endl; md.getStatistics("global"); // cout<<" =========================== GLOBAL ============================= "<<endl; // md.getStatistics("global"); // cout<<" =========================== GLOBALFake ============================= "<<endl; // md.getStatistics("global_Fake"); //md.drawStatistics("global_BR00H", "selected"); //md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); }
// Template plot producer for WZ validation plots, called by Sub_SynchroPlots_WZ25.sh //string today = "150910"; void template_yieldsWZ_25ns(std::string var){ gStyle->SetOptStat(0); md.refresh(); //general parameters ********************* general parameters string dir="WZsynchro"; //_Jun16_WZCR_RA7comp"; string fileName="template_WZ25"; string fileList="template_WZ25"; bool mcOnly = false; //observables ********************** md.dp.setObservables(var); md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Binning & title ************************* Binning & title string yTitle="number of events"; int binning=40; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0, 0}; double rangeX[2]={0., 500.}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; if (var.find("miniRelIso") != std::string::npos && (var.find("ttbar") != std::string::npos || var.find("ZMuMu") != std::string::npos || var.find("ZEE") != std::string::npos) ) { logYScale = true; } bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=false; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; string autoBinFile="WZ50binning"; md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=false; bool mcStatSyst=false; string systSources=""; bool uncDet=false; //Lumis( or XSections ) pb-1 & KFactors ************************************ string Norm="DNorm"; float lumi=20.4; //pb-1 19470 float energy=13; //TeV bool useXS=true; map<string,float> LumisXS; map<string,float> KFactors; md.anConf.loadXSDB("XSectionsSpring15.db"); //md.anConf.loadKFDB("kFactorsSpring15.db"); md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== md.anConf.addSample( "TBar_tWch" , "Single top" , kGray+2); md.anConf.addSample( "T_tWch" , "Single top" , kGray+2); md.anConf.addSample( "TToLeptons_tch" , "Single top" , kGray+2); md.anConf.addSample( "TToLeptons_sch" , "Single top" , kGray+2); md.anConf.addSample( "WJetsToLNu" , "W+jets" , kCyan+2); md.anConf.addSample( "WWTo2L2Nu" , "WW" , kSpring+10); md.anConf.addSample( "WZp8" , "WZ" , kGreen+3); md.anConf.addSample( "ZZp8" , "ZZ" , kViolet-4); md.anConf.addSample( "TTJets_LO" , "t#bar{t}" , kRed ); md.anConf.addSample( "DYJetsToLL_M10to50" , "DY" , kCyan ); md.anConf.addSample( "DYJetsToLL_M50" , "DY" , kCyan ); /* md.anConf.addSample( "TBar_tWch" , "TBar_tWch" , kGray+2); md.anConf.addSample( "T_tWch" , "T_tWch" , kGray+2); md.anConf.addSample( "TToLeptons_tch" , "TToLeptons_tch" , kGray+2); md.anConf.addSample( "TToLeptons_sch" , "TToLeptons_sch" , kGray+2); md.anConf.addSample( "WJetsToLNu" , "WJetsToLNu" , kCyan+2); md.anConf.addSample( "WWTo2L2Nu" , "WWTo2L2Nu" , kSpring+10); md.anConf.addSample( "WZp8" , "WZp8" , kGreen+3); md.anConf.addSample( "ZZp8" , "ZZp8" , kViolet-4); md.anConf.addSample( "TTJets_LO" , "TTJets_LO" , kRed ); md.anConf.addSample( "DYJetsToLL_M10to50" , "DYJetsToLL_M10to50" , kCyan ); md.anConf.addSample( "DYJetsToLL_M50" , "DYJetsToLL_M50" , kCyan ); */ // the order MATTERS!!! md.anConf.addSample( "DoubleEG_Run2015C_v1" , "data", kBlack); md.anConf.addSample( "DoubleMuon_Run2015C_v1" , "data", kBlack); md.anConf.addSample( "MuonEG_Run2015C_v1" , "data", kBlack); md.anConf.addSample( "SingleElectron_Run2015C_v1" , "data", kBlack); md.anConf.addSample( "SingleMuon_Run2015C_v1" , "data", kBlack); // //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //Configuration ================ //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); md.doPlot(); md.getStatistics("global"); md.savePlot(dir); //gROOT->ProcessLine(".q"); }
void susy3l_data_25ns() { md.refresh(); //general parameters ********************* general parameters string dir="SUSY3L"; string fileName="susy3l_data_25ns"; //was treeName in LUNE susy_cut_lowpt string fileList="susy3l_data_25ns"; //CH: since AnaConfig needs a fileName to open, we need to put the data files into a different variable string hName=""; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList );//, hName ); md.anConf.configureData(false, 0, mcOnly); //} string obs = "njets" ; //njets, nbjets, met, ht, lep, zpeak, zpt, mt, mt2, pt1, pt2, pt3, mll, muonsip, muoniso, muondz, muondxy, muonptrel, muonptratio, elsip, eliso, eldz, eldxy, elptrel, elptratio, 3rdlepflavor string sigs = "none"; bool data = true; //Binning & title ************************* Binning & titre string yTitle="number of events"; //int binning=1; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; bool logYScale=true; //double rangeX[2]={0,7}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=true; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; if(obs == "njets"){ md.dp.setObservables("NJets"); int binning=1; double rangeX[2]={0,7}; //bool logYScale=true; } if(obs == "nbjets"){ md.dp.setObservables("NBJets"); int binning=1; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "met"){ md.dp.setObservables("MET"); int binning=50; double rangeX[2]={0,500}; //bool logYScale=true; } if(obs == "ht"){ md.dp.setObservables("HT"); int binning=60; double rangeX[2]={0,1000}; //bool logYScale=true; } if(obs == "njets_wzcr"){ md.dp.setObservables("NJetsWZCR"); int binning=1; double rangeX[2]={0,7}; //bool logYScale=true; } if(obs == "nbjets_wzcr"){ md.dp.setObservables("NBJetsWZCR"); int binning=1; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "met_wzcr"){ md.dp.setObservables("METWZCR"); int binning=50; double rangeX[2]={0,500}; //bool logYScale=true; } if(obs == "wzcr_ht"){ md.dp.setObservables("HTWZCR"); int binning=0; double rangeX[2]={0,1000}; //bool logYScale=true; } if(obs == "lep"){ //md.dp.setObservables("mu_multiplicity"); //md.dp.setObservables("el_multiplicity"); //md.dp.setObservables("tau_multiplicity"); md.dp.setObservables("lep_multiplicity"); int binning=1; double rangeX[2]={0,6}; //bool logYScale=true; } if(obs == "zpeak"){ md.dp.setObservables("Zmass"); int binning=2; double rangeX[2]={60,120}; bool logYScale=false; } if(obs == "zpt"){ md.dp.setObservables("Zpt"); int binning=10; double rangeX[2]={0,200}; } if(obs == "mt2"){ md.dp.setObservables("MT2"); int binning=25; double rangeX[2]={0,200}; //bool logYScale=true; } if(obs == "mt"){ md.dp.setObservables("MT"); int binning=25; double rangeX[2]={0,200}; //bool logYScale=true; } if(obs == "3rdlepflavor"){ md.dp.setObservables("3rd_lepton_flavor"); int binning=1; double rangeX[2]={-20,20}; //bool logYScale=true; } if(obs == "pt1"){ md.dp.setObservables("pt_1st_lepton"); int binning=10; double rangeX[2]={0,200}; //bool logYScale=true; } if(obs == "pt2"){ md.dp.setObservables("pt_2nd_lepton"); int binning=10; double rangeX[2]={0,150}; //bool logYScale=true; } if(obs == "pt3"){ md.dp.setObservables("pt_3rd_lepton"); int binning=10; double rangeX[2]={0,100}; //bool logYScale=true; } if(obs == "mll"){ md.dp.setObservables("lowMll"); int binning=10; double rangeX[2]={0,400}; //bool logYScale=true; } if(obs == "muonsip"){ md.dp.setObservables("muon_SIP3d"); int binning=0; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "muoniso"){ md.dp.setObservables("muon_miniRelIso"); int binning=0; double rangeX[2]={0,0.4}; //bool logYScale=true; } if(obs == "muondz"){ md.dp.setObservables("muon_dz"); int binning=0; double rangeX[2]={0,600}; //bool logYScale=true; } if(obs == "muondxy"){ md.dp.setObservables("muon_dxy"); int binning=0; double rangeX[2]={0,100}; //bool logYScale=true; } if(obs == "muonptrel"){ md.dp.setObservables("muon_JetPtRel"); int binning=0; double rangeX[2]={0,100}; //bool logYScale=true; } if(obs == "muonptratio"){ md.dp.setObservables("muon_JetPtRatio"); int binning=0; double rangeX[2]={0,1.3}; //bool logYScale=true; } if(obs == "elsip"){ md.dp.setObservables("el_SIP3d"); int binning=0; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "eliso"){ md.dp.setObservables("el_miniRelIso"); int binning=0; double rangeX[2]={0,0.4}; //bool logYScale=true; } if(obs == "eldz"){ md.dp.setObservables("el_dz"); int binning=0; double rangeX[2]={0,600}; //bool logYScale=true; } if(obs == "eldxy"){ md.dp.setObservables("el_dxy"); int binning=0; double rangeX[2]={0,100}; //bool logYScale=true; } if(obs == "elptrel"){ md.dp.setObservables("el_JetPtRel"); int binning=0; double rangeX[2]={0,40}; //bool logYScale=true; } if(obs == "elptratio"){ md.dp.setObservables("el_JetPtRatio"); int binning=0; double rangeX[2]={0,1.3}; //bool logYScale=true; } //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=true; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=133.14; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; md.anConf.loadKFDB("kFactorsSpring15.db"); //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== // SDYJetsM50_HT600toInf_PU_S14_POSTLS170_skimamples ************************** samples //if( md.isInitStatus() ) { md.anConf.addSample( "TTWToLNu" , "t#bar{t}W" , kYellow ); md.anConf.addSample( "TTZToLLNuNu" , "t#bar{t}Z" , kBlue ); md.anConf.addSample( "WZTo3LNu" , "WZ" , kGreen ); md.anConf.addSample( "ZZTo4L" , "ZZ" , kGreen+3 ); md.anConf.addSample( "GGHZZ4L" , "rare SM" , kCyan ); md.anConf.addSample( "TTHnobb" , "rare SM" , kCyan ); //t production //md.anConf.addSample( "TBarToLeptons_sch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TbarToLeptons_tch" , "single t" , kRed+3 ); md.anConf.addSample( "TBar_tWch" , "single t" , kRed+3 ); md.anConf.addSample( "T_tWch" , "single t" , kRed+3 ); md.anConf.addSample( "TTJets" , "TT" , kRed+2 ); md.anConf.addSample( "TToLeptons_sch_amcatnlo" , "TT" , kRed+2 ); md.anConf.addSample( "TToLeptons_tch" , "TT" , kRed+2 ); md.anConf.addSample( "TTGJets" , "TT" , kRed+2 ); //W+Jets md.anConf.addSample( "WJetsToLNu" , "WJets" , kRed-6 ); //md.anConf.addSample( "WJetsToLNu_HT200to400" , "non-prompt e/#mu" , kRed ); //md.anConf.addSample( "WJetsToLNu_HT400to600" , "non-prompt e/#mu" , kRed ); //md.anConf.addSample( "WJetsToLNu_HT600toInf" , "non-prompt e/#mu" , kRed ); //Drell-Yan //md.anConf.addSample( "DYJetsToLL_LO_M50_50ns" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "DYJetsToLL_M10to50" , "DY" , kRed ); md.anConf.addSample( "DYJetsToLL_M50" , "DY" , kRed ); //md.anConf.addSample( "DYJetsToLL_M50_HT200to400" , "non-prompt e/#mu" , kRed ); //md.anConf.addSample( "DYJetsToLL_M50_HT400to600" , "non-prompt e/#mu" , kRed ); //md.anConf.addSample( "DYJetsToLL_M50_HT600toInf" , "non-prompt e/#mu" , kRed ); //signal if(sigs=="t"){ md.anConf.addSample( "T1tttt_mGo1200_mChi800" , "T1t412 sig" , kBlue-3 ); md.anConf.addSample( "T1tttt_mGo1500_mChi100" , "T1t415 sig" , kBlue-7 ); md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280" , "T5t410 sig" , kOrange+10 ); } if(sigs=="q"){ md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4WZ315 sig" , kGreen+2 ); md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4WZ325 sig" , kMagenta ); md.anConf.addSample( "T5qqqqWZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4WZ12 sig" , kRed-6 ); md.anConf.addSample( "T5qqqqWZ_mGo1500_mCh800_mChi100_dilep" , "T5q4WZ15 sig" , kRed+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4ZZ315 sig" , kGreen+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4ZZ325 sig" , kMagenta+2 ); md.anConf.addSample( "T5qqqqZZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4ZZ12 sig" , kRed-9 ); md.anConf.addSample( "T5qqqqZZ_mGo1500_mCh800_mChi100_dilep" , "T5q4ZZ15 sig" , kRed+1 ); } //data if(data){ md.anConf.addSample( "DoubleEG_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "DoubleMuon_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "MuonEG_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "SingleElectron_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "SingleMuon_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); //md.anConf.addSample( "DoubleEG_Run2015D_v3_run_256926" , "data" , kBlack ); //md.anConf.addSample( "DoubleMuon_Run2015D_v3_run_256926" , "data" , kBlack ); //md.anConf.addSample( "MuonEG_Run2015D_v3_run_256926" , "data" , kBlack ); //md.anConf.addSample( "SingleElectron_Run2015D_v3_run_256926" , "data" , kBlack ); //md.anConf.addSample( "SingleMuon_Run2015D_v3_run_256926" , "data" , kBlack ); } // md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_skim" , "T5tttt (1000) * 20 sig" , kOrange-3 ); //md.anConf.addSample( "T5ttttDeg_mGo1300_mStop300_mCh285_mChi280_skim" , "T5tttt (1300) #cdot 20 sig" , kOrange+6 ); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //Configuration ================ //if( md.isInitStatus() ) { //md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); // } //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); md.doPlot(); //md.doStatisticsPlot(); md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); }
void ssdl2015JES(){ md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="fakeEstim_test"; string fileList="fakeEstim_test"; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //} //observables ********************** md.dp.setObservables("MET"); //Binning & title ************************* Binning & titre string yTitle="number of events"; int binning=1; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; double rangeX[2]={0,200}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=false; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=10000; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsPhys14.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //control categories ============================== //md.anConf.setControlCategs("Fake"); //=============================================================== //md.anConf.addSample( "TTJets", "TTJets", kBlack); md.anConf.addSample( "T1ttbbWW_mGo1300_mCh300_mChi290", "T1ttbbWW", kBlack); md.anConf.addSample( "T5qqqqWW_mGo1500_mCh800_mChi100", "T5qqqqWW", kBlack); md.anConf.addSample( "T6ttWW_mSbot600_mCh425_mChi50", "T6ttWW64", kBlack); md.anConf.addSample( "T6ttWW_mSbot650_mCh150_mChi50", "T6ttWW61", kBlack); //md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_dil", "T5t4Deg", kBlack); //md.anConf.addSample( "TTJets", "t#bar{t}", kWhite); //md.anConf.addSample( "TTJets=80", "fake0", kBlue+1); // manual norm //md.anConf.addSample( "SR1A:TTJets", "fake1", kOrange-3); //both shape and norm from Fake workflow // md.anConf.addSample( "Fake:TTJets=120", "fake2", kBlue+1); //shape from Fake workflow, manual norm // md.anConf.addSample( "data:TTJets", "fake3", kBlue+1); //data driven process // md.anConf.addSample( "data:Fake:TTJets", "fake4", kBlue+1); //data driven process from Fake workflow // md.anConf.addSample( "data:Fake:TTJets=50", "fake5", kBlue+1); //data driven process, Fake workflow, manual norm //=============================================================== //*********************************************************************² //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); //md.doPlot(); md.getStatistics("nominal"); //md.drawStatistics("global_BR00H", "selected"); //md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); }
void susy3l_datacard() { md.refresh(); //general parameters ********************* general parameters string dir="SUSY3L"; string fileName="susy3l_SR00_off"; // not needed for statistics but provides the normalization string fileList="susy3l_SR00_off"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=10000; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsPhys14.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== //top md.addDataCardBkgSample("TBarToLeptons_sch", "fake"); md.addDataCardBkgSample("TBarToLeptons_tch", "fake"); md.addDataCardBkgSample("TBar_tWch", "fake"); md.addDataCardBkgSample("TTJets", "fake"); md.addDataCardBkgSample("TToLeptons_sch", "fake"); md.addDataCardBkgSample("TToLeptons_tch", "fake"); md.addDataCardBkgSample("T_tWch", "fake"); //W+Jets md.addDataCardBkgSample("WJetsToLNu_HT100to200", "fake"); md.addDataCardBkgSample("WJetsToLNu_HT200to400", "fake"); //md.addDataCardBkgSample("WJetsToLNu_HT400to600", "fake"); md.addDataCardBkgSample("WJetsToLNu_HT600toInf", "fake"); //Drell-Yan md.addDataCardBkgSample("DYJetsToLL_M50_HT100to200", "fake"); md.addDataCardBkgSample("DYJetsToLL_M50_HT200to400", "fake"); md.addDataCardBkgSample("DYJetsToLL_M50_HT400to600", "fake"); md.addDataCardBkgSample("DYJetsToLL_M50_HT600toInf", "fake"); //di-boson md.addDataCardBkgSample("WZJetsTo3LNu", "diboson"); md.addDataCardBkgSample("ZZTo4L", "diboson"); //TTV md.addDataCardBkgSample("TTZJets", "ttZ"); md.addDataCardBkgSample("TTWJets", "ttW"); //rare md.addDataCardBkgSample("TTH", "rare"); //md.addDataCardBkgSample("GGHZZ4L", "rare"); //signal md.addDataCardSigSample("SMS_T1tttt_2J_mGl1200_mLSP800","T1t412"); //md.addDataCardSigSample("SMS_T1tttt_2J_mGl1500_mLSP100","T1t415"); //md.addDataCardSigSample("T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_dil","T5t410dil"); //md.addDataCardSigSample("T5ttttDeg_mGo1000_mStop300_mCh285_mChi280","T5t410"); //md.addDataCardSigSample("T5qqqqWWDeg_mGo1000_mCh315_mChi300_dilep", "T5q410"); //md.addDataCardSigSample("T5qqqqWW_mGo1200_mCh1000_mChi800_dilep", "T5q412"); md.addNuisanceParameter("fratio","fake","lnN","1.50"); md.addNuisanceParameter("rNorm","rare","lnN","1.20"); md.addNuisanceParameter("sigNorm","T1t412","lnN","1.10"); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); int nCateg=1; vector<string> _categs(nCateg,""); // string srs[66]={ // "SR1AL", "SR2AL", "SR3AL", "SR4AL", "SR1AH", "SR2AH", "SR3AH", "SR4AH", "SR5A", "SR6A", // "SR7AL", "SR8AL", "SR9AL", "SR10AL", "SR7AH", "SR8AH", "SR9AH", "SR10AH", "SR11A", "SR12A", // "SR13AL", "SR14AL", "SR15AL", "SR16AL", "SR13AH", "SR14AH", "SR15AH", "SR16AH", "SR17A", "SR18A", //"SR19AL", "SR19AH", "SR20A", // "SR1BL", "SR1BH", "SR2BL", "SR2BH", // "SR3BL", "SR3BH", "SR4BL", "SR4BH", // "SR5BL", "SR5BH", "SR6BL", "SR6BH", // "SR7BL", "SR7BH", // }; //string srs[28]={ // "SR1A", "SR2A", "SR3A", "SR4A", "SR5A", "SR6A", // "SR7A", "SR8A", "SR9A", "SR10A", "SR11A", "SR12A", // "SR13A", "SR14A", "SR15A", "SR16A", "SR17A", "SR18A", // "SR19A", "SR20A", // "SR1B", "SR2B", // "SR3B", "SR4B", // "SR5B", "SR6B", // "SR7B", "SR8B" }; string srs[1]={ "SR00_off" }; _categs.assign(srs, srs+nCateg); for(size_t ic=0;ic< _categs.size();ic++) { string cat=_categs[ic]; md.makeSingleDataCard("T1t412", "global_"+cat, "SR MET selection", "susy3l_"+cat+"_T1t412"); } gROOT->ProcessLine(".q"); }
void susy3l_manual() { md.refresh(); //general parameters ********************* general parameters string dir="SUSY3L"; string fileName="template3L_skimmed"; //was treeName in LUNE susy_cut_lowpt string fileList="template3L_skimmed"; //CH: since AnaConfig needs a fileName to open, we need to put the data files into a different variable string hName=""; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList );//, hName ); md.anConf.configureData(false, 0, mcOnly); //} string obs ="zpeak"; //njets, nbjets, met, ht, lep, zpeak, mt2, pt, mll string sigs = "none"; //observables ********************** //string obs[6]={"","","","","",""}; //md.dp.setObservables("Zmass"); //md.dp.setObservables("deltaR_elmu"); //md.dp.setObservables("BR_NJets"); //md.dp.setObservables("BR_NBJets"); //md.dp.setObservables("BR_HT"); //md.dp.setObservables("BR_MET"); //md.dp.setObservables("SR_NJets"); //md.dp.setObservables("SR_NBJets"); //md.dp.setObservables("SR_HT"); //md.dp.setObservables("SR_MET"); //Binning & title ************************* Binning & titre string yTitle="number of events"; //int binning=1; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; //double rangeX[2]={0,7}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; if(obs == "njets"){ md.dp.setObservables("BR_NJets"); int binning=1; double rangeX[2]={0,7}; } if(obs == "nbjets"){ md.dp.setObservables("BR_NBJets"); int binning=1; double rangeX[2]={0,5}; } if(obs == "met"){ md.dp.setObservables("BR_MET"); int binning=50; double rangeX[2]={0,500}; } if(obs == "ht"){ md.dp.setObservables("BR_HT"); int binning=50; double rangeX[2]={0,800}; } if(obs == "lep"){ md.dp.setObservables("mu_multiplicity"); md.dp.setObservables("el_multiplicity"); md.dp.setObservables("tau_multiplicity"); md.dp.setObservables("lep_multiplicity"); int binning=1; double rangeX[2]={0,7}; //bool logYScale=true; } if(obs == "zpeak"){ md.dp.setObservables("Zmass"); int binning=3; double rangeX[2]={0,200}; } if(obs == "mt2"){ md.dp.setObservables("MT2"); int binning=10; double rangeX[2]={0,400}; bool logYScale=true; } if(obs == "pt"){ md.dp.setObservables("pt_1st_lepton"); md.dp.setObservables("pt_2nd_lepton"); md.dp.setObservables("pt_3rd_lepton"); int binning=4; double rangeX[2]={0,200}; bool logYScale=false; } if(obs == "mll"){ md.dp.setObservables("lowMll"); int binning=2; double rangeX[2]={0,400}; bool logYScale=true; } //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=true; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=42; //pb-1 19470 float energy=13; //TeV bool useXS=false; map<string,float> LumisXS; //cross sections //Drell-Yan //LumisXS[ "DYJetsToLL_M-50_13TeV-madgraph-pythia8" ] = 2829164 / (6024 ); LumisXS[ "DYJetsToLL_M50_HT100to200" ] = 4054159 / ( 194.3 * 1.27 ); LumisXS[ "DYJetsToLL_M50_HT200to400" ] = 4666496 / ( 52.24 * 1.27 ); LumisXS[ "DYJetsToLL_M50_HT400to600" ] = 4931372 / ( 6.546 * 1.27 ); LumisXS[ "DYJetsToLL_M50_HT600toInf" ] = 4493574 / ( 2.179 * 1.27 ); //Higgs->ZZ LumisXS[ "GGHZZ4L" ] = 204684 / (0.01212192 ); // cross-section: 43.92*2.76E-04 LumisXS[ "TTH" ] = 199700 / (0.5085 ); //signal LumisXS[ "SMS_T1tttt_2J_mGl1200_mLSP800" ] = 100322 / (0.0856418 * 20 ); LumisXS[ "SMS_T1tttt_2J_mGl1500_mLSP100" ] = 105679 / (0.0141903 * 20 ); LumisXS[ "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280"] = 52499 / (0.3254 * 20 ); LumisXS[ "T5qqqqWZDeg_mGo1000_mCh315_mChi300_dilep" ] = 19688 / (0.012135670848 * 20 ); LumisXS[ "T5qqqqWZDeg_mGo1000_mCh325_mChi300_dilep" ] = 19228 / (0.011385976896 * 20 ); LumisXS[ "T5qqqqWZ_mGo1200_mCh1000_mChi800_dilep" ] = 24510 / (0.002830290206 * 20 ); LumisXS[ "T5qqqqWZ_mGo1500_mCh800_mChi100_dilep" ] = 23300 / (0.000468961034 * 20 ); LumisXS[ "T5qqqqZZDeg_mGo1000_mCh315_mChi300_dilep" ] = 40268 / (0.004081667072 * 20 ); LumisXS[ "T5qqqqZZDeg_mGo1000_mCh325_mChi300_dilep" ] = 39202 / (0.003795325632 * 20 ); LumisXS[ "T5qqqqZZ_mGo1200_mCh1000_mChi800_dilep" ] = 47130 / (0.000891017287 * 20 ); LumisXS[ "T5qqqqZZ_mGo1500_mCh800_mChi100_dilep" ] = 45307 / (0.000147635881 * 20 ); //top LumisXS[ "TBarToLeptons_sch" ] = 250000 / (1.34784 ); // 4.16*0.108*3 LumisXS[ "TBarToLeptons_tch" ] = 1999800 / (26.23428 ); // 80.97*0.108*3 LumisXS[ "TBar_tWch" ] = 971800 / (35.6 ); LumisXS[ "TTJets" ] =25446993 / (809.1 ); LumisXS[ "TToLeptons_sch" ] = 500000 / (2.3328 ); // 7.20*0.108*3 LumisXS[ "TToLeptons_tch" ] = 3991000 / (44.0802 ); // 136.05*0.108*3 LumisXS[ "T_tWch" ] = 986100 / (35.6 ); // 35.6 //TTV LumisXS[ "TTWJets" ] = 246521 / (0.6647 ); LumisXS[ "TTZJets" ] = 249275 / (0.8565 ); //LumisXS[ "WJetsToLNu_13TeV-madgraph-pythia8-tauola" ] = 10017462 / (20508.9 ); LumisXS[ "WJetsToLNu_HT100to200" ] = 5262265 / (1817.0 * 1.23 ); LumisXS[ "WJetsToLNu_HT200to400" ] = 4936077 / ( 471.6 * 1.23 ); LumisXS[ "WJetsToLNu_HT400to600" ] = 4640594 / ( 55.61 * 1.23 ); LumisXS[ "WJetsToLNu_HT600toInf" ] = 237484 / ( 18.81 * 1.23 ); //Diboson LumisXS[ "WZJetsTo3LNu" ] = 237484 / (2.29 ); LumisXS[ "ZZTo4L" ] = 1958600 / (0.3231 ); // cross-section 31.8*(3*0.0336)*(3*0.0336) //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== // SDYJetsM50_HT600toInf_PU_S14_POSTLS170_skimamples ************************** samples //if( md.isInitStatus() ) { md.anConf.addSample( "WZJetsTo3LNu" , "WZ+ZZ" , kGreen ); md.anConf.addSample( "ZZTo4L" , "WZ+ZZ" , kGreen ); md.anConf.addSample( "TTZJets" , "t#bar{t}Z" , kBlue ); md.anConf.addSample( "TTWJets" , "t#bar{t}W" , kYellow ); md.anConf.addSample( "GGHZZ4L" , "rare SM" , kCyan ); md.anConf.addSample( "TTH" , "rare SM" , kCyan ); //Drell-Yan md.anConf.addSample( "DYJetsToLL_M50_HT100to200" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "DYJetsToLL_M50_HT200to400" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "DYJetsToLL_M50_HT400to600" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "DYJetsToLL_M50_HT600toInf" , "non-prompt e/#mu" , kRed ); //t production md.anConf.addSample( "TBarToLeptons_sch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TBarToLeptons_tch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TBar_tWch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TTJets" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TToLeptons_sch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "TToLeptons_tch" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "T_tWch" , "non-prompt e/#mu" , kRed ); //W+Jets md.anConf.addSample( "WJetsToLNu_HT100to200" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "WJetsToLNu_HT200to400" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "WJetsToLNu_HT400to600" , "non-prompt e/#mu" , kRed ); md.anConf.addSample( "WJetsToLNu_HT600toInf" , "non-prompt e/#mu" , kRed ); //signal if(sigs=="t"){ md.anConf.addSample( "SMS_T1tttt_2J_mGl1200_mLSP800" , "T1t412 sig" , kBlue-3 ); md.anConf.addSample( "SMS_T1tttt_2J_mGl1500_mLSP100" , "T1t415 sig" , kBlue-7 ); md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280" , "T5t410 sig" , kOrange+10 ); } if(sigs=="q"){ md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4WZ315 sig" , kGreen+2 ); md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4WZ325 sig" , kMagenta ); md.anConf.addSample( "T5qqqqWZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4WZ12 sig" , kRed-6 ); md.anConf.addSample( "T5qqqqWZ_mGo1500_mCh800_mChi100_dilep" , "T5q4WZ15 sig" , kRed+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4ZZ315 sig" , kGreen+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4ZZ325 sig" , kMagenta+2 ); md.anConf.addSample( "T5qqqqZZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4ZZ12 sig" , kRed-9 ); md.anConf.addSample( "T5qqqqZZ_mGo1500_mCh800_mChi100_dilep" , "T5q4ZZ15 sig" , kRed+1 ); } // md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_skim" , "T5tttt (1000) * 20 sig" , kOrange-3 ); //md.anConf.addSample( "T5ttttDeg_mGo1300_mStop300_mCh285_mChi280_skim" , "T5tttt (1300) #cdot 20 sig" , kOrange+6 ); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //Configuration ================ //if( md.isInitStatus() ) { //md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); // } //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); md.doPlot(); //md.doStatisticsPlot(); md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); }
void dataCardProd_HHSR9_T14t12() { md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="ssdl2fb_oct"; // not needed for statistics but provides the normalization string fileList="ssdl2fb_oct"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=1; //pb-1 19470 float energy=13; //TeV bool useXS=false; //md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== md.addDataCardSigSample("HHSR9:_sig_T1t_1200_800","T14t12"); md.addDataCardSample("HHSR9:_standard_prompt_WZ", "WZ"); md.addDataCardSample("HHSR9:_standard_prompt_ttW","ttW"); md.addDataCardSample("HHSR9:_standard_prompt_ttZH","ttHZ"); md.addDataCardSample("HHSR9:_standard_prompt_WW", "WW"); md.addDataCardSample("HHSR9:_standard_prompt_TG", "XG"); md.addDataCardSample("HHSR9:_standard_prompt_VG", "XG"); md.addDataCardSample("HHSR9:_standard_prompt_Rares","rares"); md.addDataCardSample("HHSR9:_flipsappl_data", "flip"); md.addDataCardSample("HHSR9:_fakesappl_data", "fake"); md.addDataCardSample("HHSR9:data","data"); //lumi md.addNuisanceParameter("lumi","WZ:ttW:ttHZ:WW:XG:rares:T14t12","lnN","1.08:1.08:1.08:1.08:1.08:1.08:1.08"); //experimental uncertainties md.addNuisanceParameter("jes","ttW:ttZH:WW:XG:rares:T14t12","lnN","1.00:1.01:1.01:1.03:1.03:1.10"); md.addNuisanceParameter("btag","ttW:ttZH:WW:XG:rares:T14t12","lnN","1.11:1.11:1.11:1.09:1.11:1.01"); md.addNuisanceParameter("lEff","ttW:ttZH:WW:XG:rares:T14t12","lnN","1.04:1.04:1.04:1.04:1.04:1.04"); md.addNuisanceParameter("tEff","ttW:ttZH:WW:XG:rares:T14t12","lnN","1.02:1.02:1.02:1.02:1.02:1.02"); md.addNuisanceParameter("tHTE","ttW:ttZH:WW:XG:rares:T14t12","lnN","-:-:-:-:-:-"); //test md.addNuisanceParameter("BTag","ttW","lnN",""); //Data-driven methods md.addNuisanceParameter("chMID","flip","lnN","1.30"); md.addNuisanceParameter("fratio","fake","lnN","1.30"); md.addNuisanceParameter("frEwk","fake","lnN","1.10"); //theoretical uncertainties md.addNuisanceParameter("wzTh","WZ","lnN","1.30"); md.addNuisanceParameter("WWTh","ttW","lnN","1.50"); md.addNuisanceParameter("TGTh","XG","lnN","1.50"); md.addNuisanceParameter("rareTh","rares","lnN","1.50"); //md.addNuisanceParameter("sigTh","T14t12","lnN","SIGTHTAG"); md.addNuisanceParameter("ttWPdf","ttW","lnN","1.04"); md.addNuisanceParameter("ttHZPdf","ttHZ","lnN","1.04"); md.addNuisanceParameter("ttWXs","ttW","lnN","1.13"); md.addNuisanceParameter("ttHZXs","ttHZ","lnN","1.11"); md.addNuisanceParameter("ttWAcc","ttW","lnN","1.03"); md.addNuisanceParameter("ttHZAcc","ttHZ","lnN","1.03"); string srs[66]={ "HHSR1", "HHSR2", "HHSR3", "HHSR4", "HHSR5", "HHSR6", "HHSR7", "HHSR8", "HHSR9", "HHSR10", "HHSR11", "HHSR12", "HHSR13", "HHSR14", "HHSR15", "HHSR16", "HHSR17", "HHSR18", "HHSR19", "HHSR20", "HHSR21", "HHSR22", "HHSR23", "HHSR24", "HHSR25", "HHSR26", "HHSR27", "HHSR28", "HHSR29", "HHSR30", "HHSR31", "HHSR32", "HLSR1", "HLSR2", "HLSR3", "HLSR4", "HLSR5", "HLSR6", "HLSR7", "HLSR8", "HLSR9", "HLSR10", "HLSR11", "HLSR12", "HLSR13", "HLSR14", "HLSR15", "HLSR16", "HLSR17", "HLSR18", "HLSR19", "HLSR20", "HLSR21", "HLSR22", "HLSR23", "HLSR24", "HLSR25","HLSR26", "LLSR1", "LLSR2", "LLSR3", "LLSR4", "LLSR5", "LLSR6", "LLSR7", "LLSR8" }; //statistical uncertainties for(int isr=0;isr<66;isr++) { if(srs[isr]=="HHSR9") { md.addNuisanceParameter("ttW"+srs[isr]+"stat","ttW","gmN",""); md.addNuisanceParameter("ttHZ"+srs[isr]+"stat","ttHZ","lnN",""); md.addNuisanceParameter("WW"+srs[isr]+"stat","WW","lnN",""); md.addNuisanceParameter("XG"+srs[isr]+"stat","XG","lnN","1.18"); md.addNuisanceParameter("rares"+srs[isr]+"stat","rares","lnN",""); md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN","1.07"); md.addNuisanceParameter("flip"+srs[isr]+"stat","flip","lnN",""); md.addNuisanceParameter("T14t12"+srs[isr]+"stat","T14t12","lnN",""); } else { md.addNuisanceParameter("ttW"+srs[isr]+"stat","ttW","gmN","-"); md.addNuisanceParameter("ttHZ"+srs[isr]+"stat","ttHZ","lnN","-"); md.addNuisanceParameter("WW"+srs[isr]+"stat","WW","lnN","-"); md.addNuisanceParameter("XG"+srs[isr]+"stat","XG","lnN","-"); md.addNuisanceParameter("rares"+srs[isr]+"stat","rares","lnN","-"); md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN","-"); md.addNuisanceParameter("flip"+srs[isr]+"stat","flip","lnN","-"); md.addNuisanceParameter("T14t12"+srs[isr]+"stat","T14t12","lnN","-"); } }//signal regions //md.overwriteNuisanceParameter("ttWHHSR9stat","ttW","2.00"); //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); md.makeSingleDataCard("T14t12", "global_HHSR9", "selected", "ssdl2015_HHSR9_T14t12"); gROOT->ProcessLine(".q"); }
void ssdl2015card_test() { md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="ssdl2fb_oct"; // not needed for statistics but provides the normalization string fileList="ssdl2fb_oct"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=1; //pb-1 19470 float energy=13; //TeV bool useXS=false; //md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== md.addDataCardSigSample("HHSR1:_standard_prompt_ttW","ttW"); md.addDataCardSample("HHSR1:_standard_prompt_ttZH","rares"); md.addDataCardSample("HHSR1:_standard_prompt_Rares","rares"); md.addDataCardSample("HHSR1:_standard_prompt_WW", "WW"); md.addDataCardSample("HHSR1:_standard_prompt_WZ", "WZ"); md.addDataCardSample("HHSR1:_standard_prompt_TG", "TG"); md.addDataCardSample("HHSR1:_standard_prompt_VG", "VG"); md.addDataCardSample("HHSR1:_flipsappl_data", "flip"); md.addDataCardSample("HHSR1:_fakesappl_data", "fake"); md.addDataCardSample("HHSR1:_standard_prompt_ttZH","pseudodata"); md.addDataCardSample("HHSR1:_standard_prompt_Rares","pseudodata"); md.addDataCardSample("HHSR1:_standard_prompt_WW", "pseudodata"); md.addDataCardSample("HHSR1:_standard_prompt_WZ", "pseudodata"); md.addDataCardSample("HHSR1:_standard_prompt_TG", "pseudodata"); md.addDataCardSample("HHSR1:_standard_prompt_VG", "pseudodata"); md.addDataCardSample("HHSR1:_flipsappl_data", "pseudodata"); md.addDataCardSample("HHSR1:_fakesappl_data", "pseudodata"); //experimental uncertainties md.addNuisanceParameter("jes","ttW:rares","lnN","1.08:1.07"); //Data-driven methods md.addNuisanceParameter("chMID","flip","lnN","1.30"); md.addNuisanceParameter("fratio","fake","lnN","1.35"); //syst from stat uncertainties == automatic //md.addNuisanceParameter("wzstat","wz","lnN",""); //--> already given by the 8/15% on Xsect // md.addNuisanceParameter("tthstat","tth","lnN",""); // md.addNuisanceParameter("ttwstat","ttw","lnN",""); // md.addNuisanceParameter("ttzstat","ttz","lnN",""); // md.addNuisanceParameter("fakestat","fake","lnN",""); // md.addNuisanceParameter("chMIdstat","chMId","lnN",""); // md.addNuisanceParameter("SIGTAGstat","SIGTAG","lnN",""); // string srs[66]={ // "SR1A", "SR2A", "SR3A", "SR4A", "SR5A", "SR6A", "SR7A", "SR8A", // "SR9A", "SR10A", "SR11A", "SR12A", "SR13A", "SR14A", "SR15A", "SR16A", // "SR17A", "SR18A", "SR19A", "SR20A", "SR21A", "SR22A", "SR23A", "SR24A", // "SR25A", "SR26A", "SR27A", "SR28A", "SR29A", "SR30A", "SR31A", "SR32A", // "SR1B", "SR2B", "SR3B", "SR4B", "SR5B", "SR6B", "SR7B", "SR8B", // "SR9B", "SR10B", "SR11B", "SR12B", "SR13B", "SR14B", "SR15B", "SR16B", // "SR17B", "SR18B", "SR19B", "SR20B", "SR21B", "SR22B", "SR23B", "SR24B", // "SR25B","SR26B", // "SR1C", "SR2C", "SR3C", "SR4C", "SR5C", "SR6C", "SR7C", "SR8C" // }; // for(int isr=0;isr<66;isr++) { // if(srs[isr]=="CATTAG") { // md.addNuisanceParameter("tth"+srs[isr]+"stat","tth","lnN",""); // md.addNuisanceParameter("ttw"+srs[isr]+"stat","ttw","lnN",""); // md.addNuisanceParameter("ttz"+srs[isr]+"stat","ttz","lnN",""); // md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN",""); // md.addNuisanceParameter("chMId"+srs[isr]+"stat","chMId","lnN",""); // md.addNuisanceParameter("SIGTAG"+srs[isr]+"stat","SIGTAG","lnN",""); // } // else { // md.addNuisanceParameter("tth"+srs[isr]+"stat","tth","lnN","-"); // md.addNuisanceParameter("ttw"+srs[isr]+"stat","ttw","lnN","-"); // md.addNuisanceParameter("ttz"+srs[isr]+"stat","ttz","lnN","-"); // md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN","-"); // md.addNuisanceParameter("chMId"+srs[isr]+"stat","chMId","lnN","-"); // md.addNuisanceParameter("SIGTAG"+srs[isr]+"stat","SIGTAG","lnN","-"); // } // }//signal regions // md.addNuisanceParameter("SIGTAGStat","SIGTAG","lnN",""); // md.addNuisanceParameter("ttwStat","ttw","lnN",""); // md.addNuisanceParameter("ttzStat","ttz","lnN",""); // md.addNuisanceParameter("wzStat","wz","lnN",""); //md.addNuisanceParameter("sigNorm","T1t415","lnN","1.10"); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); // int nCateg=66; //47 // vector<string> _categs(nCateg,""); // string srs[66]={ // "SR1A", "SR2A", "SR3A", "SR4A", "SR5A", "SR6A", "SR7A", "SR8A", // "SR9A", "SR10A", "SR11A", "SR12A", "SR13A", "SR14A", "SR15A", "SR16A", // "SR17A", "SR18A", "SR19A", "SR20A", "SR21A", "SR22A", "SR23A", "SR24A", // "SR25A", "SR26A", "SR27A", "SR28A", "SR29A", "SR30A", "SR31A", "SR32A", // "SR1B", "SR2B", "SR3B", "SR4B", "SR5B", "SR6B", "SR7B", "SR8B", // "SR9B", "SR10B", "SR11B", "SR12B", "SR13B", "SR14B", "SR15B", "SR16B", // "SR17B", "SR18B", "SR19B", "SR20B", "SR21B", "SR22B", "SR23B", "SR24B", // "SR25B","SR26B", // "SR1C", "SR2C", "SR3C", "SR4C", "SR5C", "SR6C", "SR7C", "SR8C" // } // _categs.assign(srs, srs+nCateg); // for(size_t ic=0;ic< _categs.size();ic++) { // string cat=_categs[ic]; md.makeSingleDataCard("ttW", "global_HHSR1", "selected", "ssdl2015_ttW"); // } gROOT->ProcessLine(".q"); }
void ssdlScan_BENCH() { md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="merged_2fb"; // not needed for statistics but provides the normalization string fileList="merged_2fb_T1tttt-MASS-"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=2160; //pb-1 19470 float energy=13; //TeV bool useXS=true; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; KFactors[ "_standard_prompt_ttW" ] = 1.0213; KFactors[ "_standard_prompt_ttZH" ] = 1.0213; KFactors[ "_standard_prompt_WWss" ] = 1.0213; KFactors[ "_standard_prompt_XG" ] = 1.0213; KFactors[ "_standard_prompt_Rares" ] = 1.0213; KFactors[ "T1tttt-MASS-" ] = 1.0213; // marco put this line here: // _standard_prompt_WZ: WZTo3LNu: 1.22*xsec ; FillColor=ROOT.kOrange, FakeRate="susy-multilepton/standard_sel.txt\,susy-multilepton/load_is_2_prompt_loop.txt", Label="WZ (prompt)", NormSystematic=0.3 KFactors[ "_standard_prompt_WZ" ] = 1.22; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== md.addDataCardSigSample("T1tttt-MASS-","T1tttt_BENCH"); md.addDataCardSample("WZTo3LNu" , "WZ" ); md.addDataCardSample("TTWToLNu" , "ttW" ); md.addDataCardSample("TTZToLLNuNu" , "ttHZ" ); md.addDataCardSample("TTLLJets_m1to10" , "ttHZ" ); md.addDataCardSample("TTHnobb" , "ttHZ" ); md.addDataCardSample("WpWpJJ" , "WW" ); md.addDataCardSample("TTGJets" , "XG" ); md.addDataCardSample("TGJets" , "XG" ); md.addDataCardSample("WGToLNuG" , "XG" ); md.addDataCardSample("ZGTo2LG" , "XG" ); md.addDataCardSample("WWDouble" , "rares" ); md.addDataCardSample("ZZTo4L" , "rares" ); md.addDataCardSample("tZq_ll" , "rares" ); md.addDataCardSample("GGHZZ4L" , "rares" ); md.addDataCardSample("VHToNonbb" , "rares" ); md.addDataCardSample("WWZ" , "rares" ); md.addDataCardSample("ZZZ" , "rares" ); md.addDataCardSample("WZZ" , "rares" ); md.addDataCardSample("TTTT" , "rares" ); md.addDataCardSample("DoubleEG_Run2015C_Oct05_runs_254231_254914" , "data" ); md.addDataCardSample("DoubleEG_Run2015D_Oct05_runs_256630_258158" , "data" ); md.addDataCardSample("DoubleEG_Run2015D_PromptV4_runs_258159_260627" , "data" ); md.addDataCardSample("DoubleMuon_Run2015C_Oct05_runs_254231_254914" , "data" ); md.addDataCardSample("DoubleMuon_Run2015D_Oct05_runs_256630_258158" , "data" ); md.addDataCardSample("DoubleMuon_Run2015D_PromptV4_runs_258159_260627" , "data" ); md.addDataCardSample("MuonEG_Run2015C_Oct05_runs_254231_254914" , "data" ); md.addDataCardSample("MuonEG_Run2015D_Oct05_runs_256630_258158" , "data" ); md.addDataCardSample("MuonEG_Run2015D_PromptV4_runs_258159_260627" , "data" ); md.addDataCardSample("mId:DYJetsToLL_M10to50" , "flip" ); md.addDataCardSample("mId:DYJetsToLL_M50" , "flip" ); //md.addDataCardSample("mId:TTWToLNu" , "flip", -1); //md.addDataCardSample("mId:TTZToLLNuNu" , "flip", -1); //md.addDataCardSample("mId:TTLLJets_m1to10" , "flip", -1); //md.addDataCardSample("mId:TTHnobb" , "flip", -1); //md.addDataCardSample("mId:WZTo3LNu" , "flip", -1); //md.addDataCardSample("mId:WpWpJJ" , "flip", -1); //md.addDataCardSample("mId:TTGJets" , "flip", -1); //md.addDataCardSample("mId:TGJets" , "flip", -1); //md.addDataCardSample("mId:WGToLNuG" , "flip", -1); //md.addDataCardSample("mId:ZGTo2LG" , "flip", -1); //md.addDataCardSample("mId:WWDouble" , "flip", -1); //md.addDataCardSample("mId:ZZTo4L" , "flip", -1); //md.addDataCardSample("mId:tZq_ll" , "flip", -1); //md.addDataCardSample("mId:GGHZZ4L" , "flip", -1); //md.addDataCardSample("mId:VHToNonbb" , "flip", -1); //md.addDataCardSample("mId:WWZ" , "flip", -1); //md.addDataCardSample("mId:ZZZ" , "flip", -1); //md.addDataCardSample("mId:WZZ" , "flip", -1); //md.addDataCardSample("mId:TTTT" , "flip", -1); md.addDataCardSample("data:Fake:DoubleEG_Run2015C_Oct05_runs_254231_254914" , "fake" ); md.addDataCardSample("data:Fake:DoubleEG_Run2015D_Oct05_runs_256630_258158" , "fake" ); md.addDataCardSample("data:Fake:DoubleEG_Run2015D_PromptV4_runs_258159_260627" , "fake" ); md.addDataCardSample("data:Fake:DoubleMuon_Run2015C_Oct05_runs_254231_254914" , "fake" ); md.addDataCardSample("data:Fake:DoubleMuon_Run2015D_Oct05_runs_256630_258158" , "fake" ); md.addDataCardSample("data:Fake:DoubleMuon_Run2015D_PromptV4_runs_258159_260627", "fake" ); md.addDataCardSample("data:Fake:MuonEG_Run2015C_Oct05_runs_254231_254914" , "fake" ); md.addDataCardSample("data:Fake:MuonEG_Run2015D_Oct05_runs_256630_258158" , "fake" ); md.addDataCardSample("data:Fake:MuonEG_Run2015D_PromptV4_runs_258159_260627" , "fake" ); //md.addDataCardSample("Fake:DYJetsToLL_M10to50" , "fake", -1); //md.addDataCardSample("Fake:DYJetsToLL_M50" , "fake", -1); md.addDataCardSample("Fake:TTWToLNu" , "fake", -1); md.addDataCardSample("Fake:TTZToLLNuNu" , "fake", -1); md.addDataCardSample("Fake:TTLLJets_m1to10" , "fake", -1); md.addDataCardSample("Fake:TTHnobb" , "fake", -1); md.addDataCardSample("Fake:WZTo3LNu" , "fake", -1); md.addDataCardSample("Fake:WpWpJJ" , "fake", -1); md.addDataCardSample("Fake:TTGJets" , "fake", -1); md.addDataCardSample("Fake:TGJets" , "fake", -1); md.addDataCardSample("Fake:WGToLNuG" , "fake", -1); md.addDataCardSample("Fake:ZGTo2LG" , "fake", -1); md.addDataCardSample("Fake:WWDouble" , "fake", -1); md.addDataCardSample("Fake:ZZTo4L" , "fake", -1); md.addDataCardSample("Fake:tZq_ll" , "fake", -1); md.addDataCardSample("Fake:GGHZZ4L" , "fake", -1); md.addDataCardSample("Fake:VHToNonbb" , "fake", -1); md.addDataCardSample("Fake:WWZ" , "fake", -1); md.addDataCardSample("Fake:ZZZ" , "fake", -1); md.addDataCardSample("Fake:WZZ" , "fake", -1); md.addDataCardSample("Fake:TTTT" , "fake", -1); //shape uncertainties md.addNuisanceParameter("JES","ttW:ttZH:WZ:WW:XG:rares:T1tttt_BENCH","shape",""); md.addNuisanceParameter("BTAG","ttW:ttZH:WZ:WW:XG:rares:T1tttt_BENCH","shape",""); md.addNuisanceParameter("tHTE","ttW:ttZH:WZ:WW:XG:rares:T1tttt_BENCH","shape",""); md.addNuisanceParameter("EWKFR","fake","shape",""); md.addNuisanceParameter("ttWAcc","ttW","shape",""); md.addNuisanceParameter("ttHZAcc","ttHZ","shape",""); md.addNuisanceParameter("BTAGFS","T1tttt_BENCH","shape",""); md.addNuisanceParameter("LepEffFS","T1tttt_BENCH","shape",""); md.addNuisanceParameter("ISR","T1tttt_BENCH","shape",""); md.addNuisanceParameter("QCDScale","T1tttt_BENCH","shape",""); //vector<string> cats( string cats[66]={ "HHSR1","HHSR2","HHSR3","HHSR4","HHSR5","HHSR6","HHSR7","HHSR8", "HHSR9","HHSR10","HHSR11","HHSR12","HHSR13","HHSR14","HHSR15","HHSR16", "HHSR17","HHSR18","HHSR19","HHSR20","HHSR21","HHSR22","HHSR23","HHSR24", "HHSR25","HHSR26","HHSR27","HHSR28","HHSR29","HHSR30","HHSR31","HHSR32", "HLSR1","HLSR2","HLSR3","HLSR4","HLSR5","HLSR6","HLSR7","HLSR8", "HLSR9","HLSR10","HLSR11","HLSR12","HLSR13","HLSR14","HLSR15","HLSR16", "HLSR17","HLSR18","HLSR19","HLSR20","HLSR21","HLSR22","HLSR23","HLSR24", "HLSR25","HLSR26", "LLSR1","LLSR2","LLSR3","LLSR4","LLSR5","LLSR6","LLSR7","LLSR8" }; //vector<string> dss; string dss[7]={"ttW","ttHZ","WZ","WW","XG","rares","T1tttt_BENCH"}; for(int isr=0;isr<66/*cats.size()*/;isr++) { md.addNuisanceParameter("pdfS"+cats[isr],"T1tttt_BENCH","shape",""); md.addNuisanceParameter("flip"+cats[isr]+"stat","flip","shape",""); md.addNuisanceParameter("fake"+cats[isr]+"stat","fake","shape",""); for(size_t id=0;id<7/*dss.size()*/;id++) { md.addNuisanceParameter(dss[id]+cats[isr]+"stat",dss[id],"shape",""); } } //Flat uncertanties ================================= //lumi md.addNuisanceParameter("lumi","ttW:ttHZ:WW:XG:rares:T1tttt_BENCH","lnN","1.046:1.046:1.046:1.046:1.046:1.046:1.046"); //md.addNuisanceParameter("lumi","ttW:ttHZ:WW:XG:rares:T1tttt_BENCH","lnN","1.12:1.12:1.12:1.12:1.12:1.12:1.12"); //experimental uncertainties md.addNuisanceParameter("lEff","ttW:ttHZ:WW:XG:rares:T1tttt_BENCH","lnN","1.04:1.04:1.04:1.04:1.04:1.04"); md.addNuisanceParameter("tEff","ttW:ttHZ:WW:XG:rares:T1tttt_BENCH","lnN","1.02:1.02:1.02:1.02:1.02:1.02"); //Data-driven methods md.addNuisanceParameter("chMID","flip","lnN","1.30"); md.addNuisanceParameter("fratio","fake","lnN","1.30"); //theoretical uncertainties md.addNuisanceParameter("wzTh","WZ","lnN","1.30"); md.addNuisanceParameter("WWTh","ttW","lnN","1.50"); md.addNuisanceParameter("TGTh","XG","lnN","1.50"); md.addNuisanceParameter("rareTh","rares","lnN","1.50"); md.addNuisanceParameter("ttWPdf","ttW","lnN","1.04"); md.addNuisanceParameter("ttHZPdf","ttHZ","lnN","1.04"); md.addNuisanceParameter("ttWXs","ttW","lnN","1.13"); md.addNuisanceParameter("ttHZXs","ttHZ","lnN","1.11"); md.addNuisanceParameter("fsHLT","T1tttt_BENCH","lnN","1.05"); //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); int ncategs=66; // vector<string> categs( string categs[66]={"global_HHSR1","global_HHSR2","global_HHSR3","global_HHSR4", "global_HHSR5","global_HHSR6","global_HHSR7","global_HHSR8", "global_HHSR9","global_HHSR10","global_HHSR11","global_HHSR12", "global_HHSR13","global_HHSR14","global_HHSR15","global_HHSR16", "global_HHSR17","global_HHSR18","global_HHSR19","global_HHSR20", "global_HHSR21","global_HHSR22","global_HHSR23","global_HHSR24", "global_HHSR25","global_HHSR26","global_HHSR27","global_HHSR28", "global_HHSR29","global_HHSR30","global_HHSR31","global_HHSR32", "global_HLSR1","global_HLSR2","global_HLSR3","global_HLSR4", "global_HLSR5","global_HLSR6","global_HLSR7","global_HLSR8", "global_HLSR9","global_HLSR10","global_HLSR11","global_HLSR12", "global_HLSR13","global_HLSR14","global_HLSR15","global_HLSR16", "global_HLSR17","global_HLSR18","global_HLSR19","global_HLSR20", "global_HLSR21","global_HLSR22","global_HLSR23","global_HLSR24", "global_HLSR25","global_HLSR26", "global_LLSR1","global_LLSR2","global_LLSR3","global_LLSR4", "global_LLSR5","global_LLSR6","global_LLSR7","global_LLSR8", }; vector<string> vcategs; for(int i=0;i<66;i++) { vcategs.push_back( categs[i] ); } //external uncertainties =================================== //vector<float> AccTTW float AccTTW[66]={ 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.03,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.03,0.08, 0.03,0.08,0.08,0.08,0.03,0.08,0.03,0.08, 0.08,0.08,0.03,0.08,0.03,0.08,0.03,0.08, 0.08,0.08, 0.08,0.08,0.08,0.08,0.08,0.08,0.08,0.08, }; //vector<float> AccTTHZ float AccTTHZ[66]={ 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.03,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.03,0.08, 0.03,0.08,0.08,0.08,0.03,0.08,0.03,0.08, 0.08,0.08,0.03,0.08,0.03,0.08,0.03,0.08, 0.08,0.08, 0.08,0.08,0.08,0.08,0.08,0.08,0.08,0.08, }; // vector<float> EWKFake({ // 0.10,0.06,0.10,0.03,0.09,0.10,0.05,0.10, // 0.09,0.11,0.11,0.09,0.09,0.02,0.10,0.10, // 0.20,0.03,0.10,0.05,0.05,0.10,0.10,0.10, // 0.10,0.10,0.10,0.10,0.10,0.10,0.10,0.10, // 0.03,0.01,0.10,0.02,0.01,0.10,0.02,0.01, // 0.01,0.01,0.01,0.01,0.02,0.01,0.10,0.10, // 0.01,0.10,0.10,0.10,0.10,0.10,0.10,0.10, // 0.10,0.10, // 0.10,0.01,0.10,0.10,0.10,0.10,0.10,0.10, // }); //vector<float> HLTEff float HLTEff[66]={ 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0,0.02, 0,0.02,0.02,0.02,0,0.02,0,0.02, 0.02,0.02,0,0.02,0,0.02,0,0.02, 0.02,0.02, 0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02 }; // int nCateg=66; //47 // vector<string> _categs(nCateg,""); //qcd scale for signal TFile* iQCDFile=new TFile("/shome/cheidegg/t/runScanStuff/step5/QCDScales/scaleUnc-MASS-.root","read"); TH1F* hQCDUp=(TH1F*)iQCDFile->Get("-MASS-ScaleUp"); TH1F* hQCDDown=(TH1F*)iQCDFile->Get("-MASS-ScaleDown"); for(size_t ic=0;ic<66/*categs.size()*/;ic++) { for(int isr=0;isr<66/*cats.size()*/;isr++) { if(categs[ic].substr(7, categs[ic].size()-7)==cats[isr]) md.addExternalSystUnc("T1tttt_BENCH","pdfS"+cats[isr],0.1, -0.1, categs[ic], "selected"); else md.addExternalSystUnc("T1tttt_BENCH","pdfS"+cats[isr],0., 0., categs[ic], "selected"); } md.addExternalSystUnc("T1tttt_BENCH","QCDScale",hQCDUp->GetBinContent(ic+1), hQCDDown->GetBinContent(ic+1), categs[ic], "selected"); //md.addExternalSystUnc("fake","frEwk",EWKFake[ic], -1*EWKFake[ic], categs[ic], "selected"); md.addExternalSystUnc("ttW","ttWAcc",AccTTW[ic], -1*AccTTW[ic], categs[ic], "selected"); md.addExternalSystUnc("ttHZ","ttHZAcc",AccTTHZ[ic], -1*AccTTHZ[ic], categs[ic], "selected"); for(size_t id=0;id<7/*dss.size()*/;id++) { md.addExternalSystUnc(dss[id],"tHTE",HLTEff[ic], -1*HLTEff[ic], categs[ic], "selected"); } } md.makeMultiDataCard("T1tttt_BENCH", vcategs, "selected", "ssdlScan_2fb_T1tttt_BENCH"); gROOT->ProcessLine(".q"); }
void ssdl2015BTag(){ md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="ssdl2fb_oct"; string fileList="ssdl2fb_oct"; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //} //observables ********************** md.dp.setObservables("MET"); //Binning & title ************************* Binning & titre string yTitle="number of events"; int binning=1; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; double rangeX[2]={0,200}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=true; bool mcStatSyst=false; string systSources=""; bool uncDet=true; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=1280; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //control categories ============================== //md.anConf.setControlCategs("Fake"); //=============================================================== md.anConf.addSample( "_sig_T1t_1200_800", "T14t12", kOrange-2); md.anConf.addSample( "_sig_T1t_1500_100","T14t15", kOrange-2); md.anConf.addSample( "_sig_T5Deg","T54qDeg", kOrange-2); md.anConf.addSample( "_sig_T5q","T54q12", kOrange-2); md.anConf.addSample( "_sig_T5t", "T54q12", kOrange-2); md.anConf.addSample( "_sig_T6_600_425","T6ttWW60", kOrange-2); md.anConf.addSample( "_sig_T6_650_150","T6ttWW65", kOrange-2); md.anConf.addSample( "_standard_prompt_Rares","rare", kOrange-2); md.anConf.addSample( "_standard_prompt_WWss", "WW++", kOrange-2); md.anConf.addSample( "_standard_prompt_WZ","WZ",kOrange-2); md.anConf.addSample( "_standard_prompt_XG", "XG", kOrange-2); md.anConf.addSample( "_standard_prompt_ttW", "TTW", kOrange-2); md.anConf.addSample( "_standard_prompt_ttZH", "TTZH", kOrange-2); //=============================================================== //*********************************************************************² //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); //md.doPlot(); //md.getStatistics("nominal"); //md.addExternalSystUnc("rare","btag",30,-30); md.getCategSystematic("BTag","HH","selected"); md.getCategSystematic("BTag","HL","selected"); md.getCategSystematic("BTag","LL","selected"); gROOT->ProcessLine(".q"); //md.drawStatistics("global_BR00H", "selected"); //md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); }
// template plot producer for WZ validation plots, called by Sub_SynchroPlots850_WZ25.sh //string today = "150910"; void template_plotsWZv2_25ns(std::string var,std::string fileName){ gStyle->SetOptStat(0); md.refresh(); //general parameters ********************* general parameters string dir="WZsynchro"; //string fileName="template_WZ25"; //string fileList="template_WZ25"; string fileList=fileName; bool mcOnly = false; //observables ********************** md.dp.setObservables(var); md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Binning & title ************************* Binning & title string yTitle="number of events"; int binning=40; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0 , 0}; double rangeX[2]={0., 500.}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; if (var.find("miniRelIso") != std::string::npos && (var.find("ttbar") != std::string::npos || var.find("ZMuMu") != std::string::npos || var.find("ZEE") != std::string::npos) ) { logYScale = true; } /*if (var.find("M3l") != std::string::npos){ logYScale = true; rangeY[0]={0.1}; rangeY[1]={100000.}; }*/ bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=false; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; string autoBinFile="WZ50binning"; md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=false; bool mcStatSyst=false; string systSources=""; bool uncDet=false; //Lumis( or XSections ) pb-1 & KFactors ************************************ string Norm=""; float lumi=832.31; //pb-1 19470 // runs float energy=13; //TeV bool useXS=true; map<string,float> LumisXS; map<string,float> KFactors; md.anConf.loadXSDB("XSectionsSpring15.db"); //md.anConf.loadKFDB("kFactorsSpring15.db"); md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== //md.anConf.addSample( "WZTo3LNu" , "WZp8" , kGreen+3); /* md.anConf.addSample( "WZTo3LNu" , "WZ" , kGreen+3); md.anConf.addSample( "DYJetsToLL_M10to50" , "DY" , kCyan ); md.anConf.addSample( "DYJetsToLL_M50" , "DY" , kCyan ); md.anConf.addSample( "TBar_tWch" , "Single top" , kGray+2); md.anConf.addSample( "T_tWch" , "Single top" , kGray+2); md.anConf.addSample( "TToLeptons_tch" , "Single top" , kGray+2); md.anConf.addSample( "TbarToLeptons_tch" , "Single top" , kGray+2); md.anConf.addSample( "TToLeptons_sch_amcatnlo" , "Single top" , kGray+2); md.anConf.addSample( "WJetsToLNu" , "W+jets" , kCyan+2); md.anConf.addSample( "WWTo2L2Nu" , "WW" , kSpring+10); md.anConf.addSample( "ZZTo4L" , "ZZ" , kViolet-5); md.anConf.addSample( "GGHZZ4L" , "ZZ" , kViolet-5); md.anConf.addSample( "TTJets" , "t#bar{t}" , kRed ); md.anConf.addSample( "TTLLJets_m1to10" , "t#bar{t}" , kRed ); md.anConf.addSample( "TTWToLNu" , "t#bar{t}W" , kMagenta-10); md.anConf.addSample( "TTZToLLNuNu" , "t#bar{t}Z" , kBlue ); md.anConf.addSample( "TTHnobb" , "t#bar{t}H" , kOrange+3 ); md.anConf.addSample( "TTGJets" , "t#bar{t}#gamma" , kOrange-1 ); */ md.anConf.addSample( "Tree_WZ_0" , "WZ" , kGreen+3); md.anConf.addSample("Tree_DYJetsToLL_M10to50_0", "DY" , kCyan ); md.anConf.addSample( "Tree_DYJetsToLL_M50_0" , "DY" , kCyan ); md.anConf.addSample( "Tree_DYJetsToLL_M50_1" , "DY" , kCyan ); md.anConf.addSample( "Tree_DYJetsToLL_M50_2" , "DY" , kCyan ); md.anConf.addSample( "Tree_TbarW_0" , "Single top" , kGray+2); md.anConf.addSample( "Tree_TW_0" , "Single top" , kGray+2); md.anConf.addSample( "Tree_WJetsToLNu_0" , "W+jets" , kCyan+2); //md.anConf.addSample( "Tree_WWTo2L2Nu_0" , "WW" , kSpring+10); md.anConf.addSample( "Tree_WW_0" , "WW" , kSpring+10); md.anConf.addSample( "Tree_ZZ_0" , "ZZ" , kViolet-5); md.anConf.addSample( "Tree_TTJets_0" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_1" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_2" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_3" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_4" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_5" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTJets_6" , "t#bar{t}" , kRed ); //md.anConf.addSample( "Tree_TTLep_pow_0" , "t#bar{t}" , kRed ); //md.anConf.addSample( "Tree_TTLep_pow_1" , "t#bar{t}" , kRed ); md.anConf.addSample( "Tree_TTWToLNu_0" , "t#bar{t}W" , kMagenta-10); md.anConf.addSample( "Tree_TTWToQQ_0" , "t#bar{t}W" , kMagenta-10); md.anConf.addSample( "Tree_TTZToQQ_0" , "t#bar{t}Z" , kBlue ); // the order MATTERS!!! md.anConf.addSample( "Tree_DoubleEG_Run2015D_05Oct_0" , "data", kBlack); md.anConf.addSample( "Tree_DoubleEG_Run2015D_v4_0" , "data", kBlack); md.anConf.addSample( "Tree_DoubleMuon_Run2015D_05Oct_0" , "data", kBlack); md.anConf.addSample( "Tree_DoubleMuon_Run2015D_v4_0" , "data", kBlack); md.anConf.addSample( "Tree_MuonEG_Run2015D_05Oct_0" , "data", kBlack); md.anConf.addSample( "Tree_MuonEG_Run2015D_v4_0" , "data", kBlack); // //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //Configuration ================ //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); md.doPlot(); //md.getStatistics("global"); md.savePlot(dir); //gROOT->ProcessLine(".q"); }
void susy3l_datacard() { md.refresh(); //general parameters ********************* general parameters string dir="SUSY3L"; string fileName="limits_160126_OnAndOffZ"; // not needed for statistics but provides the normalization string fileList="limits_160126_OnAndOffZ"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=2260; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; md.anConf.loadKFDB("kFactorsSpring15.db"); //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== string signal = "T1t4_1200"; md.addDataCardSigSample("T1tttt_mGo1200_mChi800", signal); //string signal = "T1t4_1500"; md.addDataCardSigSample("T1tttt_mGo1500_mChi100", signal); //string signal = "T54q_deg"; md.addDataCardSigSample("T5ttttDeg_mGo1000_mStop300_mCh285_mChi280", signal); //string signal = "T6t2W2_600"; md.addDataCardSigSample("T6ttWW_mSbot600_mCh425_mChi50", signal); //string signal = "T6t2W2_650"; md.addDataCardSigSample("T6ttWW_mSbot650_mCh150_mChi50", signal); //string signal = "T54qWZ_315"; md.addDataCardSigSample("T5qqqqWZDeg_mGo1000_mCh315_mChi300_dilep", signal); //string signal = "T54qWZ_325"; md.addDataCardSigSample("T5qqqqWZDeg_mGo1000_mCh325_mChi300_dilep", signal); //string signal = "T54qWZ_800"; md.addDataCardSigSample("T5qqqqWZ_mGo1500_mCh800_mChi100_lep", signal); //string signal = "T54qWZ_1000"; md.addDataCardSigSample("T5qqqqWZ_mGo1200_mCh1000_mChi800_lep", signal); md.addDataCardSample("GGHZZ4L", "rare"); md.addDataCardSample("VHToNonbb", "rare"); md.addDataCardSample("ZZTo4L", "rare"); md.addDataCardSample("WWZ", "rare"); md.addDataCardSample("WZZ","rare"); md.addDataCardSample("ZZZ", "rare"); md.addDataCardSample("TTTT", "rare"); md.addDataCardSample("tZq_ll", "rare"); md.addDataCardSample("WZTo3LNu","WZ"); md.addDataCardSample("TGJets", "XG"); md.addDataCardSample("TTGJets", "XG"); md.addDataCardSample("WGToLNuG", "XG"); md.addDataCardSample("ZGTo2LG", "XG"); md.addDataCardSample("TTZToLLNuNu","ttZH"); md.addDataCardSample("TTHnobb", "ttZH"); md.addDataCardSample("TTLLJets_m1to10", "ttZH"); md.addDataCardSample("TTWToLNu", "ttW"); md.addDataCardSample("TT_pow", "fake"); md.addDataCardSample("DYJetsToLL_M50", "fake"); md.addDataCardSample("DYJetsToLL_M10to50", "fake"); md.addDataCardSample("TbarToLeptons_tch", "fake"); md.addDataCardSample("TBar_tWch", "fake"); md.addDataCardSample("TToLeptons_sch_amcatnlo", "fake"); md.addDataCardSample("TToLeptons_tch", "fake"); md.addDataCardSample("T_tWch", "fake"); md.addDataCardSample("WJetsToLNu", "fake"); //md.addDataCardSample("data","data"); //shape uncertainties string nuis = "rare:WZ:XG:ttZH:ttW:fake:"; nuis += signal; md.addNuisanceParameter("JES",nuis,"shape",""); /*md.addNuisanceParameter("BTAG","ttW:ttZH:WZ:WW:XG:rares:T1ttttBENCH","shape",""); md.addNuisanceParameter("tHTE","ttW:ttZH:WZ:WW:XG:rares:T1ttttBENCH","shape",""); md.addNuisanceParameter("Ewk","fake","shape",""); md.addNuisanceParameter("ttWAcc","ttW","shape",""); md.addNuisanceParameter("ttHZAcc","ttHZ","shape",""); md.addNuisanceParameter("BTAGFS","T1ttttBENCH","shape",""); md.addNuisanceParameter("LepEffFS","T1ttttBENCH","shape",""); md.addNuisanceParameter("ISR","T1ttttBENCH","shape",""); md.addNuisanceParameter("QCDScale","T1ttttBENCH","shape",""); */ //vector<string> cats( string cats[30]={ "OnZSR001","OnZSR002", "OnZSR003", "OnZSR004", "OnZSR005", "OnZSR006", "OnZSR007", "OnZSR008", "OnZSR009", "OnZSR010", "OnZSR011", "OnZSR012", "OnZSR013", "OnZSR014", "OnZSR015", "OffZSR001","OffZSR002", "OffZSR003", "OffZSR004", "OffZSR005", "OffZSR006", "OffZSR007", "OffZSR008", "OffZSR009", "OffZSR010", "OffZSR011", "OffZSR012", "OffZSR013", "OffZSR014", "OffZSR015" }; //vector<string> dss; string dss[7]={"rare","WZ","XG","ttZH","ttW","fake",signal}; //for(int isr=0;isr<66/*cats.size()*/;isr++) { // md.addNuisanceParameter("pdfS"+cats[isr],"T1ttttBENCH","shape",""); //md.addNuisanceParameter("flip"+cats[isr]+"stat","flip","shape",""); //md.addNuisanceParameter("fake"+cats[isr]+"stat","fake","shape",""); //for(size_t id=0;id<7/*dss.size()*/;id++) { // md.addNuisanceParameter(dss[id]+cats[isr]+"stat",dss[id],"shape",""); //} //} /* //Flat uncertanties ================================= //lumi md.addNuisanceParameter("lumi","ttW:ttHZ:WW:XG:rares:T1ttttBENCH","lnN","1.046:1.046:1.046:1.046:1.046:1.046:1.046"); //md.addNuisanceParameter("lumi","ttW:ttHZ:WW:XG:rares:T1ttttBENCH","lnN","1.12:1.12:1.12:1.12:1.12:1.12:1.12"); //experimental uncertainties md.addNuisanceParameter("lEff","ttW:ttHZ:WW:XG:rares:T1ttttBENCH","lnN","1.04:1.04:1.04:1.04:1.04:1.04"); md.addNuisanceParameter("tEff","ttW:ttHZ:WW:XG:rares:T1ttttBENCH","lnN","1.02:1.02:1.02:1.02:1.02:1.02"); //Data-driven methods md.addNuisanceParameter("chMID","flip","lnN","1.30"); md.addNuisanceParameter("fratio","fake","lnN","1.30"); //theoretical uncertainties md.addNuisanceParameter("wzTh","WZ","lnN","1.30"); md.addNuisanceParameter("WWTh","ttW","lnN","1.50"); md.addNuisanceParameter("TGTh","XG","lnN","1.50"); md.addNuisanceParameter("rareTh","rares","lnN","1.50"); md.addNuisanceParameter("ttWPdf","ttW","lnN","1.04"); md.addNuisanceParameter("ttHZPdf","ttHZ","lnN","1.04"); md.addNuisanceParameter("ttWXs","ttW","lnN","1.13"); md.addNuisanceParameter("ttHZXs","ttHZ","lnN","1.11"); md.addNuisanceParameter("fsHLT","T1ttttBENCH","lnN","1.05"); */ md.addNuisanceParameter("fakeUnc","fake","lnN","1.30"); md.addNuisanceParameter("sigUnc",signal,"lnN","1.10"); md.addNuisanceParameter("promptUnc","rare:WZ:XG:ttZH:ttW","lnN","1.20:1.20:1.20:1.20:1.20"); //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); int ncategs=30; // vector<string> categs( string categs[30]={"global_OnZSR001","global_OnZSR002","global_OnZSR003","global_OnZSR004", "global_OnZSR005","global_OnZSR006","global_OnZSR007","global_OnZSR008","global_OnZSR009", "global_OnZSR010","global_OnZSR011","global_OnZSR012","global_OnZSR013","global_OnZSR014","global_OnZSR015", "global_OffZSR001","global_OffZSR002","global_OffZSR003","global_OffZSR004", "global_OffZSR005","global_OffZSR006","global_OffZSR007","global_OffZSR008","global_OffZSR009", "global_OffZSR010","global_OffZSR011","global_OffZSR012","global_OffZSR013","global_OffZSR014","global_OffZSR015" }; vector<string> vcategs; for(int i=0;i<30;i++) { vcategs.push_back( categs[i] ); } /* //external uncertainties =================================== //vector<float> AccTTW float AccTTW[66]={ 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.03,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.03,0.08, 0.03,0.08,0.08,0.08,0.03,0.08,0.03,0.08, 0.08,0.08,0.03,0.08,0.03,0.08,0.03,0.08, 0.08,0.08, 0.08,0.08,0.08,0.08,0.08,0.08,0.08,0.08, }; //vector<float> AccTTHZ float AccTTHZ[66]={ 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.03,0.08,0.08,0.08, 0.03,0.08,0.03,0.08,0.08,0.08,0.03,0.08, 0.03,0.08,0.08,0.08,0.03,0.08,0.03,0.08, 0.08,0.08,0.03,0.08,0.03,0.08,0.03,0.08, 0.08,0.08, 0.08,0.08,0.08,0.08,0.08,0.08,0.08,0.08, }; // vector<float> EWKFake({ // 0.10,0.06,0.10,0.03,0.09,0.10,0.05,0.10, // 0.09,0.11,0.11,0.09,0.09,0.02,0.10,0.10, // 0.20,0.03,0.10,0.05,0.05,0.10,0.10,0.10, // 0.10,0.10,0.10,0.10,0.10,0.10,0.10,0.10, // 0.03,0.01,0.10,0.02,0.01,0.10,0.02,0.01, // 0.01,0.01,0.01,0.01,0.02,0.01,0.10,0.10, // 0.01,0.10,0.10,0.10,0.10,0.10,0.10,0.10, // 0.10,0.10, // 0.10,0.01,0.10,0.10,0.10,0.10,0.10,0.10, // }); //vector<float> HLTEff float HLTEff[66]={ 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0.02,0.02, 0,0.02,0,0.02,0,0.02,0.02,0.02, 0,0.02,0,0.02,0.02,0.02,0,0.02, 0,0.02,0.02,0.02,0,0.02,0,0.02, 0.02,0.02,0,0.02,0,0.02,0,0.02, 0.02,0.02, 0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02 }; // int nCateg=66; //47 // vector<string> _categs(nCateg,""); //qcd scale for signal TFile* iQCDFile=new TFile("/shome/mmarionn/MPAF/workdir/QCDScales/scaleUncMASS-.root","read"); TH1F* hQCDUp=(TH1F*)iQCDFile->Get("MASS-ScaleUp"); TH1F* hQCDDown=(TH1F*)iQCDFile->Get("MASS-ScaleDown"); */ //for(size_t ic=0;ic<66/*categs.size()*/;ic++) { // for(int isr=0;isr<66/*cats.size()*/;isr++) { // if(categs[ic].substr(7, categs[ic].size()-7)==cats[isr]) // md.addExternalSystUnc("T1ttttBENCH","pdfS"+cats[isr],0.1, -0.1, categs[ic], "selected"); // else //md.addExternalSystUnc("T1ttttBENCH","pdfS"+cats[isr],0., 0., categs[ic], "selected"); //} //md.addExternalSystUnc("T1ttttBENCH","QCDScale",hQCDUp->GetBinContent(ic+1), hQCDDown->GetBinContent(ic+1), categs[ic], "selected"); //md.addExternalSystUnc("fake","frEwk",EWKFake[ic], -1*EWKFake[ic], categs[ic], "selected"); //md.addExternalSystUnc("ttW","ttWAcc",AccTTW[ic], -1*AccTTW[ic], categs[ic], "selected"); //md.addExternalSystUnc("ttHZ","ttHZAcc",AccTTHZ[ic], -1*AccTTHZ[ic], categs[ic], "selected"); //for(size_t id=0;id<7/*dss.size()*/;id++) { // md.addExternalSystUnc(dss[id],"tHTE",HLTEff[ic], -1*HLTEff[ic], categs[ic], "selected"); //} //} for(size_t ic=0;ic<30;ic++) { for(size_t id=0;id<7;id++) { md.addExternalSystUnc(dss[id],"JES",0.05,-0.05,vcategs[ic],"selected"); } } md.makeMultiDataCard(signal, vcategs, "selected", signal); md.getStatistics("global"); gROOT->ProcessLine(".q"); }
void susy3l_tt_closure() { md.refresh(); //general parameters ********************* general parameters string dir="SUSY3L"; string fileName="ttbar_closure_MuEl_qcd_Powheg_newPU"; //was treeName in LUNE susy_cut_lowpt string fileList="ttbar_closure_MuEl_qcd_Powheg_newPU"; //CH: since AnaConfig needs a fileName to open, we need to put the data files into a different variable string hName=""; bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList );//, hName ); md.anConf.configureData(false, 0, mcOnly); //} string sigs = "none"; bool data = false; bool manual = false; string region = "OffZBaseline"; if(!manual){string obs = "VARIABLE" ;} //njets, nbjets, met, ht, lep, zpeak, zpt, mt, pt1, pt2, pt3, mll else{string obs = "njets";} //Binning & title ************************* Binning & titre string yTitle="number of events"; //int binning=1; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; bool logYScale=true; //double rangeX[2]={0,7}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; if(obs == "njets"){ md.dp.setObservables("NJets" + region); int binning=1; double rangeX[2]={2,10}; //bool logYScale=true; } if(obs == "nbjets"){ md.dp.setObservables("NBJets" + region); int binning=1; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "met"){ md.dp.setObservables("MET" + region); int binning=50; double rangeX[2]={0,500}; //bool logYScale=true; } if(obs == "ht"){ md.dp.setObservables("HT" + region); int binning=60; double rangeX[2]={0,1000}; //bool logYScale=true; } if(obs == "pt1"){ md.dp.setObservables("pt_1st_lepton" + region); int binning=10; double rangeX[2]={0,200}; //bool logYScale=true; } if(obs == "pt2"){ md.dp.setObservables("pt_2nd_lepton" + region); int binning=10; double rangeX[2]={0,150}; //bool logYScale=true; } if(obs == "pt3"){ md.dp.setObservables("pt_3rd_lepton" + region); int binning=10; double rangeX[2]={0,100}; //bool logYScale=true; } if(obs == "ftype"){ md.dp.setObservables("fake_type" + region); int binning=1; double rangeX[2]={0,5}; //bool logYScale=true; } if(obs == "flavor"){ md.dp.setObservables("flavor" + region); int binning=1; double rangeX[2]={0,4}; //bool logYScale=true; } if(obs == "srs"){ md.dp.setObservables("SRS" + region); int binning=1; double rangeX[2]={1,16}; //bool logYScale=true; } if(obs == "mu_multi"){ md.dp.setObservables("mu_multiplicity" + region); int binning=1; double rangeX[2]={0,6}; //bool logYScale=true; } if(obs == "el_multi"){ md.dp.setObservables("el_multiplicity" + region); int binning=1; double rangeX[2]={0,6}; //bool logYScale=true; } if(obs == "lep_multi"){ md.dp.setObservables("lep_multiplicity" + region); int binning=1; double rangeX[2]={0,6}; //bool logYScale=true; } //string autoBinFile="susybinninghigh"; //md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=true; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=3000; //pb-1 19470 float energy=13; //TeV bool useXS=true; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; md.anConf.loadKFDB("kFactorsSpring15.db"); //via XSect map<string,float> KFactors; // if( md.isInitStatus() ) md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== // SDYJetsM50_HT600toInf_PU_S14_POSTLS170_skimamples ************************** samples //if( md.isInitStatus() ) { //TTV // md.anConf.addSample( "TTWToLNu" , "ttW" , kYellow ); // md.anConf.addSample( "TTZToLLNuNu" , "ttZ" , kBlue ); //di-boson // md.anConf.addSample( "WZTo3LNu" , "WZ" , kGreen ); // md.anConf.addSample( "ZZTo4L" , "ZZ" , kGreen+3 ); //VVV // md.anConf.addSample( "WWZ" , "VVV" , kGreen+4 ); // md.anConf.addSample( "WZZ" , "VVV" , kGreen+4 ); // md.anConf.addSample( "ZZZ" , "VVV" , kGreen+4 ); //rare // md.anConf.addSample( "GGHZZ4L" , "rare SM" , kCyan ); // md.anConf.addSample( "TTHnobb" , "rare SM" , kCyan ); // md.anConf.addSample( "VHToNonbb" , "rare SM" , kCyan ); // md.anConf.addSample( "WGToLNuG" , "rare SM" , kCyan ); // md.anConf.addSample( "WpWpJJ" , "rare SM" , kCyan ); // md.anConf.addSample( "WWDouble" , "rare SM" , kCyan ); // md.anConf.addSample( "WWTo2L2Nu" , "rare SM" , kCyan ); //md.anConf.addSample( "ZGTo2LG" , "rare SM" , kCyan ); //top production // md.anConf.addSample( "TbarToLeptons_tch" , "single t" , kRed+3 ); // md.anConf.addSample( "TBar_tWch" , "single t" , kRed+3 ); // md.anConf.addSample( "T_tWch" , "single t" , kRed+3 ); // md.anConf.addSample( "TToLeptons_sch_amcatnlo" , "single t" , kRed+3 ); // md.anConf.addSample( "TToLeptons_tch" , "single t" , kRed+3 ); // md.anConf.addSample( "TGJets" , "single t" , kRed+3 ); //md.anConf.addSample( "tZqll" , "single t" , kRed+3 ); // md.anConf.addSample( "TTJets" , "TT" , kRed+2 ); // md.anConf.addSample( "TTGJets" , "TT" , kRed+2 ); // md.anConf.addSample( "TTLLJets_m1to10" , "TT" , kRed+2 ); // md.anConf.addSample( "TTTT" , "TT" , kRed+2 ); md.anConf.addSample( "TT_pow" , "TT" , kRed-6 ); md.anConf.addSample( "_Fake:TT_pow" , "predicted sig" , kBlack ); // md.anConf.addSample( "TTJets_DiLepton" , "TT" , kRed-6 ); // md.anConf.addSample( "Fake:TTJets_DiLepton" , "predicted sig" , kBlack ); //W+Jets // md.anConf.addSample( "WJetsToLNu" , "WJets" , kRed-6 ); //Drell-Yan // md.anConf.addSample( "DYJetsToLL_M10to50" , "DY" , kRed ); // md.anConf.addSample( "DYJetsToLL_M50" , "DY" , kRed ); //signal //if(sigs=="t"){ //md.anConf.addSample( "T1tttt_mGo1200_mChi800" , "T1t412 sig" , kBlue-3 ); //md.anConf.addSample( "T1tttt_mGo1500_mChi100" , "T1t415 sig" , kBlue-7 ); //md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280" , "T5t410 sig" , kOrange+10 ); //} if(sigs=="q"){ md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4WZ315 sig" , kGreen+2 ); md.anConf.addSample( "T5qqqqWZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4WZ325 sig" , kMagenta ); md.anConf.addSample( "T5qqqqWZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4WZ12 sig" , kRed-6 ); md.anConf.addSample( "T5qqqqWZ_mGo1500_mCh800_mChi100_dilep" , "T5q4WZ15 sig" , kRed+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh315_mChi300_dilep" , "T5q4ZZ315 sig" , kGreen+3 ); md.anConf.addSample( "T5qqqqZZDeg_mGo1000_mCh325_mChi300_dilep" , "T5q4ZZ325 sig" , kMagenta+2 ); md.anConf.addSample( "T5qqqqZZ_mGo1200_mCh1000_mChi800_dilep" , "T5q4ZZ12 sig" , kRed-9 ); md.anConf.addSample( "T5qqqqZZ_mGo1500_mCh800_mChi100_dilep" , "T5q4ZZ15 sig" , kRed+1 ); } //data if(data){ md.anConf.addSample( "DoubleEG_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "DoubleEG_Run2015D_v3_runs_257600_258158" , "data" , kBlack ); md.anConf.addSample( "DoubleEG_Run2015D_v4_runs_258159_258714_excl" , "data" , kBlack ); md.anConf.addSample( "DoubleEG_Run2015D_v4_runs_258211_258750" , "data" , kBlack ); md.anConf.addSample( "DoubleMuon_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "DoubleMuon_Run2015D_v3_runs_257600_258158" , "data" , kBlack ); md.anConf.addSample( "DoubleMuon_Run2015D_v4_runs_258159_258714_excl" , "data" , kBlack ); md.anConf.addSample( "DoubleMuon_Run2015D_v4_runs_258211_258750" , "data" , kBlack ); md.anConf.addSample( "MuonEG_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "MuonEG_Run2015D_v3_runs_257600_258158" , "data" , kBlack ); md.anConf.addSample( "MuonEG_Run2015D_v4_runs_258159_258714_excl" , "data" , kBlack ); md.anConf.addSample( "MuonEG_Run2015D_v4_runs_258211_258750" , "data" , kBlack ); md.anConf.addSample( "SingleElectron_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "SingleElectron_Run2015D_v3_runs_257600_258158" , "data" , kBlack ); md.anConf.addSample( "SingleElectron_Run2015D_v4_runs_258159_258714_excl" , "data" , kBlack ); md.anConf.addSample( "SingleElectron_Run2015D_v4_runs_258211_258750" , "data" , kBlack ); md.anConf.addSample( "SingleMuon_Run2015D_v3_runs_256630_257599" , "data" , kBlack ); md.anConf.addSample( "SingleMuon_Run2015D_v3_runs_257600_258158" , "data" , kBlack ); md.anConf.addSample( "SingleMuon_Run2015D_v4_runs_258159_258714_excl" , "data" , kBlack ); md.anConf.addSample( "SingleMuon_Run2015D_v4_runs_258211_258750" , "data" , kBlack ); } // md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280_skim" , "T5tttt (1000) * 20 sig" , kOrange-3 ); //md.anConf.addSample( "T5ttttDeg_mGo1300_mStop300_mCh285_mChi280_skim" , "T5tttt (1300) #cdot 20 sig" , kOrange+6 ); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //Configuration ================ //if( md.isInitStatus() ) { //md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); // } //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); md.doPlot(); //md.doStatisticsPlot(); md.savePlot("SUSY3L"); // md.dp.addText(xt,yt,st,addText); if(!manual) gROOT->ProcessLine(".q"); }
void comissioning() { md.refresh(); //general parameters ********************* general parameters string dir="Comissioning"; string fileName="comissioning"; // not needed for statistics but provides the normalization string fileList="comissioning"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); md.dp.setObservables("CCMassSS"); //Binning & title ************************* Binning & titre string yTitle="number of events"; int binning=0; int addBinBkg=1; //BinB = binning*AddBin double rangeY[2]={0,0}; double rangeX[2]={60,120}; int xDiv[3]={8,6,0}; int yDiv[3]={6,6,0}; //Nlabel / sous-Div /ssdiv bool logYScale=false; bool overFlowBin=true; bool underFlowBin=false; bool showDMCRatio=true; bool showGrid=false; float markerSize=0.8; float lineWidth=2; bool summedSignal=false; bool stacking=true; bool cmsPrel=true; float xt=0.68; float yt=0.48; float st=0.039; string addText=""; // string autoBinFile="chargeFlip"; // md.dp.loadAutoBinning(autoBinFile); //Systematic uncertainties ******************************** bool addSystematics=false; bool mcStatSyst=true; string systSources=""; bool uncDet=false; string Norm=""; //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=673; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); //md.anConf.loadKFDB("kFactorsPhys14.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== // md.anConf.addSample( "WWTo2L2Nu_50ns", "VV", kRed+1); //md.anConf.addSample( "WZp8_50ns", "VV", kRed+1); // md.anConf.addSample( "ZZp8_50ns", "VV", kRed+1); // md.anConf.addSample( "TToLeptons_tch_50ns", "single-top", kViolet-3); // md.anConf.addSample( "T_tWch_50ns", "single-top", kViolet-3); md.anConf.addSample( "TT_pow", "t#bar{t}", kMagenta+3); // md.anConf.addSample( "WJetsToLNu_50ns", "W+jets", kOrange+7); // md.anConf.addSample( "DYJetsToLL_M10to50_50ns", "Z/#gamma*", kOrange-2); md.anConf.addSample( "DYJetsToLL_M50", "Z/#gamma*", kOrange-2); // md.anConf.addSample( "DoubleEG_Run2015B_17Jul2015_runs_251244_251562", "data", kBlack); //md.anConf.addSample( "DoubleEG_Run2015D_v3_runs_256630_257599", "data", kBlack); //md.anConf.addSample( "DoubleMuon_Run2015B_17Jul2015_runs_251244_251562", "data", kBlack); // md.anConf.addSample( "DoubleMuon_Run2015B_v1_runs_251643_251883", "data", kBlack); // md.anConf.addSample( "SingleElectron_Run2015B_17Jul2015_runs_251244_251562", "data", kBlack); // md.anConf.addSample( "SingleElectron_Run2015B_v1_runs_251643_251883", "data", kBlack); // md.anConf.addSample( "SingleMuon_Run2015B_17Jul2015_runs_251244_251562", "data", kBlack); // md.anConf.addSample( "SingleMuon_Run2015B_v1_runs_251643_251883", "data", kBlack); md.anConf.addSample( "DoubleEG_Run2015D_v3_run_256926", "data", kBlack); md.anConf.addSample( "DoubleEG_Run2015D_v3_runs_257600_258158", "data", kBlack); md.anConf.addSample( "DoubleEG_Run2015D_v4_runs_258159_258714", "data", kBlack); //md.anConf.addSample( "DoubleEG_Run2015D_256926_258714", "data", kBlack); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.dp.setNormalization( Norm ); md.dp.configureDisplay(yTitle, rangeY, rangeX, logYScale, xDiv, yDiv, binning, addBinBkg, overFlowBin, underFlowBin, showDMCRatio, showGrid, stacking, addSystematics, mcStatSyst, markerSize, lineWidth,summedSignal, mcOnly,cmsPrel, uncDet); md.prepareDisplay(); //md.producePlots("chargeFlipControl800"); md.doPlot(); //md.makeSingleDataCard("sig", "global_SR1A", "weigthing", "test"); //gROOT->ProcessLine(".q"); }
void dataCardProd_CATTAG_SIGTAG_LUMTAG() { md.refresh(); //general parameters ********************* general parameters string dir="SSDL2015"; string fileName="fakeEstim_SR"; // not needed for statistics but provides the normalization string fileList="fakeEstim_SR"; // put command line that gives all files as in a "ls" command bool mcOnly = false; md.anConf.configureNames( dir, fileName, fileList ); md.anConf.configureData(false, 0, mcOnly); //Lumis( or XSections ) pb-1 & KFactors ************************************ float lumi=LUMTAG; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsPhys14.db"); map<string,float> LumisXS; //via XSect map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); //=============================================================== md.addDataCardSigSample("CATTAG:SIGNAME","SIGTAG"); md.addDataCardSample("CATTAG:WZJetsTo3LNu", "wz"); md.addDataCardSample("CATTAG:TTH", "tth"); md.addDataCardSample("CATTAG:TTZJets", "ttz"); md.addDataCardSample("CATTAG:TTWJets", "ttw"); md.addDataCardSample("CATTAG:TTJetscharge", "chMId"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT100to200charge", "chMId"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT200to400charge", "chMId"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT400to600charge", "chMId"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT600toInfcharge", "chMId"); md.addDataCardSample("CATTAG_Fake:TTJets", "fake"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT100to200", "fake"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT200to400", "fake"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT400to600", "fake"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT600toInf", "fake"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT100to200", "fake"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT200to400", "fake"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT400to600", "fake"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT600toInf", "fake"); // md.addDataCardSample("CATTAG:TTJetsfake", "fake"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT100to200fake", "fake"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT200to400fake", "fake"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT400to600fake", "fake"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT600toInffake", "fake"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT100to200fake", "fake"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT200to400fake", "fake"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT400to600fake", "fake"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT600toInffake", "fake"); md.addDataCardSample("CATTAG:WZJetsTo3LNu", "pseudodata"); md.addDataCardSample("CATTAG:TTH", "pseudodata"); md.addDataCardSample("CATTAG:TTZJets", "pseudodata"); md.addDataCardSample("CATTAG:TTWJets", "pseudodata"); md.addDataCardSample("CATTAG:TTJetscharge", "pseudodata"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT100to200charge", "pseudodata"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT200to400charge", "pseudodata"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT400to600charge", "pseudodata"); md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT600toInfcharge", "pseudodata"); md.addDataCardSample("CATTAG_Fake:TTJets", "pseudodata"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT100to200", "pseudodata"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT200to400", "pseudodata"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT400to600", "pseudodata"); md.addDataCardSample("CATTAG_Fake:WJetsToLNu_HT600toInf", "pseudodata"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT100to200", "pseudodata"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT200to400", "pseudodata"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT400to600", "pseudodata"); md.addDataCardSample("CATTAG_Fake:DYJetsToLL_M50_HT600toInf", "pseudodata"); // md.addDataCardSample("CATTAG:TTJetsfake", "pseudodata"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT100to200fake", "pseudodata"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT200to400fake", "pseudodata"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT400to600fake", "pseudodata"); // md.addDataCardSample("CATTAG:WJetsToLNu_HT600toInffake", "pseudodata"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT100to200fake", "pseudodata"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT200to400fake", "pseudodata"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT400to600fake", "pseudodata"); // md.addDataCardSample("CATTAG:DYJetsToLL_M50_HT600toInffake", "pseudodata"); //experimental uncertainties md.addNuisanceParameter("jes","ttw:ttz:SIGTAG","lnN","JESTAG"); //extrapolation uncertainties md.addNuisanceParameter("ttwTail","ttw","lnN","TTWTAILTAG"); md.addNuisanceParameter("ttzTail","ttz","lnN","TTZTAILTAG"); md.addNuisanceParameter("wzB","wz","lnN","WZBTAG"); //flat uncertainties -> cross sections // md.addNuisanceParameter("ttwNorm","ttw","lnN","1.1"); //->merged with the "tail" source // md.addNuisanceParameter("ttwNorm","ttz","lnN","1.1"); md.addNuisanceParameter("wzNorm","wz","lnN","WZLUMITAG"); //Data-driven methods md.addNuisanceParameter("chMID","chMId","lnN","1.50"); md.addNuisanceParameter("fratio","fake","lnN","1.40"); //syst from stat uncertainties == automatic //md.addNuisanceParameter("wzstat","wz","lnN",""); //--> already given by the 8/15% on Xsect // md.addNuisanceParameter("tthstat","tth","lnN",""); // md.addNuisanceParameter("ttwstat","ttw","lnN",""); // md.addNuisanceParameter("ttzstat","ttz","lnN",""); // md.addNuisanceParameter("fakestat","fake","lnN",""); // md.addNuisanceParameter("chMIdstat","chMId","lnN",""); // md.addNuisanceParameter("SIGTAGstat","SIGTAG","lnN",""); string srs[66]={ "SR1A", "SR2A", "SR3A", "SR4A", "SR5A", "SR6A", "SR7A", "SR8A", "SR9A", "SR10A", "SR11A", "SR12A", "SR13A", "SR14A", "SR15A", "SR16A", "SR17A", "SR18A", "SR19A", "SR20A", "SR21A", "SR22A", "SR23A", "SR24A", "SR25A", "SR26A", "SR27A", "SR28A", "SR29A", "SR30A", "SR31A", "SR32A", "SR1B", "SR2B", "SR3B", "SR4B", "SR5B", "SR6B", "SR7B", "SR8B", "SR9B", "SR10B", "SR11B", "SR12B", "SR13B", "SR14B", "SR15B", "SR16B", "SR17B", "SR18B", "SR19B", "SR20B", "SR21B", "SR22B", "SR23B", "SR24B", "SR25B","SR26B", "SR1C", "SR2C", "SR3C", "SR4C", "SR5C", "SR6C", "SR7C", "SR8C" }; for(int isr=0;isr<66;isr++) { if(srs[isr]=="CATTAG") { md.addNuisanceParameter("tth"+srs[isr]+"stat","tth","lnN",""); md.addNuisanceParameter("ttw"+srs[isr]+"stat","ttw","lnN",""); md.addNuisanceParameter("ttz"+srs[isr]+"stat","ttz","lnN",""); md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN",""); md.addNuisanceParameter("chMId"+srs[isr]+"stat","chMId","lnN",""); md.addNuisanceParameter("SIGTAG"+srs[isr]+"stat","SIGTAG","lnN",""); } else { md.addNuisanceParameter("tth"+srs[isr]+"stat","tth","lnN","-"); md.addNuisanceParameter("ttw"+srs[isr]+"stat","ttw","lnN","-"); md.addNuisanceParameter("ttz"+srs[isr]+"stat","ttz","lnN","-"); md.addNuisanceParameter("fake"+srs[isr]+"stat","fake","lnN","-"); md.addNuisanceParameter("chMId"+srs[isr]+"stat","chMId","lnN","-"); md.addNuisanceParameter("SIGTAG"+srs[isr]+"stat","SIGTAG","lnN","-"); } }//signal regions // md.addNuisanceParameter("SIGTAGStat","SIGTAG","lnN",""); // md.addNuisanceParameter("ttwStat","ttw","lnN",""); // md.addNuisanceParameter("ttzStat","ttz","lnN",""); // md.addNuisanceParameter("wzStat","wz","lnN",""); //md.addNuisanceParameter("sigNorm","T1t415","lnN","1.10"); // } //=============================================================== //*********************************************************************² //Execution macro ****************************************************** //plotting ================ md.dp.setLumiAndEnergy( lumi, energy ); md.prepareDisplay(); // int nCateg=66; //47 // vector<string> _categs(nCateg,""); // string srs[66]={ // "SR1A", "SR2A", "SR3A", "SR4A", "SR5A", "SR6A", "SR7A", "SR8A", // "SR9A", "SR10A", "SR11A", "SR12A", "SR13A", "SR14A", "SR15A", "SR16A", // "SR17A", "SR18A", "SR19A", "SR20A", "SR21A", "SR22A", "SR23A", "SR24A", // "SR25A", "SR26A", "SR27A", "SR28A", "SR29A", "SR30A", "SR31A", "SR32A", // "SR1B", "SR2B", "SR3B", "SR4B", "SR5B", "SR6B", "SR7B", "SR8B", // "SR9B", "SR10B", "SR11B", "SR12B", "SR13B", "SR14B", "SR15B", "SR16B", // "SR17B", "SR18B", "SR19B", "SR20B", "SR21B", "SR22B", "SR23B", "SR24B", // "SR25B","SR26B", // "SR1C", "SR2C", "SR3C", "SR4C", "SR5C", "SR6C", "SR7C", "SR8C" // } // _categs.assign(srs, srs+nCateg); // for(size_t ic=0;ic< _categs.size();ic++) { // string cat=_categs[ic]; md.makeSingleDataCard("SIGTAG", "nominal", "selected", "ssdl2015_CATTAG_SIGTAG_LUMTAG"); // } gROOT->ProcessLine(".q"); }