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); }
// 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_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 template_usingDB() { gStyle->SetOptStat(0); //general parameters ********************* general parameters string dir="WZsynchro"; //string fileName="testAll_BR0"; // not needed for statistics //string fileList="testAll_BR0"; // put command line that gives all files as in a "ls" command //string fileName="fakeEstim_test"; // not needed for statistics //string fileList="fakeEstim_test"; // put command line that gives all files as in a "ls" command //string fileName="q"; // not needed for statistics //string fileList="q"; // put command line that gives all files as in a "ls" command //string fileName="testWZandTT_JonSel"; // not needed for statistics //string fileList="testWZandTT_JonSel"; // put command line that gives all files as in a "ls" command //string fileName="testWZandTT_3lWZ"; // not needed for statistics //string fileList="testWZandTT_3lWZ"; // put command line that gives all files as in a "ls" command //string fileName="testWZandTT"; // not needed for statistics //string fileList="testWZandTT"; // put command line that gives all files as in a "ls" command //string fileName="FE_LEPPTall_LEPFLAVall_LHE1001"; // not needed for statistics //string fileList="FE_LEPPTall_LEPFLAVall_LHE1001"; // put command line that gives all files as in a "ls" command //string fileName="FE_LEPPTall_LEPFLAVall_LHE1001_WZstep0"; // not needed for statistics //string fileList="FE_LEPPTall_LEPFLAVall_LHE1001_WZstep0"; // put command line that gives all files as in a "ls" command //string fileName="WZ3L_WZSTEP3_LEPFLAVall_LHE1001"; // not needed for statistics //string fileList="WZ3L_WZSTEP3_LEPFLAVall_LHE1001"; // put command line that gives all files as in a "ls" command string fileName="WZ3L_WZSTEP5_LEPFLAVall_LHE1001"; // not needed for statistics string fileList="WZ3L_WZSTEP5_LEPFLAVall_LHE1001"; // put command line that gives all files as in a "ls" command bool mcOnly = false; //if(md.isInitStatus()) { md.anConf.configureNames( dir, fileName, fileList); md.anConf.configureData(false, 0, mcOnly); //} //observables ********************** //string obs[6]={"","","","","",""}; md.dp.setObservables("METWZCR"); //md.dp.setObservables("MTminBR0H"); md.dp.setObservables("HTWZCR"); md.dp.setObservables("NBJetsWZCR"); md.dp.setObservables("NJetsWZCR"); //Binning & title ************************* Binning & titre 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; 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="susybinning"; 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=10000; //pb-1 19470 float energy=13; //TeV bool useXS=false; md.anConf.loadXSDB("XSectionsSpring15.db"); map<string,float> LumisXS; map<string,float> KFactors; md.anConf.configureLumi( LumisXS, KFactors, lumi, useXS ); // SDYJetsM50_HT600toInf_PU_S14_POSTLS170_skimamples ************************** samples //if( md.isInitStatus() ) { // md.anConf.addSample( "WZJetsTo3LNu" , "WZ", kOrange-4); // //md.anConf.addSample( "TTJets" , "t#bar{t}", kBlue+1); // md.anConf.addSample( "SMS_T1tttt_2J_mGl1200_mLSP800", "T1tttt (1.2/0.8) sig * 20", kViolet-3); // // md.anConf.addSample( "WJetsToLNu_HT100to200" , "W+Jets", kAzure-2); // md.anConf.addSample( "WJetsToLNu_HT200to400" , "W+Jets", kAzure-2); // md.anConf.addSample( "WJetsToLNu_HT400to600" , "W+Jets", kAzure-2); // md.anConf.addSample( "WJetsToLNu_HT600toInf" , "W+Jets", kAzure-2); // // //md.anConf.addSample( "DYJetsToLL_M50" , "Z+Jets", kAzure+6); // md.anConf.addSample( "DYJetsToLL_M50_HT100to200" , "Z+Jets", kAzure+6); // md.anConf.addSample( "DYJetsToLL_M50_HT200to400" , "Z+Jets", kAzure+6); // md.anConf.addSample( "DYJetsToLL_M50_HT400to600" , "Z+Jets", kAzure+6); // md.anConf.addSample( "DYJetsToLL_M50_HT600toInf" , "Z+Jets", kAzure+6); // // md.anConf.addSample( "TTJets" , "t#bar{t}", kBlue+1); // // md.anConf.addSample("TToLeptons_sch" , "Single top", kBlue+3); // md.anConf.addSample("TToLeptons_tch" , "Single top", kBlue+3); // md.anConf.addSample("T_tWch" , "Single top", kBlue+3); // md.anConf.addSample("TBarToLeptons_sch" , "Single top", kBlue+3); // md.anConf.addSample("TBarToLeptons_tch" , "Single top", kBlue+3); // md.anConf.addSample("TBar_tWch" , "Single top", kBlue+3); // // md.anConf.addSample( "TTWJets" , "rare", kOrange-2); // md.anConf.addSample( "TTZJets" , "rare", kOrange-2); // //md.anConf.addSample( "WZJetsTo3LNu" , "rare", kOrange-2); // md.anConf.addSample( "ZZTo4L" , "rare", kOrange-2); // md.anConf.addSample( "TTH" , "rare", kOrange-2); // /* // md.anConf.addSample( "SMS_T1tttt_2J_mGl1200_mLSP800", "T1tttt (1.2/0.8) sig * 20", kViolet-3); // //md.anConf.addSample( "SMS_T1tttt_2J_mGl1500_mLSP100", "T1tttt (1.5/0.1) sig * 20", kViolet-3); // //md.anConf.addSample( "T1ttbbWW_mGo1300_mCh300_mChi290" , "T1ttbbWW (1.3/0.3) sig * 20", kBlue); // md.anConf.addSample( "T1ttbbWW_mGo1000_mCh725_mChi720" , "T1ttbbWW (1.0/0.7) sig * 20", kBlue); // md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mChi280" , "T5tttt deg. (1.0/0.3, 4bd) sig * 20", kGreen+2); // //md.anConf.addSample( "T5ttttDeg_mGo1000_mStop300_mCh285_mChi280" , "T5tttt deg. (1.0/0.3, Chi) sig * 20", kGreen+2); // //md.anConf.addSample( "T6ttWW_mSbot650_mCh150_mChi50" , "T6ttWW (650/150/50) sig * 20", kRed+1); // md.anConf.addSample( "T6ttWW_mSbot600_mCh425_mChi50" , "T6ttWW (600/425/50) sig * 20", kRed+1); // md.anConf.addSample( "T5qqqqWW_mGo1200_mCh1000_mChi800_dilep" , "T5qqqqWW (1.2/0.8) sig * 20", kOrange+6); // */ // // // md.anConf.addSample( "TTWJets_aMCatNLO" , "TTWaMCatNLO", kBlue+3); // md.anConf.addSample( "TTZJets_aMCatNLO" , "TTZaMCatNLO", kBlue+3); // // md.anConf.addSample( "TTWJets" , "TTWmadgraph", kGreen-2); // md.anConf.addSample( "TTZJets" , "TTZmadgraph", kGreen-2); // //Santis version for WZ /* md.anConf.addSample( "DYJetsToLL_M50_HT100to200" , "fakes", kAzure+6); md.anConf.addSample( "DYJetsToLL_M50_HT200to400" , "fakes", kAzure+6); md.anConf.addSample( "DYJetsToLL_M50_HT400to600" , "fakes", kAzure+6); md.anConf.addSample( "DYJetsToLL_M50_HT600toInf" , "fakes", kAzure+6); md.anConf.addSample( "TTJets" , "fakes", kBlue+1); //md.anConf.addSample( "TToLeptons_sch" , "fakes", kBlue+1); //md.anConf.addSample( "TToLeptons_tch" , "fakes", kBlue+1); //md.anConf.addSample( "T_tWch" , "fakes", kBlue+1); //md.anConf.addSample( "TBarToLeptons_sch" , "fakes", kBlue+1); //md.anConf.addSample( "TBarToLeptons_tch" , "fakes", kBlue+1); //md.anConf.addSample( "TBar_tWch" , "fakes", kBlue+1); md.anConf.addSample( "TTWJets" , "t#bar{t}V", kBlue+3 ); md.anConf.addSample( "TTZJets" , "t#bar{t}V", kBlue+3 ); md.anConf.addSample( "TTH" , "t#bar{t}V", kBlue+3 ); // md.anConf.addSample( "ZZTo4L" , "ZZ" , kRed+2 ); md.anConf.addSample( "WZJetsTo3LNu" , "WZ" , kOrange-2); */ //md.anConf.addSample( "TTJets" , "TTJets", kRed+2); //my 'a la Santi' processes for WZ study using available Spring 15 samples //md.anConf.addSample( "DYJetsToLL_M10to50" , "fakes", kAzure+6); // md.anConf.addSample( "DYJetsToLL_M50" , "fakes", kAzure+6); // md.anConf.addSample( "TTJets" , "fakes", kBlue+1); // //md.anConf.addSample( "TToLeptons_sch" , "fakes", kBlue+1); // //md.anConf.addSample( "TToLeptons_tch" , "fakes", kBlue+1); // //md.anConf.addSample( "T_tWch" , "fakes", kBlue+1); // //md.anConf.addSample( "TBar_tWch" , "fakes", kBlue+1); // //md.anConf.addSample( "WJetsToLNu_HT100to200" , "W+Jets", kAzure-2); //md.anConf.addSample( "WJetsToLNu_HT200to400" , "W+Jets", kAzure-2); //md.anConf.addSample( "WJetsToLNu_HT400to600" , "W+Jets", kAzure-2); //md.anConf.addSample( "WJetsToLNu_HT600toInf" , "W+Jets", kAzure-2); /* md.anConf.addSample( "WJetsToLNu" , "W+Jets", kAzure-2); md.anConf.addSample( "DYJetsToLL_M50" , "Z+Jets", kAzure+6); md.anConf.addSample( "TTJets" , "TTJets", kRed+2); */ md.anConf.addSample( "WZp8" , "WZ" , kOrange-2); // // md.anConf.addSample( "TTJets" , "TTJets", kRed+2); // } //=============================================================== //*********************************************************************² //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.makeDataCard(fileList, "global", "SR b-jet multiplicity"); //md.getStatistics("global"); //md.getStatistics("global_WZCR"); //md.getStatistics("global_BR00H"); md.getStatistics("global_WZCR"); md.savePlot("phys14exerc"); // md.dp.addText(xt,yt,st,addText); //gROOT->ProcessLine(".q"); }
// 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_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"); }