From 6b69e9a223990e6bb46f5f3c84842bd82d276a8c Mon Sep 17 00:00:00 2001 From: Savanna Starko Date: Tue, 6 Jun 2017 10:34:16 -0500 Subject: [PATCH 1/6] my commit message --- src/Analyzer.cc | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/src/Analyzer.cc b/src/Analyzer.cc index 9ca93ff..bdaa31c 100644 --- a/src/Analyzer.cc +++ b/src/Analyzer.cc @@ -54,7 +54,7 @@ const unordered_map, EnumHash> Analyzer::adjList = { {CUTS::eMuon2Elec2, {CUTS::eRMuon2, CUTS::eRElec2}}, {CUTS::eDiElec, {CUTS::eRElec1, CUTS::eRElec2}}, - {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2}}, + {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eR1stJet, CUTS::eR2ndJet}}, {CUTS::eDiTau, {CUTS::eRTau1, CUTS::eRTau2}}, {CUTS::eDiJet, {CUTS::eRJet1, CUTS::eRJet2}}, {CUTS::eSusyCom, {CUTS::eR1stJet, CUTS::eR2ndJet}}, @@ -301,7 +301,6 @@ void Analyzer::clear_values() { ///Function that does most of the work. Calculates the number of each particle void Analyzer::preprocess(int event) { BOOM->GetEntry(event); - theMETVector.SetPxPyPzE(Met[0], Met[1], Met[2], sqrt(pow(Met[0],2) + pow(Met[1],2))); pu_weight = (!isData && CalculatePUSystematics) ? hPU[(int)(nTruePU+1)] : 1.0; @@ -315,14 +314,12 @@ void Analyzer::preprocess(int event) { smearLepton(*_Electron, CUTS::eGElec, _Electron->pstats["Smear"]); smearLepton(*_Muon, CUTS::eGMuon, _Muon->pstats["Smear"]); smearLepton(*_Tau, CUTS::eGTau, _Tau->pstats["Smear"]); - smearJet(_Jet->pstats["Smear"]); //////Triggers and Vertices goodParts[CUTS::eRVertex]->resize(bestVertices); TriggerCuts(*(trigPlace[0]), *(trigName[0]), CUTS::eRTrig1); TriggerCuts(*(trigPlace[1]), *(trigName[1]), CUTS::eRTrig2); - updateMet(); // // SET NUMBER OF RECO PARTICLES @@ -333,16 +330,13 @@ void Analyzer::preprocess(int event) { getGoodRecoLeptons(*_Muon, CUTS::eRMuon2, CUTS::eGMuon, _Muon->pstats["Muon2"]); getGoodRecoLeptons(*_Tau, CUTS::eRTau1, CUTS::eGTau, _Tau->pstats["Tau1"]); getGoodRecoLeptons(*_Tau, CUTS::eRTau2, CUTS::eGTau, _Tau->pstats["Tau2"]); - getGoodRecoJets(CUTS::eRJet1, _Jet->pstats["Jet1"]); getGoodRecoJets(CUTS::eRJet2, _Jet->pstats["Jet2"]); getGoodRecoJets(CUTS::eRCenJet, _Jet->pstats["CentralJet"]); getGoodRecoJets(CUTS::eRBJet, _Jet->pstats["BJet"]); - getGoodRecoJets(CUTS::eR1stJet, _Jet->pstats["FirstLeadingJet"]); getGoodRecoJets(CUTS::eR2ndJet, _Jet->pstats["SecondLeadingJet"]); - ///VBF Susy cut on leadin jets VBFTopologyCut(distats["VBFSUSY"]); @@ -351,27 +345,27 @@ void Analyzer::preprocess(int event) { getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau1, CUTS::eElec2Tau1, distats["Electron2Tau1"]); getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec1, CUTS::eRTau2, CUTS::eElec1Tau2, distats["Electron1Tau2"]); getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau2, CUTS::eElec2Tau2, distats["Electron2Tau2"]); - + getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau1, CUTS::eMuon1Tau1, distats["Muon1Tau1"]); getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau2, CUTS::eMuon1Tau2, distats["Muon1Tau2"]); getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau1, CUTS::eMuon2Tau1, distats["Muon2Tau1"]); getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau2, CUTS::eMuon2Tau2, distats["Muon2Tau2"]); - + getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec1, CUTS::eMuon1Elec1, distats["Muon1Electron1"]); getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec2, CUTS::eMuon1Elec2, distats["Muon1Electron2"]); getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec1, CUTS::eMuon2Elec1, distats["Muon2Electron1"]); getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec2, CUTS::eMuon2Elec2, distats["Muon2Electron2"]); - + ////DIlepton topology cuts getGoodLeptonCombos(*_Tau, *_Tau, CUTS::eRTau1, CUTS::eRTau2, CUTS::eDiTau, distats["DiTau"]); getGoodLeptonCombos(*_Electron, *_Electron, CUTS::eRElec1, CUTS::eRElec2, CUTS::eDiElec, distats["DiElectron"]); getGoodLeptonCombos(*_Muon, *_Muon, CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eDiMuon, distats["DiMuon"]); - + ////Dijet cuts getGoodDiJets(distats["DiJet"]); if(event % 50000 == 0) { - cout << "Event #" << event << endl; + cout << "Event #" << event << endl; } } @@ -387,7 +381,8 @@ void Analyzer::fillCuts() { for(size_t i = 0; i < cut_order->size(); i++) { // for(vector::const_iterator it=cut_order->begin(); it != cut_order->end(); it++, i++) { - string cut = cut_order->at(i); + + string cut = cut_order->at(i); if(isData && cut.find("Gen") != string::npos) continue; int min= cut_info->at(cut).first; @@ -404,6 +399,7 @@ void Analyzer::fillCuts() { } else prevTrue = false; } + } /////// maxcut made -1 if doesn't pass all of the cuts @@ -1506,6 +1502,10 @@ void Analyzer::fill_Folder(string group, const int max) { part1 = lep1->smearP.at(p1); part2 = lep2->smearP.at(p2); + double add_px = (part1.Pt() * cos(part1.Phi())) + (part2.Pt() * cos(part2.Phi())); + double add_py = (part1.Pt() * sin(part1.Phi())) + (part2.Pt() * sin(part2.Phi())); +// TLorentzVector add_p = part1 + part2; + double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); histAddVal2(part1.Pt(),part2.Pt(), "Part1PtVsPart2Pt"); @@ -1513,16 +1513,17 @@ void Analyzer::fill_Folder(string group, const int max) { if(group.find("Di") != string::npos) { histAddVal((part1.Pt() - part2.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); histAddVal(part1.Pt() - part2.Pt(), "DeltaPt"); + histAddVal(TMath::Sqrt(mag_addp2), "Boost"); } else { histAddVal((part2.Pt() - part1.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); histAddVal(part2.Pt() - part1.Pt(), "DeltaPt"); + histAddVal(TMath::Sqrt(mag_addp2), "Boost"); } histAddVal(cos(absnormPhi(part2.Phi() - part1.Phi())), "CosDphi"); histAddVal(absnormPhi(part1.Phi() - theMETVector.Phi()), "Part1MetDeltaPhi"); histAddVal2(absnormPhi(part1.Phi() - theMETVector.Phi()), cos(absnormPhi(part2.Phi() - part1.Phi())), "Part1MetDeltaPhiVsCosDphi"); histAddVal(absnormPhi(part2.Phi() - theMETVector.Phi()), "Part2MetDeltaPhi"); histAddVal(cos(absnormPhi(atan2(part1.Py() - part2.Py(), part1.Px() - part2.Px()) - theMETVector.Phi())), "CosDphi_DeltaPtAndMet"); - double diMass = diParticleMass(part1,part2, distats[digroup].smap.at("HowCalculateMassReco")); if(passDiParticleApprox(part1,part2, distats[digroup].smap.at("HowCalculateMassReco"))) { histAddVal(diMass, "ReconstructableMass"); @@ -1562,11 +1563,11 @@ void Analyzer::fill_Folder(string group, const int max) { void Analyzer::initializePileupInfo(string MCHisto, string DataHisto) { TFile *file1 = new TFile((PUSPACE+MCHisto).c_str()); - TH1D* histmc = (TH1D*)file1->FindObjectAny("NVertices_0"); + TH1D* histmc = (TH1D*)file1->FindObjectAny("pileup"); if(!histmc) throw std::runtime_error("failed to extract histogram"); TFile* file2 = new TFile((PUSPACE+DataHisto).c_str()); - TH1D* histdata = (TH1D*)file2->FindObjectAny("NVertices_0"); + TH1D* histdata = (TH1D*)file2->FindObjectAny("pileup"); if(!histdata) throw std::runtime_error("failed to extract histogram"); double factor = histmc->Integral() / histdata->Integral(); From 6c45b3eb5f3d7a3453076563872f261361b5fa38 Mon Sep 17 00:00:00 2001 From: Savanna Starko Date: Mon, 2 Oct 2017 11:40:20 -0500 Subject: [PATCH 2/6] mycommitmessage --- Analyzer_editing_612.cc | 1696 +++++++++++++++++ ISR/ISRweight_practice_6.8.pdf | Bin 0 -> 13936 bytes PartDetzmumu_CR2_6.6/Control_Regions.in | 8 + PartDetzmumu_CR2_6.6/Cuts.in | 49 + PartDetzmumu_CR2_6.6/DiParticle_info.in | 101 + PartDetzmumu_CR2_6.6/ElectronTau_info.in | 112 ++ PartDetzmumu_CR2_6.6/Electron_info.in | 75 + PartDetzmumu_CR2_6.6/Gen_info.in | 27 + PartDetzmumu_CR2_6.6/Hist_entries.in | 556 ++++++ PartDetzmumu_CR2_6.6/Jet_info.in | 157 ++ PartDetzmumu_CR2_6.6/MuonElectron_info.in | 111 ++ PartDetzmumu_CR2_6.6/MuonTau_info.in | 111 ++ PartDetzmumu_CR2_6.6/Muon_info.in | 68 + PartDetzmumu_CR2_6.6/Run_info.in | 38 + PartDetzmumu_CR2_6.6/Tau_info.in | 108 ++ PartDetzmumu_CR2_6.6/VBFCuts_info.in | 29 + PartDetzmumu_fullCR_7.22/Control_Regions.in | 8 + PartDetzmumu_fullCR_7.22/Cuts.in | 49 + PartDetzmumu_fullCR_7.22/DiParticle_info.in | 101 + PartDetzmumu_fullCR_7.22/ElectronTau_info.in | 112 ++ PartDetzmumu_fullCR_7.22/Electron_info.in | 75 + PartDetzmumu_fullCR_7.22/FatJet_info.in | 36 + PartDetzmumu_fullCR_7.22/Gen_info.in | 27 + PartDetzmumu_fullCR_7.22/Hist_entries.in | 558 ++++++ PartDetzmumu_fullCR_7.22/Jet_info.in | 158 ++ PartDetzmumu_fullCR_7.22/MuonElectron_info.in | 111 ++ PartDetzmumu_fullCR_7.22/MuonTau_info.in | 111 ++ PartDetzmumu_fullCR_7.22/Muon_info.in | 68 + PartDetzmumu_fullCR_7.22/Run_info.in | 43 + PartDetzmumu_fullCR_7.22/Tau_info.in | 108 ++ PartDetzmumu_fullCR_7.22/VBFCuts_info.in | 29 + .../Control_Regions.in | 8 + PartDetzmumu_fullwvalisrwgt_8.14/Cuts.in | 49 + .../DiParticle_info.in | 101 + .../ElectronTau_info.in | 112 ++ .../Electron_info.in | 75 + .../FatJet_info.in | 36 + PartDetzmumu_fullwvalisrwgt_8.14/Gen_info.in | 27 + .../Hist_entries.in | 562 ++++++ PartDetzmumu_fullwvalisrwgt_8.14/Jet_info.in | 158 ++ .../MuonElectron_info.in | 111 ++ .../MuonTau_info.in | 111 ++ PartDetzmumu_fullwvalisrwgt_8.14/Muon_info.in | 68 + PartDetzmumu_fullwvalisrwgt_8.14/Run_info.in | 40 + PartDetzmumu_fullwvalisrwgt_8.14/Tau_info.in | 108 ++ .../VBFCuts_info.in | 29 + PartDetzmumu_taueff_9.3/Control_Regions.in | 29 + PartDetzmumu_taueff_9.3/Cuts.in | 71 + PartDetzmumu_taueff_9.3/DiParticle_info.in | 100 + PartDetzmumu_taueff_9.3/ElectronTau_info.in | 112 ++ PartDetzmumu_taueff_9.3/Electron_info.in | 75 + PartDetzmumu_taueff_9.3/FatJet_info.in | 36 + PartDetzmumu_taueff_9.3/Gen_info.in | 29 + PartDetzmumu_taueff_9.3/Hist_entries.in | 598 ++++++ PartDetzmumu_taueff_9.3/Jet_info.in | 160 ++ PartDetzmumu_taueff_9.3/MuonElectron_info.in | 111 ++ PartDetzmumu_taueff_9.3/MuonTau_info.in | 111 ++ PartDetzmumu_taueff_9.3/Muon_info.in | 68 + PartDetzmumu_taueff_9.3/Run_info.in | 41 + PartDetzmumu_taueff_9.3/Systematics_info.in | 15 + PartDetzmumu_taueff_9.3/Tau_info.in | 108 ++ PartDetzmumu_taueff_9.3/VBFCuts_info.in | 29 + .../Control_Regions.in | 29 + PartDetzmumu_wvalidation_7.27/Cuts.in | 71 + .../DiParticle_info.in | 100 + .../ElectronTau_info.in | 112 ++ .../Electron_info.in | 75 + PartDetzmumu_wvalidation_7.27/FatJet_info.in | 36 + PartDetzmumu_wvalidation_7.27/Gen_info.in | 29 + PartDetzmumu_wvalidation_7.27/Hist_entries.in | 598 ++++++ PartDetzmumu_wvalidation_7.27/Jet_info.in | 160 ++ .../MuonElectron_info.in | 111 ++ PartDetzmumu_wvalidation_7.27/MuonTau_info.in | 111 ++ PartDetzmumu_wvalidation_7.27/Muon_info.in | 68 + PartDetzmumu_wvalidation_7.27/Run_info.in | 41 + .../Systematics_info.in | 15 + PartDetzmumu_wvalidation_7.27/Tau_info.in | 108 ++ PartDetzmumu_wvalidation_7.27/VBFCuts_info.in | 29 + isrstau_checkgtaumatchgnu_gnu_7.25.pdf | Bin 0 -> 13858 bytes isrstau_checkgtaumatchgnu_gtau_7.25.pdf | Bin 0 -> 13858 bytes src/Analyzer.cc | 411 +++- src/Analyzer.h | 9 + src/Cut_enum.h | 2 +- src/main.cc | 12 +- 84 files changed, 10166 insertions(+), 89 deletions(-) create mode 100644 Analyzer_editing_612.cc create mode 100644 ISR/ISRweight_practice_6.8.pdf create mode 100644 PartDetzmumu_CR2_6.6/Control_Regions.in create mode 100644 PartDetzmumu_CR2_6.6/Cuts.in create mode 100644 PartDetzmumu_CR2_6.6/DiParticle_info.in create mode 100644 PartDetzmumu_CR2_6.6/ElectronTau_info.in create mode 100644 PartDetzmumu_CR2_6.6/Electron_info.in create mode 100644 PartDetzmumu_CR2_6.6/Gen_info.in create mode 100644 PartDetzmumu_CR2_6.6/Hist_entries.in create mode 100644 PartDetzmumu_CR2_6.6/Jet_info.in create mode 100644 PartDetzmumu_CR2_6.6/MuonElectron_info.in create mode 100644 PartDetzmumu_CR2_6.6/MuonTau_info.in create mode 100644 PartDetzmumu_CR2_6.6/Muon_info.in create mode 100644 PartDetzmumu_CR2_6.6/Run_info.in create mode 100644 PartDetzmumu_CR2_6.6/Tau_info.in create mode 100644 PartDetzmumu_CR2_6.6/VBFCuts_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Control_Regions.in create mode 100644 PartDetzmumu_fullCR_7.22/Cuts.in create mode 100644 PartDetzmumu_fullCR_7.22/DiParticle_info.in create mode 100644 PartDetzmumu_fullCR_7.22/ElectronTau_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Electron_info.in create mode 100644 PartDetzmumu_fullCR_7.22/FatJet_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Gen_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Hist_entries.in create mode 100644 PartDetzmumu_fullCR_7.22/Jet_info.in create mode 100644 PartDetzmumu_fullCR_7.22/MuonElectron_info.in create mode 100644 PartDetzmumu_fullCR_7.22/MuonTau_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Muon_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Run_info.in create mode 100644 PartDetzmumu_fullCR_7.22/Tau_info.in create mode 100644 PartDetzmumu_fullCR_7.22/VBFCuts_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Control_Regions.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Cuts.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/DiParticle_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/ElectronTau_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Electron_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/FatJet_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Gen_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Hist_entries.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Jet_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/MuonElectron_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/MuonTau_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Muon_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Run_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/Tau_info.in create mode 100644 PartDetzmumu_fullwvalisrwgt_8.14/VBFCuts_info.in create mode 100644 PartDetzmumu_taueff_9.3/Control_Regions.in create mode 100644 PartDetzmumu_taueff_9.3/Cuts.in create mode 100644 PartDetzmumu_taueff_9.3/DiParticle_info.in create mode 100644 PartDetzmumu_taueff_9.3/ElectronTau_info.in create mode 100644 PartDetzmumu_taueff_9.3/Electron_info.in create mode 100644 PartDetzmumu_taueff_9.3/FatJet_info.in create mode 100644 PartDetzmumu_taueff_9.3/Gen_info.in create mode 100644 PartDetzmumu_taueff_9.3/Hist_entries.in create mode 100644 PartDetzmumu_taueff_9.3/Jet_info.in create mode 100644 PartDetzmumu_taueff_9.3/MuonElectron_info.in create mode 100644 PartDetzmumu_taueff_9.3/MuonTau_info.in create mode 100644 PartDetzmumu_taueff_9.3/Muon_info.in create mode 100644 PartDetzmumu_taueff_9.3/Run_info.in create mode 100644 PartDetzmumu_taueff_9.3/Systematics_info.in create mode 100644 PartDetzmumu_taueff_9.3/Tau_info.in create mode 100644 PartDetzmumu_taueff_9.3/VBFCuts_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Control_Regions.in create mode 100644 PartDetzmumu_wvalidation_7.27/Cuts.in create mode 100644 PartDetzmumu_wvalidation_7.27/DiParticle_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/ElectronTau_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Electron_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/FatJet_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Gen_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Hist_entries.in create mode 100644 PartDetzmumu_wvalidation_7.27/Jet_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/MuonElectron_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/MuonTau_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Muon_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Run_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Systematics_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/Tau_info.in create mode 100644 PartDetzmumu_wvalidation_7.27/VBFCuts_info.in create mode 100644 isrstau_checkgtaumatchgnu_gnu_7.25.pdf create mode 100644 isrstau_checkgtaumatchgnu_gtau_7.25.pdf diff --git a/Analyzer_editing_612.cc b/Analyzer_editing_612.cc new file mode 100644 index 0000000..1184cad --- /dev/null +++ b/Analyzer_editing_612.cc @@ -0,0 +1,1696 @@ +#include "Analyzer.h" +//// Used to convert Enums to integers +#define ival(x) static_cast(x) +//// BIG_NUM = sqrt(sizeof(int)) so can use diparticle convention of +//// index = BIG_NUM * i1 + i2 +//// This insures easy way to extract indices +//// Needs to be changed if go to size_t instead (if want to play safe +#define BIG_NUM 46340 + +///// Macros defined to shorten code. Made since lines used A LOT and repeative. May change to inlines +///// if tests show no loss in speed +#define histAddVal2(val1, val2, name) histo.addVal(val1, val2, group, max, name, wgt) +#define histAddVal(val, name) histo.addVal(val, group, max, name, wgt) +#define SetBranch(name, variable) BOOM->SetBranchStatus(name, 1); BOOM->SetBranchAddress(name, &variable); + +typedef vector::iterator vec_iter; + +////////////////////////////////////////////////////////////////// +///////////////////CONSTANTS DEFINITONS/////////////////////////// +////////////////////////////////////////////////////////////////// + +//Filespace that has all of the .in files +const string FILESPACE = "PartDet/"; +const string PUSPACE = "Pileup/"; +const string ISRSPACE = "ISR/"; + +const vector Analyzer::genCuts = { + CUTS::eGTau, CUTS::eNuTau, CUTS::eGTop, + CUTS::eGElec, CUTS::eGMuon, CUTS::eGZ, + CUTS::eGW, CUTS::eGHiggs +}; + +const vector Analyzer::jetCuts = { + CUTS::eRJet1, CUTS::eRJet2, CUTS::eRCenJet, + CUTS::eR1stJet, CUTS::eR2ndJet, CUTS::eRBJet +}; + + + + +const unordered_map, EnumHash> Analyzer::adjList = { + {CUTS::eMuon1Tau1, {CUTS::eRMuon1, CUTS::eRTau1}}, + {CUTS::eMuon1Tau2, {CUTS::eRMuon1, CUTS::eRTau2}}, + {CUTS::eMuon2Tau1, {CUTS::eRMuon2, CUTS::eRTau1}}, + {CUTS::eMuon2Tau2, {CUTS::eRMuon2, CUTS::eRTau2}}, + + {CUTS::eElec1Tau1, {CUTS::eRElec1, CUTS::eRTau1}}, + {CUTS::eElec1Tau2, {CUTS::eRElec1, CUTS::eRTau2}}, + {CUTS::eElec2Tau1, {CUTS::eRElec2, CUTS::eRTau1}}, + {CUTS::eMuon2Tau2, {CUTS::eRElec2, CUTS::eRTau2}}, + + {CUTS::eMuon1Elec1, {CUTS::eRMuon1, CUTS::eRElec1}}, + {CUTS::eMuon1Elec2, {CUTS::eRMuon1, CUTS::eRElec2}}, + {CUTS::eMuon2Elec1, {CUTS::eRMuon2, CUTS::eRElec1}}, + {CUTS::eMuon2Elec2, {CUTS::eRMuon2, CUTS::eRElec2}}, + + {CUTS::eDiElec, {CUTS::eRElec1, CUTS::eRElec2}}, + {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eR1stJet, CUTS::eR2ndJet}}, + {CUTS::eDiTau, {CUTS::eRTau1, CUTS::eRTau2}}, + {CUTS::eDiElec, {CUTS::eRElec1, CUTS::eRElec2, CUTS::eR1stJet, CUTS::eR2ndJet}}, + {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eR1stJet, CUTS::eR2ndJet}}, + {CUTS::eDiTau, {CUTS::eRTau1, CUTS::eRTau2, CUTS::eR1stJet, CUTS::eR2ndJet}}, + {CUTS::eDiJet, {CUTS::eRJet1, CUTS::eRJet2}}, + {CUTS::eSusyCom, {CUTS::eR1stJet, CUTS::eR2ndJet}}, + {CUTS::eGTau, {CUTS::eNuTau}}, + {CUTS::eGen, genCuts} +}; + + +const unordered_map Analyzer::cut_num = { + {"NGenTau", CUTS::eGTau}, {"NGenTop", CUTS::eGTop}, + {"NGenElectron", CUTS::eGElec}, {"NGenMuon", CUTS::eGMuon}, + {"NGenZ", CUTS::eGZ}, {"NGenW", CUTS::eGW}, + {"NGenHiggs", CUTS::eGHiggs}, {"NRecoVertex", CUTS::eRVertex}, + {"NRecoMuon1", CUTS::eRMuon1}, {"NRecoMuon2", CUTS::eRMuon2}, + {"NRecoElectron1", CUTS::eRElec1}, {"NRecoElectron2",CUTS::eRElec2}, + {"NRecoTau1", CUTS::eRTau1}, {"NRecoTau2", CUTS::eRTau2}, + {"NRecoJet1", CUTS::eRJet1}, {"NRecoJet2", CUTS::eRJet2}, + {"NRecoCentralJet", CUTS::eRCenJet}, {"NRecoBJet", CUTS::eRBJet}, + {"NRecoTriggers1", CUTS::eRTrig1}, {"NRecoTriggers2", CUTS::eRTrig2}, + {"NRecoFirstLeadingJet", CUTS::eR1stJet}, {"NRecoSecondLeadingJet", CUTS::eR2ndJet}, + {"NDiMuonCombinations", CUTS::eDiMuon}, {"NDiElectronCombinations", CUTS::eDiElec}, + {"NDiTauCombinations", CUTS::eDiTau}, {"NDiJetCombinations", CUTS::eDiJet}, + {"NMuon1Tau1Combinations", CUTS::eMuon1Tau1}, {"NMuon1Tau2Combinations", CUTS::eMuon1Tau2}, + {"NMuon2Tau1Combinations", CUTS::eMuon2Tau1}, {"NMuon2Tau2Combinations", CUTS::eMuon2Tau2}, + {"NElectron1Tau1Combinations", CUTS::eElec1Tau1}, {"NElectron1Tau2Combinations", CUTS::eElec1Tau2}, + {"NElectron2Tau1Combinations", CUTS::eElec2Tau1}, {"NElectron2Tau2Combinations", CUTS::eElec2Tau2}, + {"NMuon1Electron1Combinations", CUTS::eMuon1Elec1}, {"NMuon1Electron2Combinations", CUTS::eMuon1Elec2}, + {"NMuon2Electron1Combinations", CUTS::eMuon2Elec1}, {"NMuon2Electron2Combinations", CUTS::eMuon2Elec2}, + {"NLeadJetCombinations", CUTS::eSusyCom}, {"METCut", CUTS::eMET} +}; + + +////////////////////////////////////////////////////// +//////////////////PUBLIC FUNCTIONS//////////////////// +////////////////////////////////////////////////////// + +///Constructor +Analyzer::Analyzer(string infile, string outfile, bool setCR) : goodParts(getArray()) { + cout << "setup start" << endl; + f = TFile::Open(infile.c_str()); + f->cd("TNT"); + BOOM = (TTree*)f->Get("TNT/BOOM"); + nentries = (int) BOOM->GetEntries(); + BOOM->SetBranchStatus("*", 0); + std::cout << "TOTAL EVENTS: " << nentries << std::endl; + + for(int i=0; i < nTrigReq; i++) { + vector* tmpi = new vector(); + vector* tmps = new vector(); + trigPlace[i] = tmpi; + trigName[i] = tmps; + } + + setupGeneral(BOOM,infile); + + isData = distats["Run"].bmap.at("isData"); + CalculatePUSystematics = distats["Run"].bmap.at("CalculatePUSystematics"); + initializePileupInfo(distats["Run"].smap.at("MCHistos"), distats["Run"].smap.at("DataHistos")); + CalculateISRSystematics = distats["Run"].bmap.at("CalculateISRSystematics"); + initializeISRWeightInfo(distats["Run"].smap.at("ISRweightHistos")); + + + if(!isData) { + _Gen = new Generated(BOOM, FILESPACE + "Gen_info.in"); + } + _Electron = new Electron(BOOM, FILESPACE + "Electron_info.in"); + _Muon = new Muon(BOOM, FILESPACE + "Muon_info.in"); + _Tau = new Taus(BOOM, FILESPACE + "Tau_info.in"); + _Jet = new Jet(BOOM, FILESPACE + "Jet_info.in"); + + _Electron->findExtraCuts(); + _Muon->findExtraCuts(); + _Tau->findExtraCuts(); + _Jet->findExtraCuts(); + + + vector cr_variables; + if(setCR) { + char buf[64]; + read_info(FILESPACE + "Control_Regions.in"); + crbins = pow(2.0, distats["Control_Region"].dmap.size()); + for(auto maper: distats["Control_Region"].dmap) { + cr_variables.push_back(maper.first); + sprintf(buf, "%.*G", 16, maper.second); + cr_variables.push_back(buf); + } + if(isData) { + if(distats["Control_Region"].smap.find("SR") == distats["Control_Region"].smap.end()) { + cout << "Using Control Regions with data, but no signal region specified can lead to accidentially unblinding a study before it should be. Please specify a SR in the file PartDet/Control_Region.in" << endl; + exit(1); + } else if(distats["Control_Region"].smap.at("SR").length() != distats["Control_Region"].dmap.size()) { + cout << "Signal Region specified incorrectly: check signal region variable to make sure the number of variables matches the number of signs in SR" << endl; + exit(1); + } + int factor = 1; + SignalRegion = 0; + for(auto gtltSign: distats["Control_Region"].smap["SR"]) { + if(gtltSign == '>') SignalRegion += factor; + factor *= 2; + } + if(distats["Control_Region"].bmap.find("Unblind") != distats["Control_Region"].bmap.end()) { + blinded = !distats["Control_Region"].bmap["Unblind"]; + } + } + } + + histo = Histogramer(1, FILESPACE+"Hist_entries.in", FILESPACE+"Cuts.in", outfile, isData, cr_variables); + + if(setCR) { + cuts_per.resize(histo.get_folders()->size()); + cuts_cumul.resize(histo.get_folders()->size()); + } else { + cuts_per.resize(histo.get_cuts()->size()); + cuts_cumul.resize(histo.get_cuts()->size()); + } + create_fillInfo(); + for(auto maper: distats["Control_Region"].dmap) { + + setupCR(maper.first, maper.second); + } + + setCutNeeds(); + // exit(1); +} + +unordered_map*, EnumHash> Analyzer::getArray() { + unordered_map*, EnumHash> rmap; + for(auto e: Enum()) { + rmap[e] = new vector(); + } + return rmap; +} + + + +void Analyzer::create_fillInfo() { + + fillInfo["FillLeadingJet"] = new FillVals(CUTS::eSusyCom, FILLER::Dipart, _Jet, _Jet); + fillInfo["FillGen"] = new FillVals(CUTS::eGen, FILLER::Single, _Gen); + fillInfo["FillTau1"] = new FillVals(CUTS::eRTau1, FILLER::Single, _Tau); + fillInfo["FillTau2"] = new FillVals(CUTS::eRTau2, FILLER::Single, _Tau); + fillInfo["FillMuon1"] = new FillVals(CUTS::eRMuon1, FILLER::Single, _Muon); + fillInfo["FillMuon2"] = new FillVals(CUTS::eRMuon2, FILLER::Single, _Muon); + fillInfo["FillElectron1"] = new FillVals(CUTS::eRElec1, FILLER::Single, _Electron); + fillInfo["FillElectron2"] = new FillVals(CUTS::eRElec2, FILLER::Single, _Electron); + + fillInfo["FillJet1"] = new FillVals(CUTS::eRJet1, FILLER::Single, _Jet); + fillInfo["FillJet2"] = new FillVals(CUTS::eRJet2, FILLER::Single, _Jet); + fillInfo["FillBJet"] = new FillVals(CUTS::eRBJet, FILLER::Single, _Jet); + fillInfo["FillCentralJet"] = new FillVals(CUTS::eRCenJet, FILLER::Single, _Jet); + + fillInfo["FillDiMuon"] = new FillVals(CUTS::eDiMuon, FILLER::Dipart, _Muon, _Muon); + fillInfo["FillDiTau"] = new FillVals(CUTS::eDiTau, FILLER::Dipart, _Tau, _Tau); + fillInfo["FillMetCuts"] = new FillVals(); + fillInfo["FillDiJet"] = new FillVals(CUTS::eDiJet, FILLER::Dipart, _Jet, _Jet); + + fillInfo["FillMuon1Tau1"] = new FillVals(CUTS::eMuon1Tau1, FILLER::Dipart, _Muon, _Tau); + fillInfo["FillMuon1Tau2"] = new FillVals(CUTS::eMuon1Tau1, FILLER::Dipart, _Muon, _Tau); + fillInfo["FillMuon2Tau1"] = new FillVals(CUTS::eMuon2Tau1, FILLER::Dipart, _Muon, _Tau); + fillInfo["FillMuon2Tau2"] = new FillVals(CUTS::eMuon2Tau2, FILLER::Dipart, _Muon, _Tau); + fillInfo["FillElectron1Tau1"] = new FillVals(CUTS::eElec1Tau1, FILLER::Dipart, _Electron, _Tau); + fillInfo["FillElectron1Tau2"] = new FillVals(CUTS::eElec1Tau1, FILLER::Dipart, _Electron, _Tau); + fillInfo["FillElectron2Tau1"] = new FillVals(CUTS::eElec2Tau1, FILLER::Dipart, _Electron, _Tau); + fillInfo["FillElectron2Tau2"] = new FillVals(CUTS::eElec2Tau2, FILLER::Dipart, _Electron, _Tau); + fillInfo["FillMuon1Electron1"] = new FillVals(CUTS::eMuon1Elec1, FILLER::Dipart, _Muon, _Electron); + fillInfo["FillMuon1Electron2"] = new FillVals(CUTS::eMuon1Elec1, FILLER::Dipart, _Muon, _Electron); + fillInfo["FillMuon2Electron1"] = new FillVals(CUTS::eMuon2Elec1, FILLER::Dipart, _Muon, _Electron); + fillInfo["FillMuon2Electron2"] = new FillVals(CUTS::eMuon2Elec2, FILLER::Dipart, _Muon, _Electron); + + //////I hate this solution so much. Its terrible + fillInfo["FillElectron1Electron2"] = new FillVals(CUTS::eDiElec, FILLER::Single, _Electron, _Electron); + fillInfo["FillMuon1Muon2"] = new FillVals(CUTS::eDiMuon, FILLER::Single, _Muon, _Muon); + fillInfo["FillTau1Tau2"] = new FillVals(CUTS::eDiTau, FILLER::Single, _Tau, _Tau); + + + + for(auto it: *histo.get_groups()) { + if(fillInfo[it] == nullptr) fillInfo[it] = new FillVals(); + } + + + +} + +void Analyzer::setupCR(string var, double val) { + smatch m; + regex part ("^(.+)_(.+)$"); + if(regex_match(var, m, part)) { + string name = m[1]; + string cut = "Fill" + name; + if(fillInfo.find(cut) == fillInfo.end()) { + cout << cut << " not found, put into fillInfo" << endl; + exit(1); + } + cout << cut << " " << m[2] << " " << val << " " << name << endl; + testVec.push_back(new CRTester(fillInfo.at(cut), m[2], val, name)); + } else { + cout << "Could not process line: " << var << endl; + exit(1); + } + +} + + + + +////destructor +Analyzer::~Analyzer() { + delete f; + delete _Electron; + delete _Muon; + delete _Tau; + delete _Jet; + if(!isData) delete _Gen; + + for(auto pair: fillInfo) { + delete pair.second; + } + + for(auto e: Enum()) { + delete goodParts[e]; + } + + for(int i=0; i < nTrigReq; i++) { + delete trigPlace[i]; + delete trigName[i]; + } +} + + +///resets values so analysis can start +void Analyzer::clear_values() { + for(auto e: Enum()) { + goodParts[e]->clear(); + } + deltaMEx=0; + deltaMEy=0; + sumpxForMht = 0.0; + sumpyForMht = 0.0; + sumptForHt = 0.0; + leadIndex=-1; + maxCut = 0; +} + +///Function that does most of the work. Calculates the number of each particle +void Analyzer::preprocess(int event) { + BOOM->GetEntry(event); + theMETVector.SetPxPyPzE(Met[0], Met[1], Met[2], sqrt(pow(Met[0],2) + pow(Met[1],2))); + pu_weight = (!isData && CalculatePUSystematics) ? hPU[(int)(nTruePU+1)] : 1.0; + isr_weight = (!isData && CalculateISRSystermatics) ? hISR[(double)(leadpt)] : 1.0; + + + // SET NUMBER OF GEN PARTICLES + if(!isData){ + getGoodGen(_Gen->pstats["Gen"]); + getGoodTauNu(); + } + + //////Smearing + smearLepton(*_Electron, CUTS::eGElec, _Electron->pstats["Smear"]); + smearLepton(*_Muon, CUTS::eGMuon, _Muon->pstats["Smear"]); + smearLepton(*_Tau, CUTS::eGTau, _Tau->pstats["Smear"]); + smearJet(_Jet->pstats["Smear"]); + + //////Triggers and Vertices + goodParts[CUTS::eRVertex]->resize(bestVertices); + TriggerCuts(*(trigPlace[0]), *(trigName[0]), CUTS::eRTrig1); + TriggerCuts(*(trigPlace[1]), *(trigName[1]), CUTS::eRTrig2); + updateMet(); + + // // SET NUMBER OF RECO PARTICLES + // // MUST BE IN ORDER: Muon/Electron, Tau, Jet + getGoodRecoLeptons(*_Electron, CUTS::eRElec1, CUTS::eGElec, _Electron->pstats["Elec1"]); + getGoodRecoLeptons(*_Electron, CUTS::eRElec2, CUTS::eGElec, _Electron->pstats["Elec2"]); + getGoodRecoLeptons(*_Muon, CUTS::eRMuon1, CUTS::eGMuon, _Muon->pstats["Muon1"]); + getGoodRecoLeptons(*_Muon, CUTS::eRMuon2, CUTS::eGMuon, _Muon->pstats["Muon2"]); + getGoodRecoLeptons(*_Tau, CUTS::eRTau1, CUTS::eGTau, _Tau->pstats["Tau1"]); + getGoodRecoLeptons(*_Tau, CUTS::eRTau2, CUTS::eGTau, _Tau->pstats["Tau2"]); + + getGoodRecoJets(CUTS::eRJet1, _Jet->pstats["Jet1"]); + getGoodRecoJets(CUTS::eRJet2, _Jet->pstats["Jet2"]); + getGoodRecoJets(CUTS::eRCenJet, _Jet->pstats["CentralJet"]); + getGoodRecoJets(CUTS::eRBJet, _Jet->pstats["BJet"]); + getGoodRecoJets(CUTS::eR1stJet, _Jet->pstats["FirstLeadingJet"]); + getGoodRecoJets(CUTS::eR2ndJet, _Jet->pstats["SecondLeadingJet"]); + + treatMuons_Met(); + + ///VBF Susy cut on leadin jets + VBFTopologyCut(distats["VBFSUSY"]); + + /////lepton lepton topology cuts + getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec1,CUTS::eRTau1, CUTS::eElec1Tau1, distats["Electron1Tau1"]); + getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau1, CUTS::eElec2Tau1, distats["Electron2Tau1"]); + getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec1, CUTS::eRTau2, CUTS::eElec1Tau2, distats["Electron1Tau2"]); + getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau2, CUTS::eElec2Tau2, distats["Electron2Tau2"]); + + getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau1, CUTS::eMuon1Tau1, distats["Muon1Tau1"]); + getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau2, CUTS::eMuon1Tau2, distats["Muon1Tau2"]); + getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau1, CUTS::eMuon2Tau1, distats["Muon2Tau1"]); + getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau2, CUTS::eMuon2Tau2, distats["Muon2Tau2"]); + + getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec1, CUTS::eMuon1Elec1, distats["Muon1Electron1"]); + getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec2, CUTS::eMuon1Elec2, distats["Muon1Electron2"]); + getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec1, CUTS::eMuon2Elec1, distats["Muon2Electron1"]); + getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec2, CUTS::eMuon2Elec2, distats["Muon2Electron2"]); + + ////DIlepton topology cuts + getGoodLeptonCombos(*_Tau, *_Tau, CUTS::eRTau1, CUTS::eRTau2, CUTS::eDiTau, distats["DiTau"]); + getGoodLeptonCombos(*_Electron, *_Electron, CUTS::eRElec1, CUTS::eRElec2, CUTS::eDiElec, distats["DiElectron"]); + getGoodLeptonCombos(*_Muon, *_Muon, CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eDiMuon, distats["DiMuon"]); + + ////Dijet cuts + getGoodDiJets(distats["DiJet"]); + + if(event % 50000 == 0) { + cout << "Event #" << event << endl; + } +} + + +////Reads cuts from Cuts.in file and see if the event has enough particles +void Analyzer::fillCuts() { + const unordered_map >* cut_info = histo.get_cuts(); + const vector* cut_order = histo.get_cutorder(); + + bool prevTrue = true; + maxCut=0; + + + for(size_t i = 0; i < cut_order->size(); i++) { + // for(vector::const_iterator it=cut_order->begin(); it != cut_order->end(); it++, i++) { + + string cut = cut_order->at(i); + if(isData && cut.find("Gen") != string::npos) continue; + + int min= cut_info->at(cut).first; + int max= cut_info->at(cut).second; + int nparticles = goodParts[cut_num.at(cut)]->size(); + if( (nparticles >= min) && (nparticles <= max || max == -1)) { + if((cut_num.at(cut) == CUTS::eR1stJet || cut_num.at(cut) == CUTS::eR2ndJet) && goodParts[cut_num.at(cut)]->at(0) == -1 ) { + prevTrue = false; + continue; ////dirty dirty hack + } + cuts_per[i]++; + cuts_cumul[i] += (prevTrue) ? 1 : 0; + maxCut += (prevTrue) ? 1 : 0; + } else prevTrue = false; + } + + +} + +/////// maxcut made -1 if doesn't pass all of the cuts +void Analyzer::CRfillCuts() { + const unordered_map >* cut_info = histo.get_cuts(); + const vector* cut_order = histo.get_cutorder(); + + maxCut=0; + + for(size_t i = 0; i < cut_order->size(); i++) { + string cut = cut_order->at(i); + if(isData && cut.find("Gen") != string::npos) continue; + + int min= cut_info->at(cut).first; + int max= cut_info->at(cut).second; + int nparticles = goodParts[cut_num.at(cut)]->size(); + if( (nparticles < min) || (nparticles > max && max != -1)) { + maxCut = -1; + return; + } else if((cut_num.at(cut) == CUTS::eR1stJet || cut_num.at(cut) == CUTS::eR2ndJet) && goodParts[cut_num.at(cut)]->at(0) == -1 ) { + maxCut = -1; + return; + } + } + + int factor = crbins; + for(auto tester: testVec) { + factor /= 2; + /////get variable value from maper.first. + if(tester->test(this)) { ///pass cut + maxCut += factor; + } + } + if(isData && blinded && maxCut == SignalRegion) return; + cuts_per[maxCut]++; +} + + +///Prints the number of events that passed each cut per event and cumulatively +//done at the end of the analysis +void Analyzer::printCuts() { + vector cut_order; + if(crbins > 1) cut_order = *(histo.get_folders()); + else cut_order = *(histo.get_cutorder()); + + cout.setf(ios::floatfield,ios::fixed); + cout<::iterator it=_Jet->smearP.begin(); it!=_Jet->smearP.end(); it++, i++) { + if( (it->Pt() > distats["Run"].dmap.at("JetPtForMhtAndHt")) && (fabs(it->Eta()) < distats["Run"].dmap.at("JetEtaForMhtAndHt")) ) { + if(distats["Run"].bmap.at("ApplyJetLooseIDforMhtAndHt") && !passedLooseJetID(i) ) continue; + + sumpxForMht -= it->Px(); + sumpyForMht -= it->Py(); + sumptForHt += it->Pt(); + } + } + phiForMht = atan2(sumpyForMht,sumpxForMht); + theMETVector.SetPxPyPzE(theMETVector.Px()+deltaMEx, theMETVector.Py()+deltaMEy, theMETVector.Pz(), + TMath::Sqrt(pow(theMETVector.Px()+deltaMEx,2) + pow(theMETVector.Py()+deltaMEy,2))); + + /////MET CUTS + + if(!passCutRange("Met", theMETVector.Pt(), distats["Run"])) return; + if(distats["Run"].bmap.at("DiscrByHT") && sumptForHt < distats["Run"].dmap.at("HtCut")) return; + + goodParts[CUTS::eMET]->push_back(1); +} + +void Analyzer::treatMuons_Met() { + // Neutrino update before calculation + deltaMEx = 0; + deltaMEy = 0; + + if(distats["Run"].bmap.at("TreatMuonsAsNeutrinos")) { + for(auto it : *goodParts[CUTS::eRMuon1]) { + if(find(goodParts[CUTS::eRMuon2]->begin(), goodParts[CUTS::eRMuon2]->end(), it) != goodParts[CUTS::eRMuon2]->end() ) continue; + deltaMEx += _Muon->smearP.at(it).Px(); + deltaMEy += _Muon->smearP.at(it).Py(); + } + for(auto it : *goodParts[CUTS::eRMuon2]) { + deltaMEx += _Muon->smearP.at(it).Px(); + deltaMEy += _Muon->smearP.at(it).Py(); + } + } + if(distats["Run"].bmap.at("TreatMuonsAsTaus")) { + + if(goodParts[CUTS::eRMuon1]->size() == 1) { + + int muon = (int)goodParts[CUTS::eRMuon1]->at(0); + + + + + double rand1 = 1;//Tau_HFrac->GetRandom(); + double rand2 = 0;//Tau_Resol->GetRandom(); + + double ETau_Pt = _Muon->smearP.at(muon).Pt()*rand1*(rand2+1.0); + double ETau_Eta = _Muon->smearP.at(muon).Eta(); + double ETau_Phi=normPhi(_Muon->smearP.at(muon).Phi());//+DeltaNu_Phi->GetRandom()); + double ETau_Energy = 0.; + + + // double theta = 2.0*TMath::ATan2(1.0,TMath::Exp(_Muon->smearP.at(muon).Eta())); + // double sin_theta = TMath::Sin(theta); + // double P_tau = ETau_Pt/sin_theta; + + // //ETau_Energy = sqrt(pow(P_tau, 2) + pow(1.77699, 2)); + // ETau_Energy = sqrt( pow(1.77699, 2) + pow(ETau_Pt, 2) + pow(_Muon->smearP.at(muon).Pz(), 2)); + + /*if(ETau_Pt <= 15.0){ + while(ETau_Pt<=15.0){ + rand1 = Tau_HFrac->GetRandom(); + rand2 = Tau_Resol->GetRandom(); + ETau_Pt = _Muon->smearP.at(muon).Pt()*rand1*(rand2+1.0); + ENu_Pt = _Muon->smearP.at(muon).Pt()-ETau_Pt; + } + } + */ + + TLorentzVector Emu_Tau; + Emu_Tau.SetPtEtaPhiE(ETau_Pt, ETau_Eta, ETau_Phi, ETau_Energy); + _Muon->smearP.clear(); + + if (ETau_Pt >= _Muon->pstats["Muon1"].pmap.at("PtCut").first ){ + _Muon->smearP.push_back(Emu_Tau); + deltaMEx += (_Muon->smearP.at(muon).Px()-Emu_Tau.Px()); + deltaMEy += (_Muon->smearP.at(muon).Py()-Emu_Tau.Py()); + + } + } + } + + + // recalculate MET + theMETVector.SetPxPyPzE(theMETVector.Px()+deltaMEx, theMETVector.Py()+deltaMEy, theMETVector.Pz(), + TMath::Sqrt(pow(theMETVector.Px()+deltaMEx,2) + pow(theMETVector.Py()+deltaMEy,2))); + + /////MET CUTS + goodParts[CUTS::eMET]->clear(); + + if(passCutRange("Met", theMETVector.Pt(), distats["Run"])) { + goodParts[CUTS::eMET]->push_back(1); + } +} + + +/////sets up other values needed for analysis that aren't particle specific +void Analyzer::setupGeneral(TTree* BOOM, string infile) { + SetBranch("Trigger_decision", Trigger_decision); + SetBranch("Trigger_names", Trigger_names); + SetBranch("nTruePUInteractions", nTruePU); + SetBranch("bestVertices", bestVertices); + SetBranch("weightevt", gen_weight); + SetBranch("Met_type1PF_px", Met[0]); + SetBranch("Met_type1PF_py", Met[1]); + SetBranch("Met_type1PF_pz", Met[2]); + + read_info(FILESPACE + "ElectronTau_info.in"); + read_info(FILESPACE + "MuonTau_info.in"); + read_info(FILESPACE + "MuonElectron_info.in"); + read_info(FILESPACE + "DiParticle_info.in"); + read_info(FILESPACE + "VBFCuts_info.in"); + read_info(FILESPACE + "Run_info.in"); + + BOOM->GetEntry(0); + for(int i = 0; i < nTrigReq; i++) { + for(int j = 0; j < (int)trigName[i]->size(); j++) { + for(int k = 0; k < (int)Trigger_names->size(); k++) { + if(Trigger_names->at(k).find(trigName[i]->at(j)) != string::npos) { + trigPlace[i]->at(j) = k; + break; + } + } + } + } + BOOM->SetBranchStatus("Trigger_names", 0); + +} + + +///parsing method that gets info on diparts and basic run info +//put in map called "distats" +void Analyzer::read_info(string filename) { + typedef boost::tokenizer > tokenizer; + ifstream info_file(filename); + boost::char_separator sep(", \t"); + + if(!info_file) { + std::cout << "could not open file " << filename < stemp; + + for(tokenizer::iterator iter = tokens.begin();iter != tokens.end(); iter++) { + if( ((*iter)[0] == '/' && (*iter)[0] == '/') || ((*iter)[0] == '#') ) break; + stemp.push_back(*iter); + } + if(stemp.size() == 0) continue; + else if(stemp.size() == 1) { + group = stemp[0]; + continue; + } else if(group == "") { + cout << "error in " << filename << "; no groups specified for data" << endl; + exit(1); + } else if(stemp.size() == 2) { + if(stemp.at(0).find("Trigger") != string::npos) { + int ntrig = (stemp.at(0).find("1") != string::npos) ? 0 : 1; + trigName[ntrig]->push_back(stemp.at(1)); + trigPlace[ntrig]->push_back(0); + continue; + } + + char* p; + strtod(stemp[1].c_str(), &p); + if(stemp[1] == "1" || stemp[1] == "true") distats[group].bmap[stemp[0]]=true; + else if(stemp[1] == "0" || stemp[1] == "false") distats[group].bmap[stemp[0]]=false; + else if(*p) distats[group].smap[stemp[0]] = stemp[1]; + else distats[group].dmap[stemp[0]]=stod(stemp[1]); + + } else if(stemp.size() == 3) distats[group].pmap[stemp[0]] = make_pair(stod(stemp[1]), stod(stemp[2])); + } + info_file.close(); +} + + +// This code works pretty much (at least in my tests), but dagnabit, its ugly. They all can't be winners, at least now... +void Analyzer::setCutNeeds() { + + + + for(auto e: Enum()) { + need_cut[e] = false; + } + + for(auto it: *histo.get_groups()) { + if(fillInfo[it]->type == FILLER::None) continue; + need_cut[fillInfo[it]->ePos] = true; + if(adjList.find(fillInfo[it]->ePos) == adjList.end()) continue; + for(auto e: adjList.at(fillInfo[it]->ePos)) { + need_cut[e] = true; + } + } + + for(auto it: *histo.get_cutorder()) { + need_cut[cut_num.at(it)] = true; + if(adjList.find(cut_num.at(it)) == adjList.end()) continue; + for(auto e: adjList.at(cut_num.at(it))) { + need_cut[e] = true; + } + } + + for(auto it: testVec) { + CUTS ePos = it->info->ePos; + need_cut[ePos] = true; + if(adjList.find(ePos) == adjList.end()) continue; + for(auto e: adjList.at(ePos)) { + need_cut[e] = true; + } + } + + for(auto it: _Jet->extraCuts) { + need_cut[it] = true; + if(adjList.find(it) == adjList.end()) continue; + for(auto e: adjList.at(it)) { + need_cut[e] = true; + } + } + + for(auto it: jetCuts) { + if(need_cut[it]) { + for(auto it2: _Jet->overlapCuts(it)) { + need_cut[it2] = true; + if(adjList.find(it2) == adjList.end()) continue; + for(auto e: adjList.at(it2)) { + need_cut[e] = true; + } + } + } + } + + if( !(need_cut[CUTS::eRTau1] || need_cut[CUTS::eRTau2]) ) { + _Tau->unBranch(); + } else { + for(auto it: _Tau->extraCuts) { + need_cut[it] = true; + if(adjList.find(it) == adjList.end()) continue; + for(auto e: adjList.at(it)) { + need_cut[e] = true; + } + } + } + + if( !(need_cut[CUTS::eRElec1] || need_cut[CUTS::eRElec2]) ) { + _Electron->unBranch(); + } else { + for(auto it: _Electron->extraCuts) { + need_cut[it] = true; + if(adjList.find(it) == adjList.end()) continue; + for(auto e: adjList.at(it)) { + need_cut[e] = true; + } + } + } + + if( !(need_cut[CUTS::eRMuon1] || need_cut[CUTS::eRMuon2]) ) { + _Muon->unBranch(); + } else { + for(auto it: _Muon->extraCuts) { + need_cut[it] = true; + if(adjList.find(it) == adjList.end()) continue; + for(auto e: adjList.at(it)) { + need_cut[e] = true; + } + } + } + + if(isData) return; + + bool passGen = false; + for(auto e: genCuts) { + passGen = passGen || need_cut[e]; + + } + + if(!passGen) _Gen->unBranch(); + else { + if(need_cut[CUTS::eGTau]) genMaper[15] = new GenFill(2, CUTS::eGTau); + if(need_cut[CUTS::eGTop]) genMaper[6] = new GenFill(2, CUTS::eGTop); + if(need_cut[CUTS::eGElec]) genMaper[11] = new GenFill(1, CUTS::eGElec); + if(need_cut[CUTS::eGMuon]) genMaper[13] = new GenFill(1, CUTS::eGMuon); + if(need_cut[CUTS::eGZ]) genMaper[23] = new GenFill(2, CUTS::eGZ); + if(need_cut[CUTS::eGW]) genMaper[24] = new GenFill(2, CUTS::eGW); + if(need_cut[CUTS::eGHiggs]) genMaper[25] = new GenFill(2, CUTS::eGHiggs); + // , CUTS::eNuTau + } +} + + +///Smears lepton only if specified and not a data file. Otherwise, just filles up lorentz vectors +//of the data into the vector container smearP with is in each lepton object. +void Analyzer::smearLepton(Lepton& lepton, CUTS eGenPos, const PartStats& stats) { + lepton.smearP.clear(); + + for(int i = 0; i < (int)lepton.pt->size(); i++) { + TLorentzVector tmpSmear; + tmpSmear.SetPtEtaPhiE(lepton.pt->at(i), lepton.eta->at(i), lepton.phi->at(i), lepton.energy->at(i)); + + if(isData || !stats.bmap.at("SmearTheParticle")) { + lepton.smearP.push_back(tmpSmear); + continue; + } + + TLorentzVector genVec = matchLeptonToGen(tmpSmear, lepton.pstats["Smear"],eGenPos); + if(genVec == TLorentzVector(0,0,0,0)) { + lepton.smearP.push_back(tmpSmear); + continue; + } + + double smearedPt = (genVec.Pt()*stats.dmap.at("PtScaleOffset")) + (tmpSmear.Pt() - genVec.Pt())*stats.dmap.at("PtSigmaOffset"); + double smearedEta =(genVec.Eta()*stats.dmap.at("EtaScaleOffset")) + (tmpSmear.Eta() - genVec.Eta())*stats.dmap.at("EtaSigmaOffset"); + double smearedPhi = (genVec.Phi() * stats.dmap.at("PhiScaleOffset")) + (tmpSmear.Phi() - genVec.Phi())*stats.dmap.at("PhiSigmaOffset"); + double smearedEnergy = (genVec.Energy()*stats.dmap.at("EnergyScaleOffset")) + (tmpSmear.Energy() - genVec.Energy())*stats.dmap.at("EnergySigmaOffset"); + + TLorentzVector final; + final.SetPtEtaPhiE(smearedPt, smearedEta, smearedPhi, smearedEnergy); + lepton.smearP.push_back(final); + deltaMEx += tmpSmear.Px() - final.Px(); + deltaMEy += tmpSmear.Py() - final.Py(); + + } + +} + +///Same as smearlepton, just jet specific +void Analyzer::smearJet(const PartStats& stats) { + _Jet->smearP.clear(); + + TLorentzVector jetV; + + for(size_t i=0; i< _Jet->pt->size(); i++) { + jetV.SetPtEtaPhiE(_Jet->pt->at(i), _Jet->eta->at(i), _Jet->phi->at(i), _Jet->energy->at(i)); + + if(isData || !stats.bmap.at("SmearTheJet")) { + _Jet->smearP.push_back(jetV); + continue; + } + + if(JetMatchesLepton(*_Muon, jetV, stats.dmap.at("MuonMatchingDeltaR"), CUTS::eGMuon) || + JetMatchesLepton(*_Tau, jetV, stats.dmap.at("TauMatchingDeltaR"), CUTS::eGTau) || + JetMatchesLepton(*_Electron, jetV,stats.dmap.at("ElectronMatchingDeltaR"), CUTS::eGElec)){ + + _Jet->smearP.push_back(jetV); + + continue; + } + + _Jet->smearP.push_back(stats.dmap.at("JetEnergyScaleOffset") * jetV); + deltaMEx += (1 - stats.dmap.at("JetEnergyScaleOffset"))*jetV.Px(); + deltaMEy += (1 -stats.dmap.at("JetEnergyScaleOffset"))*jetV.Py(); + } +} + +/////checks if jet is close to a lepton and the lepton is a gen particle, then the jet is a lepton object, so +//this jet isn't smeared +bool Analyzer::JetMatchesLepton(const Lepton& lepton, const TLorentzVector& jetV, double partDeltaR, CUTS eGenPos) { + TLorentzVector tempV; + for(size_t j = 0; j < lepton.pt->size(); j++) { + tempV.SetPtEtaPhiE(lepton.pt->at(j), lepton.eta->at(j), lepton.phi->at(j), lepton.energy->at(j)); + if(jetV.DeltaR(tempV) < partDeltaR && matchLeptonToGen(tempV, lepton.pstats.at("Smear"), eGenPos) != TLorentzVector(0,0,0,0)) return true; + } + return false; +} + + +////checks if reco object matchs a gen object. If so, then reco object is for sure a correctly identified particle +TLorentzVector Analyzer::matchLeptonToGen(const TLorentzVector& lvec, const PartStats& stats, CUTS ePos) { + if(ePos == CUTS::eGTau) { + return matchTauToGen(lvec, stats.dmap.at("GenMatchingDeltaR")); + } + TLorentzVector genVec = TLorentzVector(0,0,0,0); + + for(vec_iter it=goodParts[ePos]->begin(); it !=goodParts[ePos]->end();it++) { + genVec.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + if(lvec.DeltaR(genVec) <= stats.dmap.at("GenMatchingDeltaR")) { + if(stats.bmap.at("UseMotherID") && abs(_Gen->motherpdg_id->at(*it)) != stats.dmap.at("MotherID")) continue; + return genVec; + } + } + + return TLorentzVector(0,0,0,0); +} + + +///Tau specific matching fucntion. Works by seeing if a tau doesn't decay into a muon/electron and has +//a matching tau neutrino showing that the tau decayed and decayed hadronically +TLorentzVector Analyzer::matchTauToGen(const TLorentzVector& lvec, double lDeltaR) { + TLorentzVector genVec(0,0,0,0); + int i = 0; + for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it !=goodParts[CUTS::eGTau]->end();it++, i++) { + int nu = goodParts[CUTS::eNuTau]->at(i); + if(nu == -1) continue; + + TLorentzVector tmp1, tmp2; + tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); + genVec = tmp1 - tmp2; + if(lvec.DeltaR(genVec) <= lDeltaR) { + return genVec; + } + } + return TLorentzVector(0,0,0,0); + +} + + +////Calculates the number of gen particles. Based on id number and status of each particle +void Analyzer::getGoodGen(const PartStats& stats) { + + for(size_t j = 0; j < _Gen->pt->size(); j++) { + int id = abs(_Gen->pdg_id->at(j)); + if(genMaper[id] != nullptr && _Gen->pdg_id->at(j) == genMaper[id]->status) { + if(id == 15 && (_Gen->pt->at(j) < stats.pmap.at("TauPtCut").first || _Gen->pt->at(j) > stats.pmap.at("TauPtCut").second || abs(_Gen->eta->at(j)) > stats.dmap.at("TauEtaCut"))) continue; + goodParts[genMaper[id]->ePos]->push_back(j); + } + } + + + // if((abs(_Gen->pdg_id->at(j)) == particle_id) && (_Gen->status->at(j) == particle_status)) { + // goodParts[ePos]->push_back(j); + // } + //} + +} + +////Tau neutrino specific function used for calculating the number of hadronic taus +void Analyzer::getGoodTauNu() { + + for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it !=goodParts[CUTS::eGTau]->end();it++) { + bool leptonDecay = false; + int nu = -1; + for(size_t j = 0; j < _Gen->pt->size(); j++) { + if(abs(_Gen->BmotherIndex->at(j)) == (*it)) { + if( (abs(_Gen->pdg_id->at(j)) == 16) && (abs(_Gen->motherpdg_id->at(j)) == 15) && (_Gen->status->at(_Gen->BmotherIndex->at(j)) == 2) ) nu = j; + else if( (abs(_Gen->pdg_id->at(j)) == 12) || (abs(_Gen->pdg_id->at(j)) == 14) ) leptonDecay = true; + } + } + nu = (leptonDecay) ? -1 : nu; + goodParts[CUTS::eNuTau]->push_back(nu); + } + +} + +///Function used to find the number of reco leptons that pass the various cuts. +///Divided into if blocks for the different lepton requirements. +void Analyzer::getGoodRecoLeptons(const Lepton& lep, const CUTS ePos, const CUTS eGenPos, const PartStats& stats) { + if(! need_cut[ePos]) return; + int i = 0; + + for(vector::const_iterator it=lep.smearP.begin(); it != lep.smearP.end(); it++, i++) { + TLorentzVector lvec = (*it); + + if (fabs(lvec.Eta()) > stats.dmap.at("EtaCut")) continue; + if (lvec.Pt() < stats.pmap.at("PtCut").first || lvec.Pt() > stats.pmap.at("PtCut").second) continue; + + if((lep.pstats.at("Smear").bmap.at("MatchToGen")) && (!isData)) { /////check + if(matchLeptonToGen(lvec, lep.pstats.at("Smear") ,eGenPos) == TLorentzVector(0,0,0,0)) continue; + } + + if (stats.bmap.at("DoDiscrByIsolation")) { + double firstIso = (stats.pmap.find("IsoSumPtCutValue") != stats.pmap.end()) ? stats.pmap.at("IsoSumPtCutValue").first : ival(ePos) - ival(CUTS::eRTau1) + 1; + double secondIso = (stats.pmap.find("IsoSumPtCutValue") != stats.pmap.end()) ? stats.pmap.at("IsoSumPtCutValue").second : 0; + if(!lep.get_Iso(i, firstIso, secondIso)) continue; + } + + if ((lep.type != PType::Tau) && stats.bmap.at("DiscrIfIsZdecay")) { + if(isZdecay(lvec, lep)) continue; + } + if(!passCutRange("MetDphi", absnormPhi(lvec.Phi() - theMETVector.Phi()), stats)) continue; + if(!passCutRange("MetMt", calculateLeptonMetMt(lvec), stats)) continue; + + + if(lep.type == PType::Muon) { ////////////////MUON CUTS///////////// + if(stats.bmap.at("DoDiscrByTightID") && (_Muon->tight->at(i) == 0)) continue; + if(stats.bmap.at("DoDiscrBySoftID") && (_Muon->soft->at(i) == 0)) continue; + + } else if(lep.type == PType::Electron) { ///////////////ELECTRON CUT/////////// + + //----Require electron to pass ID discriminators + if(stats.bmap.at("DoDiscrByVetoID") && (_Electron->isPassVeto->at(i) == 0)) continue; + if(stats.bmap.at("DoDiscrByLooseID") && (_Electron->isPassLoose->at(i) == 0)) continue; + if(stats.bmap.at("DoDiscrByMediumID") && (_Electron->isPassMedium->at(i) == 0)) continue; + if(stats.bmap.at("DoDiscrByTightID") && (_Electron->isPassTight->at(i) == 0)) continue; + if(stats.bmap.at("DoDiscrByHEEPID") && (_Electron->isPassHEEPId->at(i) == 0)) continue; + + + } else if(lep.type == PType::Tau) { /////////////TAU CUT///////////////// + if (stats.bmap.at("DoDiscrByLeadTrack")) { + if(_Tau->leadChargedCandPt->at(i) < stats.dmap.at("LeadTrackThreshold")) continue; + } + + // ----Require 1 or 3 prongs + if(stats.smap.at("DiscrByProngType").find("hps") != string::npos && _Tau->decayModeFindingNewDMs->at(i) == 0) continue; + if(!passProng(stats.smap.at("DiscrByProngType"), _Tau->nProngs->at(i))) continue; + + // ----Electron and Muon vetos + vector* against = (ePos == CUTS::eRTau1) ? _Tau->againstElectron.first : _Tau->againstElectron.second; + if (stats.bmap.at("DoDiscrAgainstElectron") && against->at(i) == 0) continue; + else if (stats.bmap.at("SelectTausThatAreElectrons") && against->at(i) > 0) continue; + + against = (ePos == CUTS::eRTau1) ? _Tau->againstMuon.first : _Tau->againstMuon.second; + if (stats.bmap.at("DoDiscrAgainstMuon") && against->at(i) == 0) continue; + else if (stats.bmap.at("SelectTausThatAreMuons") && against->at(i) > 0) continue; + + if (stats.bmap.at("DoDiscrByCrackCut") && isInTheCracks(lvec.Eta())) continue; + + // ----anti-overlap requirements + if (stats.bmap.at("RemoveOverlapWithMuon1s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon1, stats.dmap.at("Muon1MatchingDeltaR"))) continue; + if (stats.bmap.at("RemoveOverlapWithMuon2s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon2, stats.dmap.at("Muon2MatchingDeltaR"))) continue; + if (stats.bmap.at("RemoveOverlapWithElectron1s") && isOverlaping(lvec, *_Electron, CUTS::eRElec1, stats.dmap.at("Electron1MatchingDeltaR"))) continue; + if (stats.bmap.at("RemoveOverlapWithElectron2s") && isOverlaping(lvec, *_Electron, CUTS::eRElec2, stats.dmap.at("Electron2MatchingDeltaR"))) continue; + } + goodParts[ePos]->push_back(i); + } + +} + +////Jet specific function for finding the number of jets that pass the cuts. +//used to find the nubmer of good jet1, jet2, central jet, 1st and 2nd leading jets and bjet. +void Analyzer::getGoodRecoJets(CUTS ePos, const PartStats& stats) { + if(! need_cut[ePos]) return; + int i=0; + + + for(vector::iterator it=_Jet->smearP.begin(); it != _Jet->smearP.end(); it++, i++) { + TLorentzVector lvec = (*it); + ///if else loop for central jet requirements + + if( ePos == CUTS::eRCenJet) { + if(fabs(lvec.Eta()) > 2.5) continue; + } else if (fabs(lvec.Eta()) < stats.pmap.at("EtaCut").first || fabs(lvec.Eta()) > stats.pmap.at("EtaCut").second) continue; + + if (lvec.Pt() < stats.dmap.at("PtCut")) continue; + + /// BJet specific + if(ePos == CUTS::eRBJet) { + if(stats.bmap.at("ApplyJetBTagging") && _Jet->bDiscriminator->at(i) <= stats.dmap.at("JetBTaggingCut")) continue; + if((stats.bmap.at("MatchBToGen")) && !isData && abs(_Jet->partonFlavour->at(i)) != 5) continue; + } else if (stats.bmap.at("ApplyLooseID") && !passedLooseJetID(i)) continue; + + // ----anti-overlap requirements + if(stats.bmap.at("RemoveOverlapWithMuon1s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon1, stats.dmap.at("Muon1MatchingDeltaR"))) continue; + if(stats.bmap.at("RemoveOverlapWithMuon2s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon2, stats.dmap.at("Muon2MatchingDeltaR"))) continue; + if(stats.bmap.at("RemoveOverlapWithElectron1s") && isOverlaping(lvec, *_Electron, CUTS::eRElec1, stats.dmap.at("Electron1MatchingDeltaR"))) continue; + if(stats.bmap.at("RemoveOverlapWithElectron2s") && isOverlaping(lvec, *_Electron, CUTS::eRElec2, stats.dmap.at("Electron2MatchingDeltaR"))) continue; + if(stats.bmap.at("RemoveOverlapWithTau1s") && isOverlaping(lvec, *_Tau, CUTS::eRTau1, stats.dmap.at("Tau1MatchingDeltaR"))) continue; + if(stats.bmap.at("RemoveOverlapWithTau2s") && isOverlaping(lvec, *_Tau, CUTS::eRTau2, stats.dmap.at("Tau2MatchingDeltaR"))) continue; + + /////fill up array + goodParts[ePos]->push_back(i); + } + + if(ePos == CUTS::eR1stJet || ePos == CUTS::eR2ndJet) { + int potential = -1; + double prevPt = -1; + for(vec_iter leadit = goodParts[ePos]->begin(); leadit != goodParts[ePos]->end(); ++leadit) { + if(((ePos == CUTS::eR2ndJet && (*leadit) != leadIndex) || ePos == CUTS::eR1stJet) && _Jet->smearP.at(*leadit).Pt() > prevPt) { + potential = (*leadit); + prevPt = _Jet->smearP.at(*leadit).Pt(); + } + } + goodParts[ePos]->clear(); + goodParts[ePos]->push_back(potential); + if(ePos == CUTS::eR1stJet) leadIndex = goodParts[CUTS::eR1stJet]->at(0); + } + +} + +///function to see if a lepton is overlapping with another particle. Used to tell if jet or tau +//came ro decayed into those leptons +bool Analyzer::isOverlaping(const TLorentzVector& lvec, Lepton& overlapper, CUTS ePos, double MatchingDeltaR) { + for(vec_iter it=goodParts[ePos]->begin(); it != goodParts[ePos]->end(); it++) { + if(lvec.DeltaR(overlapper.smearP.at(*it)) < MatchingDeltaR) return true; + } + return false; +} + +///Tests if tau decays into the specified number of jet prongs. +bool Analyzer::passProng(string prong, int value) { + return ( (prong.find("1") != string::npos && value == 1) || + (prong.find("2") != string::npos && value == 2) || + (prong.find("3") != string::npos && value == 3) ); +} + + +////Tests if tau is within the cracks of the detector (the specified eta ranges) +bool Analyzer::isInTheCracks(float etaValue){ + return (fabs(etaValue) < 0.018 || + (fabs(etaValue)>0.423 && fabs(etaValue)<0.461) || + (fabs(etaValue)>0.770 && fabs(etaValue)<0.806) || + (fabs(etaValue)>1.127 && fabs(etaValue)<1.163) || + (fabs(etaValue)>1.460 && fabs(etaValue)<1.558)); +} + + +//Tests if a jet meets a litany of different tests +bool Analyzer::passedLooseJetID(int nobj) { + if (_Jet->neutralHadEnergyFraction->at(nobj) >= 0.99) return false; + if (_Jet->neutralEmEmEnergyFraction->at(nobj) >= 0.99) return false; + if (_Jet->numberOfConstituents->at(nobj) <= 1) return false; + if (_Jet->muonEnergyFraction->at(nobj) >= 0.80) return false; + if ( (fabs(_Jet->smearP.at(nobj).Eta()) < 2.4) && + ((_Jet->chargedHadronEnergyFraction->at(nobj) <= 0.0) || + (_Jet->chargedMultiplicity->at(nobj) <= 0.0) || + (_Jet->chargedEmEnergyFraction->at(nobj) >= 0.99) )) return false; + return true; +} + + +///sees if the event passed one of the two cuts provided +void Analyzer::TriggerCuts(vector& prevTrig, const vector& trigvec, CUTS ePos) { + if(! need_cut[ePos]) return; + for(int i = 0; i < (int)trigvec.size(); i++) { + if(Trigger_decision->at(prevTrig.at(i)) == 1) { + goodParts[ePos]->push_back(0); + return; + } + } +} + + +////VBF specific cuts dealing with the leading jets. +void Analyzer::VBFTopologyCut(const PartStats& stats) { + if(! need_cut[CUTS::eSusyCom]) return; + + if(goodParts[CUTS::eR1stJet]->at(0) == -1 || goodParts[CUTS::eR2ndJet]->at(0) == -1) return; + + TLorentzVector ljet1 = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)); + TLorentzVector ljet2 = _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); + + if(!passCutRange("Mass", (ljet1 + ljet2).M(), stats)) return; + if(!passCutRange("Pt", (ljet1 + ljet2).Pt(), stats)) return; + if(!passCutRange("DeltaEta", abs(ljet1.Eta() - ljet2.Eta()), stats)) return; + if(!passCutRange("DeltaEta", absnormPhi(ljet1.Phi() - ljet2.Phi()), stats)) return; + + if(stats.bmap.at("DiscrByOSEta")) { + if((ljet1.Eta() * ljet2.Eta()) >= 0) return; + } + + double dphi1 = normPhi(ljet1.Phi() - theMETVector.Phi()); + double dphi2 = normPhi(ljet2.Phi() - theMETVector.Phi()); + double r1, r2, alpha; + + if(stats.bmap.at("DiscrByR1")) { + r1 = sqrt( pow(dphi1,2.0) + pow((TMath::Pi() - dphi2),2.0) ); + if(r1 < stats.pmap.at("R1Cut").first || r1 > stats.pmap.at("R1Cut").second) return; + + } + if(stats.bmap.at("DiscrByR2")) { + r2 = sqrt( pow(dphi2,2.0) + pow((TMath::Pi() - dphi1),2.0) ); + if(r2 < stats.pmap.at("R2Cut").first || r2 > stats.pmap.at("R2Cut").second) return; + } + if(stats.bmap.at("DiscrByAlpha")) { + TLorentzVector addVec = ljet1 + ljet2; + alpha = (addVec.M() > 0) ? ljet2.Pt() / addVec.M() : -1; + if(alpha < stats.pmap.at("AlphaCut").first || alpha > stats.pmap.at("AlphaCut").second) return; + } + if( !passCutRange("Dphi1", abs(dphi1), stats)) return; + if( !passCutRange("Dphi2", abs(dphi2), stats)) return; + + goodParts[CUTS::eSusyCom]->push_back(0); +} + +inline bool Analyzer::passCutRange(string CutName, double value, const PartStats& stats) { + return ( !(stats.bmap.at("DiscrBy" + CutName)) || (value > stats.pmap.at(CutName + "Cut").first && value < stats.pmap.at(CutName + "Cut").second) ); + +} + + +//-----Calculate lepton+met transverse mass +double Analyzer::calculateLeptonMetMt(const TLorentzVector& Tobj) { + double px = Tobj.Px() + theMETVector.Px(); + double py = Tobj.Py() + theMETVector.Py(); + double et = Tobj.Et() + theMETVector.Energy(); //TMath::Sqrt((theMETVector.Px() * theMETVector.Px()) + (theMETVector.Py() * theMETVector.Py())); + double mt2 = et*et - (px*px + py*py); + return (mt2 >= 0) ? sqrt(mt2) : -1; +} + + +/////Calculate the diparticle mass based on how to calculate it +///can use Collinear Approximation, which can fail (number failed available in a histogram) +///can use VectorSumOfVisProductAndMet which is sum of particles and met +///Other which is adding without met +double Analyzer::diParticleMass(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2, string howCalc) { + bool ratioNotInRange = false; + TLorentzVector The_LorentzVect; + + + //////check this equation///// + if(howCalc == "CollinearApprox") { + double denominator = (Tobj1.Px() * Tobj2.Py()) - (Tobj2.Px() * Tobj1.Py()); + double x1 = (Tobj2.Py()*theMETVector.Px() - Tobj2.Px()*theMETVector.Py())/denominator; + double x2 = (Tobj1.Px()*theMETVector.Py() - Tobj1.Py()*theMETVector.Px())/denominator; + ratioNotInRange=!((x1 < 0.) && (x2 < 0.)); + if (!ratioNotInRange) { + The_LorentzVect.SetPxPyPzE( (Tobj1.Px()*(1 + x1) + Tobj2.Px()*(1+x2)), (Tobj1.Py()*(1+x1) + Tobj2.Py()*(1+x2)), (Tobj1.Pz()*(1+x1) + Tobj2.Pz()*(1+x2)), (Tobj1.Energy()*(1+x1) + Tobj2.Energy()*(1+x2)) ); + return The_LorentzVect.M(); + } + } + + if(howCalc == "VectorSumOfVisProductsAndMet" || ratioNotInRange) { + return (Tobj1 + Tobj2 + theMETVector).M(); + } + + return (Tobj1 + Tobj2).M(); +} + +////Tests if the CollinearApproximation works for finding the mass of teh particles +bool Analyzer::passDiParticleApprox(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2, string howCalc) { + if(howCalc == "CollinearApprox") { + double x1_numerator = (Tobj1.Px() * Tobj2.Py()) - (Tobj2.Px() * Tobj1.Py()); + double x1_denominator = (Tobj2.Py() * (Tobj1.Px() + theMETVector.Px())) - (Tobj2.Px() * (Tobj1.Py() + theMETVector.Py())); + double x1 = ( x1_denominator != 0. ) ? x1_numerator/x1_denominator : -1.; + double x2_numerator = x1_numerator; + double x2_denominator = (Tobj1.Px() * (Tobj2.Py() + theMETVector.Py())) - (Tobj1.Py() * (Tobj2.Px() + theMETVector.Px())); + double x2 = ( x2_denominator != 0. ) ? x2_numerator/x2_denominator : -1.; + return (x1 > 0. && x1 < 1.) && (x2 > 0. && x2 < 1.); + } else { + return true; + } +} + + + + +/////abs for values +///Find the number of lepton combos that pass the dilepton cuts +void Analyzer::getGoodLeptonCombos(Lepton& lep1, Lepton& lep2, CUTS ePos1, CUTS ePos2, CUTS ePosFin, const PartStats& stats) { + if(! need_cut[ePosFin]) return; + bool sameParticle = (&lep1 == &lep2); + TLorentzVector part1, part2; + + for(vec_iter i1=goodParts[ePos1]->begin(); i1 != goodParts[ePos1]->end(); i1++) { + for(vec_iter i2=goodParts[ePos2]->begin(); i2 != goodParts[ePos2]->end(); i2++) { + if(sameParticle && (*i2) <= (*i1)) continue; + part1 = lep1.smearP.at(*i1); + part2 = lep2.smearP.at(*i2); + + if(stats.bmap.at("DiscrByDeltaR") && (part1.DeltaR(part2)) < stats.dmap.at("DeltaRCut")) continue; + if(stats.smap.at("DiscrByOSLSType") == "LS" && (lep1.charge->at(*i1) * lep2.charge->at(*i2) <= 0)) continue; + else if(stats.smap.at("DiscrByOSLSType") == "OS" && (lep1.charge->at(*i1) * lep2.charge->at(*i2) >= 0)) continue; + + if( !passCutRange("CosDphi", cos(absnormPhi( part1.Phi() - part2.Phi())), stats)) continue; + + // ----Mass window requirement + + if (stats.bmap.at("DiscrByMassReco")) { + double diMass = diParticleMass(part1,part2, stats.smap.at("HowCalculateMassReco")); + if( diMass < stats.pmap.at("MassCut").first || diMass > stats.pmap.at("MassCut").second) continue; + } + + if (stats.bmap.at("DiscrByCDFzeta2D")) { + double CDFzeta = stats.dmap.at("PZetaCutCoefficient") * getPZeta(part1, part2).first + + stats.dmap.at("PZetaVisCutCoefficient") * getPZeta(part1, part2).second; + if( CDFzeta < stats.pmap.at("CDFzeta2DCutValue").first || CDFzeta > stats.pmap.at("CDFzeta2DCutValue").second ) continue; + } + + /// optional cut + // if(stats.bmap.find("DeltaPtAndMet") != stats.bmap.end() && stats.bmap.at("DiscrByCosDphi_DeltaPtAndMet")) { + // double DPhi = absnormPhi(atan2(part1.Py() + part2.Py(), part1.Px() + part2.Px()) - theMETVector.Phi()); + // if( cos(DPhi) < stats.pmap.at("CosDphi_DeltaPtMetCut").first || cos(DPhi) > stats.pmap.at("CosDphi_DeltaPtMetCut").second) continue; + // } + + //////////abs on the difference???? + /////////////////// + + if (stats.bmap.at("DiscrByDeltaPtDivSumPt")) { + double ptDiv = (lep1.smearP.at(*i1).Pt() - lep2.smearP.at(*i2).Pt()) / (lep1.smearP.at(*i1).Pt() + lep2.smearP.at(*i2).Pt()); + if( ptDiv < stats.pmap.at("DeltaPtDivSumPtCutValue").first || ptDiv > stats.pmap.at("DeltaPtDivSumPtCutValue").second) continue; + } + + if (stats.bmap.at("DiscrByDeltaPt")) { + double deltaPt = lep1.smearP.at(*i1).Pt() - lep2.smearP.at(*i2).Pt(); + if(deltaPt < stats.pmap.at("DeltaPtCutValue").first || deltaPt > stats.pmap.at("DeltaPtCutValue").second) continue; + } + + ///Particlesp that lead to good combo are nGen * part1 + part2 + /// final / nGen = part1 (make sure is integer) + /// final % nGen = part2 + goodParts[ePosFin]->push_back((*i1)*BIG_NUM + (*i2)); + } + } +} + + +//////////////LOOK INTO DIJET PICKING +///////HOW TO GET RID OF REDUNCENCIES?? + +/////Same as gooddilepton, just jet specific +void Analyzer::getGoodDiJets(const PartStats& stats) { + if(! need_cut[CUTS::eDiJet]) return; + TLorentzVector jet1, jet2; + // ----Separation cut between jets (remove overlaps) + for(vec_iter ij2=goodParts[CUTS::eRJet2]->begin(); ij2 != goodParts[CUTS::eRJet2]->end(); ij2++) { + jet2 = _Jet->smearP.at(*ij2); + for(vec_iter ij1=goodParts[CUTS::eRJet1]->begin(); ij1 != goodParts[CUTS::eRJet1]->end() && (*ij1) < (*ij2); ij1++) { + jet1 = _Jet->smearP.at(*ij1); + + if (stats.bmap.at("DiscrByDeltaR")) { + if(jet1.DeltaR(jet2) < stats.dmap.at("DeltaRCut")) continue; + } + + if( !passCutRange("DeltaEta", abs(jet1.Eta() - jet2.Eta()), stats) ) continue; + if( !passCutRange("DeltaPhi", abs(jet1.Phi() - jet2.Phi()), stats) ) continue; + + if (stats.bmap.at("DiscrByOSEta")) { + if((jet1.Eta() * jet2.Eta()) >= 0) continue; + } + // ----Require both legs to be almost back-to-back in phi + if( !passCutRange("CosDphi", cos(absnormPhi(jet1.Phi() - jet2.Phi())), stats) ) continue; + + // ----Mass window requirement + if (stats.bmap.at("DiscrByMassReco")) { + if( ((jet1 + jet2).M() < stats.pmap.at("MassCut").first) || ((jet1 + jet2).M() > stats.pmap.at("MassCut").second) ) continue; + } + ///Particlesp that lead to good combo are totjet * part1 + part2 + /// final / totjet = part1 (make sure is integer) + /// final % totjet = part2 + goodParts[CUTS::eDiJet]->push_back((*ij1)*_Jet->smearP.size() + (*ij2)); + } + } +} + + +///////Only tested for if is Zdecay, can include massptasymmpair later? +/////Tests to see if a light lepton came form a zdecay +bool Analyzer::isZdecay(const TLorentzVector& theObject, const Lepton& lep) { + bool eventIsZdecay = false; + const float zMass = 90.1876; + const float zWidth = 2.4952; + float zmmPtAsymmetry = -10.; + + // if mass is within 3 sigmas of z or pt asymmetry is small set to true. + for(vector::const_iterator lepit= lep.smearP.begin(); lepit != lep.smearP.end(); lepit++) { + if(theObject.DeltaR(*lepit) < 0.3) continue; + if(theObject == (*lepit)) continue; + + TLorentzVector The_LorentzVect = theObject + (*lepit); + zmmPtAsymmetry = (theObject.Pt() - lepit->Pt()) / (theObject.Pt() + lepit->Pt()); + + if( (abs(The_LorentzVect.M() - zMass) < 3.*zWidth) || (fabs(zmmPtAsymmetry) < 0.20) ) { + eventIsZdecay = true; + break; + } + } + + return eventIsZdecay; +} + + +///Calculates the Pzeta value +pair Analyzer::getPZeta(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2) { + double zetaX = cos(Tobj1.Phi()) + cos(Tobj2.Phi()); + double zetaY = sin(Tobj1.Phi()) + sin(Tobj2.Phi()); + double zetaR = TMath::Sqrt(zetaX*zetaX + zetaY*zetaY); + if ( zetaR > 0. ) { zetaX /= zetaR; zetaY /= zetaR; } + double visPx = Tobj1.Px() + Tobj2.Px(); + double visPy = Tobj1.Py() + Tobj2.Py(); + double px = visPx + theMETVector.Px(); + double py = visPy + theMETVector.Py(); + return make_pair(px*zetaX + py*zetaY, visPx*zetaX + visPy*zetaY); +} + + +///Normalizes phi to be between -PI and PI + +///Takes the absolute value of of normPhi (made because constant use) + + + +////Grabs a list of the groups of histograms to be filled and asked Fill_folder to fill up the histograms +void Analyzer::fill_histogram() { + if(distats["Run"].bmap["ApplyGenWeight"] && gen_weight == 0.0) return; + + if(crbins != 1) CRfillCuts(); + else fillCuts(); + if(isData && blinded && maxCut == SignalRegion) return; + const vector* groups = histo.get_groups(); + wgt = pu_weight; + wgtisr = isr_weight; + if(distats["Run"].bmap["ApplyGenWeight"]) wgt *= (gen_weight > 0) ? 1.0 : -1.0; + if(distats["Run"].bmap["ApplyISRWeight"]) wgt *= wgtisr ? 1.0 : -1.0; + for(auto it: *groups) { + fill_Folder(it, maxCut); + } +} + +///Function that fills up the histograms +void Analyzer::fill_Folder(string group, const int max) { + if(group == "FillRun") { + if(crbins != 1) { + for(int i = 0; i < crbins; i++) { + histo.addVal(false, group, i, "Events", 1); + } + } + else histo.addVal(false, group,histo.get_maxfolder(), "Events", 1); + histAddVal(true, "Events"); + histAddVal(bestVertices, "NVertices"); + } else if(!isData && group == "FillGen") { + + int nhadtau = 0; + TLorentzVector genVec; + int i = 0; + for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it!=goodParts[CUTS::eGTau]->end(); it++, i++) { + + int nu = goodParts[CUTS::eNuTau]->at(i); + if(nu != -1) { + TLorentzVector tmp1, tmp2; + tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); + genVec = tmp1 - tmp2; + histAddVal(genVec.Pt(), "HadTauPt"); + histAddVal(genVec.Eta(), "HadTauEta"); + nhadtau++; + + } + histAddVal(_Gen->energy->at(*it), "TauEnergy"); + histAddVal(_Gen->pt->at(*it), "TauPt"); + histAddVal(_Gen->eta->at(*it), "TauEta"); + histAddVal(_Gen->phi->at(*it), "TauPhi"); + for(vec_iter it2=it+1; it2!=goodParts[CUTS::eGTau]->end(); it2++) { + TLorentzVector genObjt1; + genObjt1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + TLorentzVector genObjt2; + genObjt2.SetPtEtaPhiE(_Gen->pt->at(*it2), _Gen->eta->at(*it2), _Gen->phi->at(*it2), _Gen->energy->at(*it2)); + histAddVal(diParticleMass(genObjt1,genObjt2, "none"), "DiTauMass"); + } + } + histAddVal(goodParts[CUTS::eGTau]->size(), "NTau"); + histAddVal(nhadtau, "NHadTau"); + + for(vec_iter it=goodParts[CUTS::eGMuon]->begin(); it!=goodParts[CUTS::eGMuon]->end(); it++) { + histAddVal(_Gen->energy->at(*it), "MuonEnergy"); + histAddVal(_Gen->pt->at(*it), "MuonPt"); + histAddVal(_Gen->eta->at(*it), "MuonEta"); + histAddVal(_Gen->phi->at(*it), "MuonPhi"); + } + histAddVal(goodParts[CUTS::eGMuon]->size(), "NMuon"); + + + + } else if(fillInfo[group]->type == FILLER::Single) { + Particle* part = fillInfo[group]->part; + CUTS ePos = fillInfo[group]->ePos; + + for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { + histAddVal(part->smearP.at(*it).Energy(), "Energy"); + histAddVal(part->smearP.at(*it).Pt(), "Pt"); + histAddVal(part->smearP.at(*it).Eta(), "Eta"); + histAddVal(part->smearP.at(*it).Phi(), "Phi"); + if(part->type == PType::Tau) { + histAddVal(_Tau->nProngs->at(*it), "NumSignalTracks"); + histAddVal(_Tau->charge->at(*it), "Charge"); + histAddVal(_Tau->leadChargedCandPt->at(*it), "SeedTrackPt"); + } + if(part->type != PType::Jet) { + histAddVal(calculateLeptonMetMt(part->smearP.at(*it)), "MetMt"); + } + } + if((part->type != PType::Jet ) && goodParts[ePos]->size() > 0) { + double leadpt = 0; + double leadeta = 0; + for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { + if(part->smearP.at(*it).Pt() >= leadpt) { + leadpt = part->smearP.at(*it).Pt(); + leadeta = part->smearP.at(*it).Eta(); + } + } + + histAddVal(leadpt, "FirstLeadingPt"); + histAddVal(leadeta, "FirstLeadingEta"); + } + + histAddVal(goodParts[ePos]->size(), "N"); + + + } else if(group == "FillMetCuts") { + histAddVal(sqrt((sumpxForMht * sumpxForMht) + (sumpyForMht * sumpyForMht)), "MHT"); + histAddVal(sumptForHt, "HT"); + histAddVal(sumptForHt + sqrt((sumpxForMht * sumpxForMht) + (sumpyForMht * sumpyForMht)), "Meff"); + histAddVal(theMETVector.Pt(), "Met"); + + } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() == 0) { + + if(goodParts[CUTS::eR1stJet]->at(0) != -1) { + histAddVal(_Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)).Pt(), "FirstPt"); + histAddVal(_Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)).Eta(), "FirstEta"); + } + if(goodParts[CUTS::eR2ndJet]->at(0) != -1) { + histAddVal(_Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)).Pt(), "SecondPt"); + histAddVal(_Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)).Eta(), "SecondEta"); + } + + + } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() != 0) { + + TLorentzVector first = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)); + TLorentzVector second = _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); + + histAddVal(first.Pt(), "FirstPt"); + histAddVal(second.Pt(), "SecondPt"); + + histAddVal(first.Eta(), "FirstEta"); + histAddVal(second.Eta(), "SecondEta"); + + TLorentzVector LeadDiJet = first + second; + + histAddVal(LeadDiJet.M(), "Mass"); + histAddVal(LeadDiJet.Pt(), "Pt"); + histAddVal(fabs(first.Eta() - second.Eta()), "DeltaEta"); + histAddVal(first.DeltaR(second), "DeltaR"); + + double dphiDijets = absnormPhi(first.Phi() - second.Phi()); + double dphi1 = normPhi(first.Phi() - theMETVector.Phi()); + double dphi2 = normPhi(second.Phi() - theMETVector.Phi()); + double alpha = (LeadDiJet.M() > 0) ? second.Pt() / LeadDiJet.M() : 999999999.0; + + histAddVal(dphiDijets, "LeadSublDijetDphi"); + histAddVal2(theMETVector.Pt(),dphiDijets, "MetVsDiJetDeltaPhiLeadSubl"); + histAddVal2(fabs(first.Eta()-second.Eta()), dphiDijets, "DeltaEtaVsDeltaPhiLeadSubl"); + + histAddVal(absnormPhi(theMETVector.Phi() - LeadDiJet.Phi()), "MetDeltaPhi"); + + + + histAddVal(sqrt( pow(dphi1,2.0) + pow((TMath::Pi() - dphi2),2.0) ), "R1"); + histAddVal(sqrt( pow(dphi2,2.0) + pow((TMath::Pi() - dphi1),2.0)), "R2"); + histAddVal(normPhi(first.Phi() - phiForMht), "Dphi1MHT"); + histAddVal(normPhi(second.Phi() - phiForMht), "Dphi2MHT"); + histAddVal(dphi1, "Dphi1"); + histAddVal(dphi2, "Dphi2"); + histAddVal2(dphi1,dphi2, "Dphi1VsDphi2"); + histAddVal(alpha, "Alpha"); + + + //dijet info + } else if(group == "FillDiJet") { + double leaddijetmass = 0; + double leaddijetpt = 0; + double leaddijetdeltaR = 0; + double leaddijetdeltaEta = 0; + double etaproduct = 0; + for(vec_iter it=goodParts[CUTS::eDiJet]->begin(); it!=goodParts[CUTS::eDiJet]->end(); it++) { + int p1 = (*it) / _Jet->smearP.size(); + int p2 = (*it) % _Jet->smearP.size(); + TLorentzVector jet1 = _Jet->smearP.at(p1); + TLorentzVector jet2 = _Jet->smearP.at(p2); + TLorentzVector DiJet = jet1 + jet2; + + if(DiJet.M() > leaddijetmass) { + leaddijetmass = DiJet.M(); + etaproduct = (jet1.Eta() * jet2.Eta() > 0) ? 1 : -1; + } + if(DiJet.Pt() > leaddijetpt) leaddijetpt = DiJet.Pt(); + if(fabs(jet1.Eta() - jet2.Eta()) > leaddijetdeltaEta) leaddijetdeltaEta = fabs(jet1.Eta() - jet2.Eta()); + if(jet1.DeltaR(jet2) > leaddijetdeltaR) leaddijetdeltaR = jet1.DeltaR(jet2); + + histAddVal(DiJet.M(), "Mass"); + histAddVal(DiJet.Pt(), "Pt"); + histAddVal(fabs(jet1.Eta() - jet2.Eta()), "DeltaEta"); + histAddVal(absnormPhi(jet1.Phi() - jet2.Phi()), "DeltaPhi"); + histAddVal(jet1.DeltaR(jet2), "DeltaR"); + } + + + histAddVal(leaddijetmass, "LargestMass"); + histAddVal(leaddijetpt, "LargestPt"); + histAddVal(leaddijetdeltaEta, "LargestDeltaEta"); + histAddVal(leaddijetdeltaR, "LargestDeltaR"); + histAddVal(etaproduct, "LargestMassEtaProduct"); + + + ////diparticle stuff + } else if(fillInfo[group]->type == FILLER::Dipart) { + Lepton* lep1 = static_cast(fillInfo[group]->part); + Lepton* lep2 = static_cast(fillInfo[group]->part2); + CUTS ePos = fillInfo[group]->ePos; + string digroup = group; + digroup.erase(0,4); + + TLorentzVector part1; + TLorentzVector part2; + + for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { + + int p1= (*it) / BIG_NUM; + int p2= (*it) % BIG_NUM; + + part1 = lep1->smearP.at(p1); + part2 = lep2->smearP.at(p2); + double add_px = (part1.Pt() * cos(part1.Phi())) + (part2.Pt() * cos(part2.Phi())); + double add_py = (part1.Pt() * sin(part1.Phi())) + (part2.Pt() * sin(part2.Phi())); +// TLorentzVector add_p = part1 + part2; + double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); + + histAddVal2(part1.Pt(),part2.Pt(), "Part1PtVsPart2Pt"); + histAddVal(part1.DeltaR(part2), "DeltaR"); + if(group.find("Di") != string::npos) { + histAddVal((part1.Pt() - part2.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); + histAddVal(part1.Pt() - part2.Pt(), "DeltaPt"); + histAddVal(TMath::Sqrt(mag_addp2), "Boost"); + } else { + histAddVal((part2.Pt() - part1.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); + histAddVal(part2.Pt() - part1.Pt(), "DeltaPt"); + histAddVal(TMath::Sqrt(mag_addp2), "Boost"); + } + histAddVal(cos(absnormPhi(part2.Phi() - part1.Phi())), "CosDphi"); + histAddVal(absnormPhi(part1.Phi() - theMETVector.Phi()), "Part1MetDeltaPhi"); + histAddVal2(absnormPhi(part1.Phi() - theMETVector.Phi()), cos(absnormPhi(part2.Phi() - part1.Phi())), "Part1MetDeltaPhiVsCosDphi"); + histAddVal(absnormPhi(part2.Phi() - theMETVector.Phi()), "Part2MetDeltaPhi"); + histAddVal(cos(absnormPhi(atan2(part1.Py() - part2.Py(), part1.Px() - part2.Px()) - theMETVector.Phi())), "CosDphi_DeltaPtAndMet"); + double diMass = diParticleMass(part1,part2, distats[digroup].smap.at("HowCalculateMassReco")); + if(passDiParticleApprox(part1,part2, distats[digroup].smap.at("HowCalculateMassReco"))) { + histAddVal(diMass, "ReconstructableMass"); + + } else { + histAddVal(diMass, "NotReconstructableMass"); + } + + double PZeta = getPZeta(part1,part2).first; + double PZetaVis = getPZeta(part1,part2).second; + histAddVal(calculateLeptonMetMt(part1), "Part1MetMt"); + histAddVal(calculateLeptonMetMt(part2), "Part2MetMt"); + histAddVal(lep2->charge->at(p2) * lep1->charge->at(p1), "OSLS"); + histAddVal(PZeta, "PZeta"); + histAddVal(PZetaVis, "PZetaVis"); + histAddVal2(PZetaVis,PZeta, "Zeta2D"); + histAddVal((distats.at(digroup).dmap.at("PZetaCutCoefficient") * PZeta) + (distats.at(digroup).dmap.at("PZetaVisCutCoefficient") * PZetaVis), "Zeta1D"); + + if ((goodParts[CUTS::eR1stJet]->at(0) != -1) && (goodParts[CUTS::eR2ndJet]->at(0) != -1)) { + TLorentzVector TheLeadDiJetVect = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)) + _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); + + histAddVal(absnormPhi(part1.Phi() - TheLeadDiJetVect.Phi()), "Part1DiJetDeltaPhi"); + histAddVal(absnormPhi(part2.Phi() - TheLeadDiJetVect.Phi()), "Part2DiJetDeltaPhi"); + histAddVal(diParticleMass(TheLeadDiJetVect, part1+part2, "VectorSumOfVisProductsAndMet"), "DiJetReconstructableMass"); + } + + if(lep1->type != PType::Tau) { + histAddVal(isZdecay(part1, *lep1), "Part1IsZdecay"); + } + if(lep2->type != PType::Tau){ + histAddVal(isZdecay(part2, *lep2), "Part2IsZdecay"); + } + } + } +} + + +void Analyzer::initializePileupInfo(string MCHisto, string DataHisto) { + + TFile *file1 = new TFile((PUSPACE+MCHisto).c_str()); + TH1D* histmc = (TH1D*)file1->FindObjectAny("pileup"); + if(!histmc) throw std::runtime_error("failed to extract histogram"); + + TFile* file2 = new TFile((PUSPACE+DataHisto).c_str()); + TH1D* histdata = (TH1D*)file2->FindObjectAny("pileup"); + if(!histdata) throw std::runtime_error("failed to extract histogram"); + + double factor = histmc->Integral() / histdata->Integral(); + double value; + for(int bin=0; bin < 100; bin++) { + if(histmc->GetBinContent(bin) == 0) value = 1; + + else value = factor*histdata->GetBinContent(bin) / histmc->GetBinContent(bin); + hPU[bin] = value; + } + + file1->Close(); + file2->Close(); + +} + +void Analyzer::initializeISRWeightInfo(string ISRweightHisto){ + TFile *file1 = new TFile((ISRSPACE+ISRweightHisto).c_str()); + TH1D* histisr = (TH1D*)file1->FindObjectAny("isrweight_1"); + if(!histisr) throw std::runtime_error("failed to extract histogram"); + + // double factor = histmc->Integral() / histdata->Integral(); + double value; + for(int bin=0; bin < 9; bin++) { + if(histisr->GetBinContent(bin) == 0) value = 1; + + else value = histisr->GetBinContent(bin); + hISR[bin] = value; + } + + file1->Close(); + +} + +double normPhi(double phi) { + static double const TWO_PI = TMath::Pi() * 2; + while ( phi <= -TMath::Pi() ) phi += TWO_PI; + while ( phi > TMath::Pi() ) phi -= TWO_PI; + return phi; +} + +double absnormPhi(double phi) { + return abs(normPhi(phi)); +} diff --git a/ISR/ISRweight_practice_6.8.pdf b/ISR/ISRweight_practice_6.8.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2c54035103a580f6219add1cf2a06eda84aac2a5 GIT binary patch literal 13936 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 literal 0 HcmV?d00001 diff --git a/PartDetzmumu_CR2_6.6/Control_Regions.in b/PartDetzmumu_CR2_6.6/Control_Regions.in new file mode 100644 index 0000000..748a9b1 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Control_Regions.in @@ -0,0 +1,8 @@ +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDetzmumu_CR2_6.6/Cuts.in b/PartDetzmumu_CR2_6.6/Cuts.in new file mode 100644 index 0000000..3993dfe --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Cuts.in @@ -0,0 +1,49 @@ +NGenTau 0 -1 +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +***NRecoMuon1 2 2 +***NRecoMuon2 2 2 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +NRecoTau1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoBJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +***NDiMuonCombinations 1 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDetzmumu_CR2_6.6/DiParticle_info.in b/PartDetzmumu_CR2_6.6/DiParticle_info.in new file mode 100644 index 0000000..ecabc68 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/DiParticle_info.in @@ -0,0 +1,101 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + + diff --git a/PartDetzmumu_CR2_6.6/ElectronTau_info.in b/PartDetzmumu_CR2_6.6/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDetzmumu_CR2_6.6/Electron_info.in b/PartDetzmumu_CR2_6.6/Electron_info.in new file mode 100644 index 0000000..33d2fff --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID true + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDetzmumu_CR2_6.6/Gen_info.in b/PartDetzmumu_CR2_6.6/Gen_info.in new file mode 100644 index 0000000..3740102 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Gen_info.in @@ -0,0 +1,27 @@ +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDetzmumu_CR2_6.6/Hist_entries.in b/PartDetzmumu_CR2_6.6/Hist_entries.in new file mode 100644 index 0000000..d23acb7 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Hist_entries.in @@ -0,0 +1,556 @@ +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 500 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 0 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 -0.5 19.5 +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 1 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 +DiMuon_Boost 100 0 200 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 200 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + diff --git a/PartDetzmumu_CR2_6.6/Jet_info.in b/PartDetzmumu_CR2_6.6/Jet_info.in new file mode 100644 index 0000000..f30c4c0 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Jet_info.in @@ -0,0 +1,157 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 \ No newline at end of file diff --git a/PartDetzmumu_CR2_6.6/MuonElectron_info.in b/PartDetzmumu_CR2_6.6/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDetzmumu_CR2_6.6/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_CR2_6.6/MuonTau_info.in b/PartDetzmumu_CR2_6.6/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_CR2_6.6/Muon_info.in b/PartDetzmumu_CR2_6.6/Muon_info.in new file mode 100644 index 0000000..9d1f1d9 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDetzmumu_CR2_6.6/Run_info.in b/PartDetzmumu_CR2_6.6/Run_info.in new file mode 100644 index 0000000..2686938 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Run_info.in @@ -0,0 +1,38 @@ +#################################### + Run +#################################### + +CalculatePUSystematics false +DataHistos data_75bins_69200.root +MCHistos MC_75bins.root + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_ +Trigger1SecondRequirement HLT_IsoMu24_ + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt false + + diff --git a/PartDetzmumu_CR2_6.6/Tau_info.in b/PartDetzmumu_CR2_6.6/Tau_info.in new file mode 100644 index 0000000..4ac490e --- /dev/null +++ b/PartDetzmumu_CR2_6.6/Tau_info.in @@ -0,0 +1,108 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron false +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon false +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDetzmumu_CR2_6.6/VBFCuts_info.in b/PartDetzmumu_CR2_6.6/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDetzmumu_CR2_6.6/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDetzmumu_fullCR_7.22/Control_Regions.in b/PartDetzmumu_fullCR_7.22/Control_Regions.in new file mode 100644 index 0000000..748a9b1 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Control_Regions.in @@ -0,0 +1,8 @@ +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDetzmumu_fullCR_7.22/Cuts.in b/PartDetzmumu_fullCR_7.22/Cuts.in new file mode 100644 index 0000000..94a4b6f --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Cuts.in @@ -0,0 +1,49 @@ +NGenTau 0 -1 +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +***NRecoMuon1 2 2 +***NRecoMuon2 2 2 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +NRecoTau1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoBJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +***NDiMuonCombinations 1 1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDetzmumu_fullCR_7.22/DiParticle_info.in b/PartDetzmumu_fullCR_7.22/DiParticle_info.in new file mode 100644 index 0000000..ecabc68 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/DiParticle_info.in @@ -0,0 +1,101 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + + diff --git a/PartDetzmumu_fullCR_7.22/ElectronTau_info.in b/PartDetzmumu_fullCR_7.22/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDetzmumu_fullCR_7.22/Electron_info.in b/PartDetzmumu_fullCR_7.22/Electron_info.in new file mode 100644 index 0000000..33d2fff --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID true + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDetzmumu_fullCR_7.22/FatJet_info.in b/PartDetzmumu_fullCR_7.22/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDetzmumu_fullCR_7.22/Gen_info.in b/PartDetzmumu_fullCR_7.22/Gen_info.in new file mode 100644 index 0000000..3740102 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Gen_info.in @@ -0,0 +1,27 @@ +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDetzmumu_fullCR_7.22/Hist_entries.in b/PartDetzmumu_fullCR_7.22/Hist_entries.in new file mode 100644 index 0000000..e36bf40 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Hist_entries.in @@ -0,0 +1,558 @@ +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 500 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 0 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 -0.5 19.5 +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 1 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 +DiMuon_Boost 200 0 1000 +DiMuon_Utpar 200 -1000 0 +DiMuon_Utper 200 -500 500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 200 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + diff --git a/PartDetzmumu_fullCR_7.22/Jet_info.in b/PartDetzmumu_fullCR_7.22/Jet_info.in new file mode 100644 index 0000000..33c294a --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Jet_info.in @@ -0,0 +1,158 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 +UseBtagSF 0 \ No newline at end of file diff --git a/PartDetzmumu_fullCR_7.22/MuonElectron_info.in b/PartDetzmumu_fullCR_7.22/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_fullCR_7.22/MuonTau_info.in b/PartDetzmumu_fullCR_7.22/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_fullCR_7.22/Muon_info.in b/PartDetzmumu_fullCR_7.22/Muon_info.in new file mode 100644 index 0000000..9d1f1d9 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDetzmumu_fullCR_7.22/Run_info.in b/PartDetzmumu_fullCR_7.22/Run_info.in new file mode 100644 index 0000000..b7663b6 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Run_info.in @@ -0,0 +1,43 @@ +#################################### + Run +#################################### +CalculatePUSystematics false +///CalculateISRSystematics true +DataHistos data_75bins_69200.root +MCHistos MC_75bins.root +DataPUHistName pileup +MCPUHistName pileup +///ISRweightHistos + +isData false +ApplyGenWeight true +///ApplyISRWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_ +Trigger1SecondRequirement HLT_IsoMu24_ + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDetzmumu_fullCR_7.22/Tau_info.in b/PartDetzmumu_fullCR_7.22/Tau_info.in new file mode 100644 index 0000000..4ac490e --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/Tau_info.in @@ -0,0 +1,108 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron false +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon false +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDetzmumu_fullCR_7.22/VBFCuts_info.in b/PartDetzmumu_fullCR_7.22/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDetzmumu_fullCR_7.22/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Control_Regions.in b/PartDetzmumu_fullwvalisrwgt_8.14/Control_Regions.in new file mode 100644 index 0000000..748a9b1 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Control_Regions.in @@ -0,0 +1,8 @@ +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Cuts.in b/PartDetzmumu_fullwvalisrwgt_8.14/Cuts.in new file mode 100644 index 0000000..8b0a5f2 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Cuts.in @@ -0,0 +1,49 @@ +NGenTau 0 -1 +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +***NRecoMuon1 1 1 +NRecoMuon2 0 -1 +***NRecoElectron1 0 0 //changed 8.7.17 to veto electrons +NRecoElectron2 0 -1 +***NRecoTau1 0 0 //changed 8.7.17 to veto taus +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 0 0 //changed 8.7.17 to get rid of Bjets +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +***METCut 1 -1 + + + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/DiParticle_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/DiParticle_info.in new file mode 100644 index 0000000..ecabc68 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/DiParticle_info.in @@ -0,0 +1,101 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/ElectronTau_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Electron_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Electron_info.in new file mode 100644 index 0000000..5133c9f --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.4 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/FatJet_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Gen_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Gen_info.in new file mode 100644 index 0000000..3740102 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Gen_info.in @@ -0,0 +1,27 @@ +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Hist_entries.in b/PartDetzmumu_fullwvalisrwgt_8.14/Hist_entries.in new file mode 100644 index 0000000..6c7a196 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Hist_entries.in @@ -0,0 +1,562 @@ +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 500 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +GenWEnergy 500 0. 5000. +GenWPt 500 0. 5000. +GenWEta 72 -3.6 +3.6 +GenWPhi 36 -3.15 +3.15 + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 1 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 -0.5 19.5 +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 +DiMuon_Boost 200 0 1000 +DiMuon_Utpar 200 -1000 0 +DiMuon_Utper 200 -500 500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 200 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Jet_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Jet_info.in new file mode 100644 index 0000000..f60375d --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Jet_info.in @@ -0,0 +1,158 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 3.0 +PtCut 50.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.8484 +MatchBToGen 0 +UseBtagSF 0 \ No newline at end of file diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/MuonElectron_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/MuonTau_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Muon_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Muon_info.in new file mode 100644 index 0000000..e6f75a9 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 1 +MetMtCut 60. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Run_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Run_info.in new file mode 100644 index 0000000..0e94274 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Run_info.in @@ -0,0 +1,40 @@ +#################################### + Run +#################################### +CalculatePUSystematics false +DataHistos data_75bins_69200.root +MCHistos MC_75bins.root +DataPUHistName pileup +MCPUHistName pileup + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_ +Trigger1SecondRequirement HLT_IsoMu24_ + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet true +MetCut 50.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/Tau_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/Tau_info.in new file mode 100644 index 0000000..f74b678 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/Tau_info.in @@ -0,0 +1,108 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBoldDMwLT +DiscrByProngType 1or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut false + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDetzmumu_fullwvalisrwgt_8.14/VBFCuts_info.in b/PartDetzmumu_fullwvalisrwgt_8.14/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDetzmumu_fullwvalisrwgt_8.14/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDetzmumu_taueff_9.3/Control_Regions.in b/PartDetzmumu_taueff_9.3/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDetzmumu_taueff_9.3/Cuts.in b/PartDetzmumu_taueff_9.3/Cuts.in new file mode 100644 index 0000000..433b051 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 + +***NGenTau 0 -1 +***NRecoVertex 0 -1 +NRecoMuon1 0 -1 +NRecoMuon2 0 -1 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +NRecoTau1 0 -1 +NRecoTau2 0 -1 +NRecoJet1 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoBJet 0 -1 +NRecoTriggers1 0 -1 ///only 0 or 1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoFirstLeadingJet 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDetzmumu_taueff_9.3/DiParticle_info.in b/PartDetzmumu_taueff_9.3/DiParticle_info.in new file mode 100644 index 0000000..99dcd18 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDetzmumu_taueff_9.3/ElectronTau_info.in b/PartDetzmumu_taueff_9.3/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDetzmumu_taueff_9.3/Electron_info.in b/PartDetzmumu_taueff_9.3/Electron_info.in new file mode 100644 index 0000000..33d2fff --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID true + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDetzmumu_taueff_9.3/FatJet_info.in b/PartDetzmumu_taueff_9.3/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDetzmumu_taueff_9.3/Gen_info.in b/PartDetzmumu_taueff_9.3/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDetzmumu_taueff_9.3/Hist_entries.in b/PartDetzmumu_taueff_9.3/Hist_entries.in new file mode 100644 index 0000000..bc2f10e --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Hist_entries.in @@ -0,0 +1,598 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +GenHadTauFrac_scalar 100 0. 1. +GenHadTauFrac_vector 100 0. 1. +GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 0 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 0 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 200 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDetzmumu_taueff_9.3/Jet_info.in b/PartDetzmumu_taueff_9.3/Jet_info.in new file mode 100644 index 0000000..7db89ea --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 5.0 +PtCut 30.0 + +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 5.0 +PtCut 30.0 +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 0 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 5.0 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 5.0 +PtCut 30.0 +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 +UseBtagSF 1 + + diff --git a/PartDetzmumu_taueff_9.3/MuonElectron_info.in b/PartDetzmumu_taueff_9.3/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDetzmumu_taueff_9.3/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_taueff_9.3/MuonTau_info.in b/PartDetzmumu_taueff_9.3/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_taueff_9.3/Muon_info.in b/PartDetzmumu_taueff_9.3/Muon_info.in new file mode 100644 index 0000000..b8d5488 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 10.0 9999.9 + +DoDiscrByTightID 0 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByTightID 0 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.2 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDetzmumu_taueff_9.3/Run_info.in b/PartDetzmumu_taueff_9.3/Run_info.in new file mode 100644 index 0000000..5c35fbb --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Run_info.in @@ -0,0 +1,41 @@ +#################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos PU2016data_6p2ifb.root +MCHistos PU2016MC.root +DataPUHistName NVertices_0 +MCPUHistName NVertices_0 + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_eta2p1_v +Trigger1SecondRequirement HLT_IsoMu18_v + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt false + + diff --git a/PartDetzmumu_taueff_9.3/Systematics_info.in b/PartDetzmumu_taueff_9.3/Systematics_info.in new file mode 100644 index 0000000..ca1be71 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Systematics_info.in @@ -0,0 +1,15 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta +pt_min 30 +eta_max 2.8 + +muon_scale 0.05 +muon_res 0.032 diff --git a/PartDetzmumu_taueff_9.3/Tau_info.in b/PartDetzmumu_taueff_9.3/Tau_info.in new file mode 100644 index 0000000..44aa199 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/Tau_info.in @@ -0,0 +1,108 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.2 + +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron false +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon false +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDetzmumu_taueff_9.3/VBFCuts_info.in b/PartDetzmumu_taueff_9.3/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDetzmumu_taueff_9.3/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDetzmumu_wvalidation_7.27/Control_Regions.in b/PartDetzmumu_wvalidation_7.27/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDetzmumu_wvalidation_7.27/Cuts.in b/PartDetzmumu_wvalidation_7.27/Cuts.in new file mode 100644 index 0000000..433b051 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 + +***NGenTau 0 -1 +***NRecoVertex 0 -1 +NRecoMuon1 0 -1 +NRecoMuon2 0 -1 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +NRecoTau1 0 -1 +NRecoTau2 0 -1 +NRecoJet1 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoBJet 0 -1 +NRecoTriggers1 0 -1 ///only 0 or 1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoFirstLeadingJet 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDetzmumu_wvalidation_7.27/DiParticle_info.in b/PartDetzmumu_wvalidation_7.27/DiParticle_info.in new file mode 100644 index 0000000..99dcd18 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDetzmumu_wvalidation_7.27/ElectronTau_info.in b/PartDetzmumu_wvalidation_7.27/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDetzmumu_wvalidation_7.27/Electron_info.in b/PartDetzmumu_wvalidation_7.27/Electron_info.in new file mode 100644 index 0000000..33d2fff --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID true + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDetzmumu_wvalidation_7.27/FatJet_info.in b/PartDetzmumu_wvalidation_7.27/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDetzmumu_wvalidation_7.27/Gen_info.in b/PartDetzmumu_wvalidation_7.27/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDetzmumu_wvalidation_7.27/Hist_entries.in b/PartDetzmumu_wvalidation_7.27/Hist_entries.in new file mode 100644 index 0000000..bc2f10e --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Hist_entries.in @@ -0,0 +1,598 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +GenHadTauFrac_scalar 100 0. 1. +GenHadTauFrac_vector 100 0. 1. +GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 0 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 0 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 200 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDetzmumu_wvalidation_7.27/Jet_info.in b/PartDetzmumu_wvalidation_7.27/Jet_info.in new file mode 100644 index 0000000..7db89ea --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 5.0 +PtCut 30.0 + +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 5.0 +PtCut 30.0 +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 0 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 5.0 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 5.0 +PtCut 30.0 +ApplyLooseID 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 +UseBtagSF 1 + + diff --git a/PartDetzmumu_wvalidation_7.27/MuonElectron_info.in b/PartDetzmumu_wvalidation_7.27/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_wvalidation_7.27/MuonTau_info.in b/PartDetzmumu_wvalidation_7.27/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDetzmumu_wvalidation_7.27/Muon_info.in b/PartDetzmumu_wvalidation_7.27/Muon_info.in new file mode 100644 index 0000000..b8d5488 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 10.0 9999.9 + +DoDiscrByTightID 0 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByTightID 0 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.2 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDetzmumu_wvalidation_7.27/Run_info.in b/PartDetzmumu_wvalidation_7.27/Run_info.in new file mode 100644 index 0000000..5c35fbb --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Run_info.in @@ -0,0 +1,41 @@ +#################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos PU2016data_6p2ifb.root +MCHistos PU2016MC.root +DataPUHistName NVertices_0 +MCPUHistName NVertices_0 + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_eta2p1_v +Trigger1SecondRequirement HLT_IsoMu18_v + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt false + + diff --git a/PartDetzmumu_wvalidation_7.27/Systematics_info.in b/PartDetzmumu_wvalidation_7.27/Systematics_info.in new file mode 100644 index 0000000..ca1be71 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Systematics_info.in @@ -0,0 +1,15 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta +pt_min 30 +eta_max 2.8 + +muon_scale 0.05 +muon_res 0.032 diff --git a/PartDetzmumu_wvalidation_7.27/Tau_info.in b/PartDetzmumu_wvalidation_7.27/Tau_info.in new file mode 100644 index 0000000..4ac490e --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/Tau_info.in @@ -0,0 +1,108 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron false +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon false +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDetzmumu_wvalidation_7.27/VBFCuts_info.in b/PartDetzmumu_wvalidation_7.27/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDetzmumu_wvalidation_7.27/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/isrstau_checkgtaumatchgnu_gnu_7.25.pdf b/isrstau_checkgtaumatchgnu_gnu_7.25.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c73ecb77975451fdee654426b47961cd54f41722 GIT binary patch literal 13858 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 Sz9vF&Br+8z@uii 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 Analyzer::genCuts = { CUTS::eGTau, CUTS::eNuTau, CUTS::eGTop, CUTS::eGElec, CUTS::eGMuon, CUTS::eGZ, - CUTS::eGW, CUTS::eGHiggs -}; + CUTS::eGW, CUTS::eGHiggs}; //new7.27.17 const vector Analyzer::jetCuts = { CUTS::eRJet1, CUTS::eRJet2, CUTS::eRCenJet, @@ -67,6 +66,7 @@ const unordered_map Analyzer::cut_num = { {"NGenTau", CUTS::eGTau}, {"NGenTop", CUTS::eGTop}, {"NGenElectron", CUTS::eGElec}, {"NGenMuon", CUTS::eGMuon}, {"NGenZ", CUTS::eGZ}, {"NGenW", CUTS::eGW}, + //{"NGenW2", CUTS::eGW2}, //new7.27.17 {"NGenHiggs", CUTS::eGHiggs}, {"NRecoVertex", CUTS::eRVertex}, {"NRecoMuon1", CUTS::eRMuon1}, {"NRecoMuon2", CUTS::eRMuon2}, {"NRecoElectron1", CUTS::eRElec1}, {"NRecoElectron2",CUTS::eRElec2}, @@ -98,16 +98,16 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co BOOM= new TChain("TNT/BOOM"); - gEnv->SetValue("TFile.Recover", 0); + //gEnv->SetValue("TFile.Recover", 0); for( string infile: infiles){ - TFile* tmp; - tmp = TFile::Open(infile.c_str()); - if(!tmp) { - cout << endl << endl << "File " << infile << " did not open correctly, exiting" <Add(infile.c_str()); } @@ -124,7 +124,7 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co trigName[i] = tmps; } - filespace=configFolder; + filespace="PartDet"; filespace+="/"; setupGeneral(BOOM); @@ -188,9 +188,20 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co ///this can be done nicer //put the variables that you use here: - zBoostTree["mu1_pt"]=0; - - histo.createTree(&zBoostTree,"zboost"); + //zBoostTree["treeweight"] = 0; + //zBoostTree["mu1pt"] = 0; + //zBoostTree["mu2pt"] = 0; + //zBoostTree["addpxZ"] = 0; + //zBoostTree["addpyZ"] = 0; + //zBoostTree["utpx"] = 0; + //zBoostTree["utpy"] = 0; + //zBoostTree["utmagn"] = 0; + //zBoostTree["utpar"] = 0; + //zBoostTree["utper"] = 0; + //zBoostTree["boostedz"] = 0; + //zBoostTree["FLJetPt"] = 0; + + //histo.createTree(&zBoostTree,"zboost"); if(setCR) { @@ -290,15 +301,14 @@ void Analyzer::setupCR(string var, double val) { cout << "Could not process line: " << var << endl; exit(1); } - } + ////destructor Analyzer::~Analyzer() { - delete BOOM; delete _Electron; delete _Muon; @@ -340,14 +350,40 @@ void Analyzer::preprocess(int event) { BOOM->GetEntry(event); theMETVector.SetPxPyPzE(Met[0], Met[1], Met[2], sqrt(pow(Met[0],2) + pow(Met[1],2))); pu_weight = (!isData && CalculatePUSystematics) ? hPU[(int)(nTruePU+1)] : 1.0; - - + // SET NUMBER OF GEN PARTICLES if(!isData){ getGoodGen(_Gen->pstats["Gen"]); getGoodTauNu(); + bool checkw = checkforW(); //new7.27.17 See if there's a W with the function checkforW. + bool checkz = checkforZ(); //new9.15.17 See if there's a Z with the function checkforZ. + if(checkw){ + double boostw = getWBoostWeight(); //Grab the p_T of the W. + if(boostw > 0 && boostw <= 50) {pu_weight *= 1.1192;} //new7.27.17 + else if (boostw > 50 && boostw <= 100) {pu_weight *= 1.1034;} //new7.27.17 + else if (boostw > 100 && boostw <= 150) {pu_weight *= 1.0675;} //new7.27.17 + else if (boostw > 150 && boostw <= 200) {pu_weight *= 1.0637;} //new7.27.17 + else if (boostw > 200 && boostw <= 300) {pu_weight *= 1.0242;} //new7.27.17 + else if (boostw > 300 && boostw <= 400) {pu_weight *= 0.9453;} //new7.27.17 + else if (boostw > 400 && boostw <= 600) {pu_weight *= 0.8579;} //new7.27.17 + else if (boostw >= 600) {pu_weight *= 0.7822;} //new7.27.17 + else {pu_weight *= 1;} //new7.27.17 + } + else if (checkz){ + double boostz = getZBoostWeight(); //Grab the p_T of the Z. + if(boostz > 0 && boostz <= 50) {pu_weight *= 1.1192;} //new9.15.17 + else if (boostz > 50 && boostz <= 100) {pu_weight *= 1.1034;} //new9.15.17 + else if (boostz > 100 && boostz <= 150) {pu_weight *= 1.0675;} //new9.15.17 + else if (boostz > 150 && boostz <= 200) {pu_weight *= 1.0637;} //new9.15.17 + else if (boostz > 200 && boostz <= 300) {pu_weight *= 1.0242;} //new9.15.17 + else if (boostz > 300 && boostz <= 400) {pu_weight *= 0.9453;} //new9.15.17 + else if (boostz > 400 && boostz <= 600) {pu_weight *= 0.8579;} //new9.15.17 + else if (boostz >= 600) {pu_weight *= 0.7822;} //new9.15.17 + else {pu_weight *= 1;} //new9.15.17 + } + else {pu_weight *= 1;} //new7.27.17 } - + //////Smearing smearLepton(*_Electron, CUTS::eGElec, _Electron->pstats["Smear"]); smearLepton(*_Muon, CUTS::eGMuon, _Muon->pstats["Smear"]); @@ -434,7 +470,6 @@ void Analyzer::fillCuts() { string cut = cut_order->at(i); if(isData && cut.find("Gen") != string::npos) continue; - int min= cut_info->at(cut).first; int max= cut_info->at(cut).second; int nparticles = goodParts[cut_num.at(cut)]->size(); @@ -448,8 +483,6 @@ void Analyzer::fillCuts() { maxCut += (prevTrue) ? 1 : 0; } else prevTrue = false; } - - } /////// maxcut made -1 if doesn't pass all of the cuts @@ -524,6 +557,7 @@ void Analyzer::printCuts() { //write all the histograms //attention this is not the fill_histogram method from the Analyser + cout << "--------\n" << endl; histo.fill_histogram(); } @@ -822,14 +856,16 @@ void Analyzer::setCutNeeds() { } - if(!passGen) _Gen->unBranch(); + // if(!passGen) _Gen->unBranch(); + if(false) _Gen->unBranch(); else { if(need_cut[CUTS::eGTau]) genMaper[15] = new GenFill(2, CUTS::eGTau); if(need_cut[CUTS::eGTop]) genMaper[6] = new GenFill(2, CUTS::eGTop); if(need_cut[CUTS::eGElec]) genMaper[11] = new GenFill(1, CUTS::eGElec); if(need_cut[CUTS::eGMuon]) genMaper[13] = new GenFill(1, CUTS::eGMuon); if(need_cut[CUTS::eGZ]) genMaper[23] = new GenFill(2, CUTS::eGZ); - if(need_cut[CUTS::eGW]) genMaper[24] = new GenFill(2, CUTS::eGW); + // if(need_cut[CUTS::eGW1]) genMaper[24] = new GenFill(2, CUTS::eGW1); //new7.27.17 + if(need_cut[CUTS::eGW]) genMaper[24] = new GenFill(62, CUTS::eGW); //new7.27.17 if(need_cut[CUTS::eGHiggs]) genMaper[25] = new GenFill(2, CUTS::eGHiggs); // , CUTS::eNuTau } @@ -962,8 +998,10 @@ void Analyzer::getGoodGen(const PartStats& stats) { for(size_t j = 0; j < _Gen->pt->size(); j++) { int id = abs(_Gen->pdg_id->at(j)); - if(genMaper[id] != nullptr && _Gen->pdg_id->at(j) == genMaper[id]->status) { - if(id == 15 && (_Gen->pt->at(j) < stats.pmap.at("TauPtCut").first || _Gen->pt->at(j) > stats.pmap.at("TauPtCut").second || abs(_Gen->eta->at(j)) > stats.dmap.at("TauEtaCut"))) continue; + if(genMaper[id] != nullptr && _Gen->status->at(j) == genMaper[id]->status) { + if(id == 15 && abs(_Gen->motherpdg_id->at(j)) != 24) continue; + if(id == 24 && (_Gen->status->at(j) != 2 && _Gen->status->at(j) != 62)) continue; + goodParts[genMaper[id]->ePos]->push_back(j); } } @@ -1458,6 +1496,114 @@ pair Analyzer::getPZeta(const TLorentzVector& Tobj1, const TLore return make_pair(px*zetaX + py*zetaY, visPx*zetaX + visPy*zetaY); } +double Analyzer::getZBoostWeight(){ //new7.28.17 + double z2_p = 0.; //new9.14.17 + for (unsigned p=0; p < _Gen->pt->size(); p++){ //new9.14.17 Loop over the full size of _Gen + if (_Gen->pdg_id->at(p) == 23 && (_Gen->status->at(p) == 2 || _Gen->status->at(p) == 62)){ //new9.14.17 If we get a Z with the right status... + z2_p = _Gen->pt->at(p); //new9.14.17 ...we grab its p_T... + break; //new9.14.17 ..and then get out of the loop once we have it. + } + } + return z2_p; + //return (Tobj1 + Tobj2).Pt(); //new7.28.17 +}//new7.28.17 + +double Analyzer::getWBoostWeight(){ //new7.28.17 + double w2_p = 0.; //new7.28.17 + for (unsigned p=0; p < _Gen->pt->size(); p++){ //new7.28.17 Loop over the full size of _Gen. + if (_Gen->pdg_id->at(p) == 24 && (_Gen->status->at(p) == 2 || _Gen->status->at(p) == 62)){ //new7.28.17 If we get a W with the right status... + w2_p = _Gen->pt->at(p); //new7.28.17 ...we grab its p_T... + break; //new7.28.17 ...and then get out of the loop once we have it. + } //new7.28.17 + } //new7.28.17 + return w2_p; //new7.28.17 We want to return the p_T of the W. +} //new7.28.17 + +double Analyzer::getParallelRecoilWeight(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2){ + //-----Get the recoil Lorentz vector.-----// + double boostzpx = Tobj1.Px() + Tobj2.Px(); //x-component of zboost + double boostzpy = Tobj1.Py() + Tobj2.Py(); //y-component of zboost + TLorentzVector boostzplorentz; //Make Lorentz vector for zboost. + boostzplorentz.SetPxPyPzE(boostzpx, boostzpy, 0, 0); //Fill Lorentz vec. + TLorentzVector u_t; //Make Lorentz vector for recoil. + u_t = -1 * (boostzplorentz + theMETVector); //Fill Lorentz vec (will use Px, Py). + + //-----2-vector for zboost now.-----// + TVector2 boostzp; //two-component boost (Pt) vector for easy manipulations + boostzp.Set(boostzpx, boostzpy); //Fill TVector 2. + + //-----Get unit vectors parallel and perpendicular to boost.-----// + TVector2 boostzp_unitpar; //two-component unit vector parallel to the Z Pt + boostzp_unitpar = boostzp.Unit(); + TVector2 boostzp_unitper; //two-component unit vector perp. to the Z Pt + boostzp_unitper.Set((-1 / boostzp.Mod()) * boostzpy, (1 / boostzp.Mod()) * boostzpx); + + //-----Project the recoil onto the parallel unit vector to zboost.-----// + TVector2 ut_pt2; //two-component vector for the recoil Pt in each direction. + ut_pt2.Set(u_t.Px(), u_t.Py()); + double ut_par = boostzp_unitpar * ut_pt2; //Project recoil onto unit vector parallel to the Z Pt. + + return ut_par; +} + +void Analyzer::checkParticleDecayList(int event){ //new7.25.17 + BOOM->GetEntry(event); //new7.25.17 + fstream file; //new7.25.17 + file.open("particle_decay_list.txt", ios_base::out | ios_base::in); //will not create file //new7.25.17 + int s; //new7.25.17 + if (file.is_open()){ //new7.25.17 + cout << "Warning, file already exists."; //new7.25.17 + cout << "Do you wish to clear the file? 1 for yes; 0 for no."; //new7.25.17 + cin >> s; //new7.25.17 + if (s == 1) //new7.25.17 + {file.open("particle_decay_list.txt", ios::out | ios::trunc); //new7.25.17 + file.close(); //new7.25.17 + cout << "You have cleared the file.";} //new7.25.17 + } +} + + +void Analyzer::writeParticleDecayList(int event, fstream& file){ //new7.25.17 + BOOM->GetEntry(event); //new7.25.17 + bool isThereATau = false; //new7.25.17 + for (unsigned s=0; s < _Gen->pt->size(); s++){ //new7.25.17 + if (_Gen->pdg_id->at(s) == 15){ //new7.25.17 + isThereATau = true; //new7.25.17 + break; //new7.25.17 + } //new7.25.17 + } //new7.25.17 + if(!isThereATau) return; //new7.25.17 + for (unsigned p=0; p < _Gen->pt->size(); p++){ //new7.25.17 + file << setw(2) << p << setw(2) << " " << setw(8) << "pdg_id: " << setw(4) << abs(_Gen->pdg_id->at(p)) << setw(2) << " " << setw(5) << "p_T: " << setw(10) << _Gen->pt->at(p) << setw(2) << " " << setw(5) << "phi: " << setw(10) << _Gen->phi->at(p) << setw(10) << "status: " << setw(3) << _Gen->status->at(p) << setw(2) << " " << setw(7) << "mind:" << setw(1) << " " << setw(2) << _Gen->BmotherIndex->at(p) << "\n"; //new7.25.17 + } //new7.25.17 + return; //new7.25.17 +} //new7.25.17 + +bool Analyzer::checkforW(){ //new7.28.17 Function checks to see if we have the W we want in _Gen. + bool isThereAW = false; //new7.28.17 Initiate the boolean "isThereAW" to false. + + for (unsigned s=0.; s < _Gen->pt->size(); s++){ //new7.28.17 Over the full size of _Gen... + if (abs(_Gen->pdg_id->at(s)) == 24 && (_Gen->status->at(s) == 62 || _Gen->status->at(s) == 2) ){ //new7.28.17 If the particle is a W with the appropriate status... + isThereAW = true; //new7.28.17 ...toggle the boolean to true. + break; //new7.28.17 Get out of the loop over _Gen once you get a W. + } + } + + return isThereAW; //new7.28.17 Get out whether we have the W with this bool. +} + +bool Analyzer::checkforZ(){ //new9.14.17 Function checks to see if we have the Z we want in _Gen. + bool isThereAZ = false; //new9.14.17 Initiate the boolean "isThereAZ" to false. + for (unsigned s=0.; s < _Gen->pt->size(); s++){ //new9.14.17 Over the full size of _Gen... + if (abs(_Gen->pdg_id->at(s)) == 23 && (_Gen->status->at(s) == 62 || _Gen->status->at(s) == 2) ){ //new9.14.17 If the particle is a Z with the appropriate status... + isThereAZ = true; //new9.14.17 ...toggle the boolean to true. + break; //new9.14.17 Get out of the loop over _Gen once you get a Z. + } + } + + return isThereAZ; //new9.14.17 Get out whether we have the W with this bool. +} + ////Grabs a list of the groups of histograms to be filled and asked Fill_folder to fill up the histograms @@ -1469,14 +1615,40 @@ void Analyzer::fill_histogram() { if(isData && blinded && maxCut == SignalRegion) return; const vector* groups = histo.get_groups(); + vector groupsval; + groupsval = *groups; wgt = pu_weight; if(distats["Run"].bmap["ApplyGenWeight"]) wgt *= (gen_weight > 0) ? 1.0 : -1.0; - - for(auto it: *groups) { - fill_Folder(it, maxCut); - } + // if(!isData){ + // if(goodParts[CUTS::eDiMuon]->size() != 1){ + // q+=0; + // } + // else{ + // int dimuon_p = goodParts[CUTS::eDiMuon]->at(0); + // int p1 = dimuon_p / BIG_NUM; + // int p2 = dimuon_p % BIG_NUM; + + // TLorentzVector t1 = _Muon->smearP.at(p1); + // TLorentzVector t2 = _Muon->smearP.at(p2); + + // double boostz = getZBoostWeight(t1, t2); + // if(boostz > 0 && boostz <= 50) {wgt *= 1.1192;} + // else if (boostz > 50 && boostz <= 100) {wgt *= 1.1034;} + // else if (boostz > 100 && boostz <= 150) {wgt *= 1.0675;} + // else if (boostz > 150 && boostz <= 200) {wgt *= 1.0637;} + // else if (boostz > 200 && boostz <= 300) {wgt *= 1.0242;} + // else if (boostz > 300 && boostz <= 400) {wgt *= 0.9453;} + // else if (boostz > 400 && boostz <= 600) {wgt *= 0.8579;} + // else if (boostz >= 600) {wgt *= 0.7822;} + // else {wgt *= 1;} + // } + // } + // else{r += 0;} + for(auto it: groupsval) { + fill_Folder(it, maxCut);} } + ///Function that fills up the histograms void Analyzer::fill_Folder(string group, const int max) { if(group == "FillRun") { @@ -1490,36 +1662,73 @@ void Analyzer::fill_Folder(string group, const int max) { histAddVal(bestVertices, "NVertices"); } else if(!isData && group == "FillGen") { - int nhadtau = 0; + //int nhadtau = 0; TLorentzVector genVec; - int i = 0; - for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it!=goodParts[CUTS::eGTau]->end(); it++, i++) { - - int nu = goodParts[CUTS::eNuTau]->at(i); - if(nu != -1) { - TLorentzVector tmp1, tmp2; - tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); - genVec = tmp1 - tmp2; - histAddVal(genVec.Pt(), "HadTauPt"); - histAddVal(genVec.Eta(), "HadTauEta"); - nhadtau++; - - } - histAddVal(_Gen->energy->at(*it), "TauEnergy"); - histAddVal(_Gen->pt->at(*it), "TauPt"); - histAddVal(_Gen->eta->at(*it), "TauEta"); - histAddVal(_Gen->phi->at(*it), "TauPhi"); - for(vec_iter it2=it+1; it2!=goodParts[CUTS::eGTau]->end(); it2++) { - TLorentzVector genObjt1; - genObjt1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - TLorentzVector genObjt2; - genObjt2.SetPtEtaPhiE(_Gen->pt->at(*it2), _Gen->eta->at(*it2), _Gen->phi->at(*it2), _Gen->energy->at(*it2)); - histAddVal(diParticleMass(genObjt1,genObjt2, "none"), "DiTauMass"); - } - } + //int i = 0; + if(goodParts[CUTS::eGTau]->size() == 1 && goodParts[CUTS::eNuTau]->size() == 1 && goodParts[CUTS::eNuTau]->at(0) != -1) { + int tau_p = goodParts[CUTS::eGTau]->at(0); + int nu_p = goodParts[CUTS::eNuTau]->at(0); + TLorentzVector Gentau, nu; + Gentau.SetPtEtaPhiE(_Gen->pt->at(tau_p), _Gen->eta->at(tau_p), _Gen->phi->at(tau_p), _Gen->energy->at(tau_p)); + nu.SetPtEtaPhiE(_Gen->pt->at(nu_p), _Gen->eta->at(nu_p), _Gen->phi->at(nu_p), _Gen->energy->at(nu_p)); + + TLorentzVector Hadtau = Gentau - nu; + + double ghadtau_frac_scalar = Hadtau.Pt() / (Hadtau.Pt()+nu.Pt()); + double ghadtau_frac_vector = Hadtau.Pt() / (Gentau.Pt()); + histAddVal(ghadtau_frac_scalar, "HadTauFrac_scalar"); + histAddVal(ghadtau_frac_vector, "HadTauFrac_vector"); + histAddVal(Hadtau.Pt(), "HadTauPt"); + histAddVal(nu.Pt(), "NuPt"); + histAddVal(nu.P(), "NuP"); + histAddVal(Hadtau.Eta(), "HadTauEta"); + histAddVal(Hadtau.DeltaR(nu), "DeltaR"); + histAddVal(Gentau.Energy(), "TauEnergy"); + histAddVal(Gentau.Pt(), "TauPt"); + histAddVal(Gentau.Eta(), "TauEta"); + histAddVal(Gentau.Phi(), "TauPhi"); + } histAddVal(goodParts[CUTS::eGTau]->size(), "NTau"); - histAddVal(nhadtau, "NHadTau"); + histAddVal(goodParts[CUTS::eNuTau]->size(), "NNu"); + // for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it!=goodParts[CUTS::eGTau]->end(); it++, i++) { + + // int nu = goodParts[CUTS::eNuTau]->at(i); + // //cout << nu << endl; + // if(nu != -1) { + // TLorentzVector tmp1, tmp2; + // double ghadtau_ptx; //new7.22.17 + // double ghadtau_pty; //new7.22.17 + // TVector2 ghadtau_pt; //new7.22.17 + // double ghadtau_ptmod; //new7.22.17 + // double ghadtau_frac; //new7.22.17 + // tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + // tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); + // genVec = tmp1 - tmp2; + // ghadtau_ptx = (tmp1.Pt() * cos(tmp1.Phi())) - (tmp2.Pt() * cos(tmp2.Phi())); //new7.22.17 + // ghadtau_pty = (tmp1.Pt() * sin(tmp1.Phi())) - (tmp2.Pt() * sin(tmp2.Phi())); //new7.22.17 + // ghadtau_pt.Set(ghadtau_ptx, ghadtau_pty); //new7.22.17 + // ghadtau_ptmod = ghadtau_pt.Mod(); //new7.22.17 + // ghadtau_frac = ghadtau_ptmod / tmp1.Pt(); //new7.22.17 + // histAddVal(ghadtau_frac, "HadTauFrac"); + // histAddVal(genVec.Pt(), "HadTauPt"); + // histAddVal(genVec.Eta(), "HadTauEta"); + // nhadtau++; + + // } + // histAddVal(_Gen->energy->at(*it), "TauEnergy"); + // histAddVal(_Gen->pt->at(*it), "TauPt"); + // histAddVal(_Gen->eta->at(*it), "TauEta"); + // histAddVal(_Gen->phi->at(*it), "TauPhi"); + // for(vec_iter it2=it+1; it2!=goodParts[CUTS::eGTau]->end(); it2++) { + // TLorentzVector genObjt1; + // genObjt1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); + // TLorentzVector genObjt2; + // genObjt2.SetPtEtaPhiE(_Gen->pt->at(*it2), _Gen->eta->at(*it2), _Gen->phi->at(*it2), _Gen->energy->at(*it2)); + // histAddVal(diParticleMass(genObjt1,genObjt2, "none"), "DiTauMass"); + // } + // } + // histAddVal(goodParts[CUTS::eGTau]->size(), "NTau"); + // histAddVal(nhadtau, "NHadTau"); for(vec_iter it=goodParts[CUTS::eGMuon]->begin(); it!=goodParts[CUTS::eGMuon]->end(); it++) { histAddVal(_Gen->energy->at(*it), "MuonEnergy"); @@ -1529,12 +1738,17 @@ void Analyzer::fill_Folder(string group, const int max) { } histAddVal(goodParts[CUTS::eGMuon]->size(), "NMuon"); - + for(vec_iter it=goodParts[CUTS::eGW]->begin(); it!=goodParts[CUTS::eGW]->end(); it++){ + histAddVal(_Gen->energy->at(*it), "WEnergy"); + histAddVal(_Gen->pt->at(*it), "WPt"); + histAddVal(_Gen->eta->at(*it), "WEta"); + histAddVal(_Gen->phi->at(*it), "WPhi"); + } } else if(fillInfo[group]->type == FILLER::Single) { Particle* part = fillInfo[group]->part; CUTS ePos = fillInfo[group]->ePos; - + for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { histAddVal(part->smearP.at(*it).Energy(), "Energy"); histAddVal(part->smearP.at(*it).Pt(), "Pt"); @@ -1570,7 +1784,6 @@ void Analyzer::fill_Folder(string group, const int max) { histAddVal(leadeta, "FirstLeadingEta"); } - histAddVal(goodParts[ePos]->size(), "N"); @@ -1579,8 +1792,8 @@ void Analyzer::fill_Folder(string group, const int max) { histAddVal(sumptForHt, "HT"); histAddVal(sumptForHt + sqrt((sumpxForMht * sumpxForMht) + (sumpyForMht * sumpyForMht)), "Meff"); histAddVal(theMETVector.Pt(), "Met"); - - } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() == 0) { + } + else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() == 0) { if(goodParts[CUTS::eR1stJet]->at(0) != -1) { histAddVal(_Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)).Pt(), "FirstPt"); @@ -1592,7 +1805,7 @@ void Analyzer::fill_Folder(string group, const int max) { } - } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() != 0) { + } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() != 0) { TLorentzVector first = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)); TLorentzVector second = _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); @@ -1633,7 +1846,6 @@ void Analyzer::fill_Folder(string group, const int max) { histAddVal(alpha, "Alpha"); - //dijet info } else if(group == "FillDiJet") { double leaddijetmass = 0; double leaddijetpt = 0; @@ -1682,34 +1894,66 @@ void Analyzer::fill_Folder(string group, const int max) { TLorentzVector part2; for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { - int p1= (*it) / BIG_NUM; int p2= (*it) % BIG_NUM; part1 = lep1->smearP.at(p1); part2 = lep2->smearP.at(p2); - double add_px = (part1.Pt() * cos(part1.Phi())) + (part2.Pt() * cos(part2.Phi())); - double add_py = (part1.Pt() * sin(part1.Phi())) + (part2.Pt() * sin(part2.Phi())); -// TLorentzVector add_p = part1 + part2; - double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); - + double add_px = part1.Px() + part2.Px(); //sum of the x-components of the momenta for the muons + double add_py = part1.Py() + part2.Py(); //sum of the y-components of the momenta for the muons + + TLorentzVector boost_pt; //initialized vector for x and y-components of the muon momenta + boost_pt.SetPxPyPzE(add_px, add_py, 0, 0); + //double booster = boost_pt.Pt(); + TLorentzVector u_t; //initialized vector for recoil + u_t = -1 * (boost_pt + theMETVector); //Recoil is the negative sum of the Z Pt and MET. + + TVector2 boost_pt2; //two-component boost (Pt) vector for easy manipulations + boost_pt2.Set(add_px, add_py); //put the muons' x and y-momenta in it + TVector2 boost_unitpar; //two-component vector for the unit vector parallel to the Z Pt + boost_unitpar = boost_pt2.Unit(); + TVector2 boost_unitper; //two-component vector for the unit vector perpendicular to the Z Pt + boost_unitper.Set((-1 / boost_pt2.Mod()) * add_py, (1 / boost_pt2.Mod()) * add_px); + + TVector2 ut_pt2; //two-component vector for the recoil Pt + ut_pt2.Set(u_t.Px(), u_t.Py()); + double ut_par = boost_unitpar * ut_pt2; //Project the recoil onto the unit vector parallel to the Z Pt + histAddVal(ut_par, "Utpar"); //Fill the histogram for the parallel component of the recoil. + double ut_per = boost_unitper * ut_pt2; //Project the recoil onto the unit vector perpendicular to the Z Pt + histAddVal(ut_per, "Utper"); //Fill the histogram for the perpendicular component of the recoil. + //do our dirty tree stuff here: - zBoostTree["mu1_pt"]=part1.Pt(); - //put it accidentally in the tree - histo.fillTree("zboost"); - + //zBoostTree["treeweight"] = wgt; + //zBoostTree["mu1pt"] = part1.Pt(); + //zBoostTree["mu2pt"] = part2.Pt(); + //zBoostTree["addpxZ"] = boost_pt.Px(); + //zBoostTree["addpyZ"] = boost_pt.Py(); + //zBoostTree["utpx"] = addpxZMETx; + //zBoostTree["utpy"] = addpyZMETy; + //zBoostTree["utmagn"] = utmag; + //zBoostTree["utpar"] = ut_par; + //zBoostTree["utper"] = ut_per; + //zBoostTree["boostedz"] = TMath::Sqrt(pow(lep1->smearP.at(p1).Px() + lep2->smearP.at(p2).Px(), 2) + pow(lep1->smearP.at(p1).Py() + lep2->smearP.at(p2).Py(), 2)); + //add this and remove the other settings + //if(goodParts[CUTS::eRJet1]->size()>0){ + //zBoostTree["FLJetPt"] =_Jet->smearP.at(goodParts[CUTS::eRJet1]->at(0)).Pt(); + //}else{ + //zBoostTree["FLJetPt"] =0; + //} + //if(goodParts[CUTS::eDiMuon]->size()>0 && it==goodParts[ePos]->begin()){ + //histo.fillTree("zboost");} histAddVal2(part1.Pt(),part2.Pt(), "Part1PtVsPart2Pt"); histAddVal(part1.DeltaR(part2), "DeltaR"); if(group.find("Di") != string::npos) { - histAddVal((part1.Pt() - part2.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); - histAddVal(part1.Pt() - part2.Pt(), "DeltaPt"); - histAddVal(TMath::Sqrt(mag_addp2), "Boost"); + histAddVal((part1.Pt() - part2.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); + histAddVal(part1.Pt() - part2.Pt(), "DeltaPt"); + histAddVal(boost_pt2.Mod(), "Boost"); } else { - histAddVal((part2.Pt() - part1.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); - histAddVal(part2.Pt() - part1.Pt(), "DeltaPt"); - histAddVal(TMath::Sqrt(mag_addp2), "Boost"); + histAddVal((part2.Pt() - part1.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); + histAddVal(part2.Pt() - part1.Pt(), "DeltaPt"); + histAddVal(boost_pt2.Mod(), "Boost"); } histAddVal(cos(absnormPhi(part2.Phi() - part1.Phi())), "CosDphi"); histAddVal(absnormPhi(part1.Phi() - theMETVector.Phi()), "Part1MetDeltaPhi"); @@ -1742,18 +1986,17 @@ void Analyzer::fill_Folder(string group, const int max) { } if(lep1->type != PType::Tau) { - histAddVal(isZdecay(part1, *lep1), "Part1IsZdecay"); + histAddVal(isZdecay(part1, *lep1), "Part1IsZdecay"); } if(lep2->type != PType::Tau){ histAddVal(isZdecay(part2, *lep2), "Part2IsZdecay"); } + + } } - } } - void Analyzer::initializePileupInfo(string MCHisto, string DataHisto, string DataHistoName, string MCHistoName) { - TFile *file1 = new TFile((PUSPACE+MCHisto).c_str()); TH1D* histmc = (TH1D*)file1->FindObjectAny(MCHistoName.c_str()); if(!histmc) throw std::runtime_error("failed to extract histogram"); diff --git a/src/Analyzer.h b/src/Analyzer.h index 763e85f..7715dcf 100644 --- a/src/Analyzer.h +++ b/src/Analyzer.h @@ -52,6 +52,10 @@ class Analyzer { void printCuts(); void writeout(); int nentries; + void checkParticleDecayList(int); + void writeParticleDecayList(int, fstream&); + bool checkforW(); + bool checkforZ(); void fill_histogram(); void setControlRegions() { histo.setControlRegions();} @@ -111,6 +115,11 @@ class Analyzer { bool passedLooseJetID(int); pair getPZeta(const TLorentzVector&, const TLorentzVector&); + //double getZBoostWeight(const TLorentzVector&, const TLorentzVector&); + //double getZBoostWeight(const TLorentzVector&, const TLorentzVector&); + double getWBoostWeight(); + double getZBoostWeight(); + double getParallelRecoilWeight(const TLorentzVector&, const TLorentzVector&); void create_fillInfo(); inline bool passCutRange(string, double, const PartStats&); diff --git a/src/Cut_enum.h b/src/Cut_enum.h index 9e8585c..c6a4573 100644 --- a/src/Cut_enum.h +++ b/src/Cut_enum.h @@ -52,7 +52,7 @@ struct EnumHash { enum class CUTS { eGen, - eGTau, eGTop, eGElec, eGMuon, eGZ, eGW, eGHiggs, + eGTau, eGTop, eGElec, eGMuon, eGZ, eGW, eGHiggs, eRVertex, eRMuon1, eRMuon2, eRElec1, eRElec2, eRTau1, eRTau2, eRJet1, eRJet2, eRCenJet, eR1stJet, eR2ndJet, eRBJet, eRWjet, eDiElec, eDiMuon, eDiTau, eDiJet, diff --git a/src/main.cc b/src/main.cc index 04f1eac..e857d12 100644 --- a/src/main.cc +++ b/src/main.cc @@ -102,18 +102,22 @@ int main (int argc, char* argv[]) { //catch ctrl+c and just exit the loop //this way we still have the output signal(SIGINT,KeyboardInterrupt_endJob); - - - for(int i=0; i < testing.nentries; i++) { + //fstream f; commented-out 7.27.17 + //f.open("particle_decay_list.txt", fstream::out | fstream::trunc); commented-out 7.27.17 + for(int i=0; i < testing.nentries; i++){ + //for(int i=0; i < 50; i++) { commented-out 7.27.17 + //f << "Event: " << i << endl; commented-out 7.27.17 testing.clear_values(); testing.preprocess(i); + //testing.writeParticleDecayList(i, f); commented-out 7.27.17 testing.fill_histogram(); - //this will be set if ctrl+c is pressed + //this will be set if ctrl+c is pressed //commented-out7.27.17 if(do_break){ testing.nentries=i; break; } } + //f.close(); //commented-out 7.27.17 testing.printCuts(); return 0; } From b88fcd3cbef957d4bacda580a1a6ce8196afd9a3 Mon Sep 17 00:00:00 2001 From: Savanna Starko Date: Wed, 17 Jan 2018 09:06:12 -0600 Subject: [PATCH 3/6] mycommitmsg --- src/Analyzer.cc | 195 +++++++++++++++++++++++++++++++----------------- 1 file changed, 125 insertions(+), 70 deletions(-) diff --git a/src/Analyzer.cc b/src/Analyzer.cc index 4678e45..d142a62 100644 --- a/src/Analyzer.cc +++ b/src/Analyzer.cc @@ -68,7 +68,6 @@ const unordered_map Analyzer::cut_num = { }; - ////////////////////////////////////////////////////// //////////////////PUBLIC FUNCTIONS//////////////////// ////////////////////////////////////////////////////// @@ -78,6 +77,7 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co cout << "setup start" << endl; BOOM= new TChain("TNT/BOOM"); + infoFile=0; for( string infile: infiles){ BOOM->AddFile(infile.c_str()); @@ -97,7 +97,7 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co trigName[i] = tmps; } - filespace="PartDet"; + filespace=configFolder; filespace+="/"; setupGeneral(); @@ -123,7 +123,7 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co }else { doSystematics=false; } - + cout << doSystematics << endl; _Electron = new Electron(BOOM, filespace + "Electron_info.in", syst_names); _Muon = new Muon(BOOM, filespace + "Muon_info.in", syst_names); _Tau = new Taus(BOOM, filespace + "Tau_info.in", syst_names); @@ -139,10 +139,6 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co } - // for(Particle* ipart: allParticles){ - // ipart->findExtraCuts(); - // } - vector cr_variables; if(setCR) { char buf[64]; @@ -178,6 +174,7 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co std::remove(outfile.c_str()); // delete file histo = Histogramer(1, filespace+"Hist_entries.in", filespace+"Cuts.in", outfile, isData, cr_variables); if(doSystematics) + //cout << "syst_names: " << syst_names.size() << endl; syst_histo=Histogramer(1, filespace+"Hist_syst_entries.in", filespace+"Cuts.in", outfile, isData, cr_variables,syst_names); systematics = Systematics(distats); jetScaleRes = JetScaleResolution("Pileup/Summer16_23Sep2016V4_MC_Uncertainty_AK4PFchs.txt", "", "Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt", "Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt"); @@ -341,6 +338,48 @@ void Analyzer::setupCR(string var, double val) { +////destructor +Analyzer::~Analyzer() { + clear_values(); + delete BOOM; + delete _Electron; + delete _Muon; + delete _Tau; + delete _Jet; + if(!isData) delete _Gen; + + for(auto pair: fillInfo) { + delete pair.second; + pair.second=nullptr; + } + + for(auto e: Enum()) { + delete goodParts[e]; + goodParts[e]=nullptr; + } + //for(auto &it: syst_parts) { + //for(auto e: Enum()) { + //if( it[e] != nullptr) { + //if(it.find(e) != it.end()){ + //delete it[e]; + //it[e]=nullptr; + //} + //} + //} + //} + for(auto it: testVec){ + delete it; + it=nullptr; + } + + for(int i=0; i < nTrigReq; i++) { + delete trigPlace[i]; + delete trigName[i]; + } + +} + + ///resets values so analysis can start void Analyzer::clear_values() { @@ -354,7 +393,10 @@ void Analyzer::clear_values() { it[e]->clear(); } } - + if(infoFile!=BOOM->GetFile()){ + cout<<"New file!"<GetFile(); + } if(version==1 && infoFile!=BOOM->GetFile()){ cout<<"New file! Will get the trigger info."<GetFile(); @@ -390,35 +432,36 @@ void Analyzer::preprocess(int event) { _Gen->setOrigReco(); getGoodGen(_Gen->pstats["Gen"]); getGoodTauNu(); - bool checkw = checkforW(); //new7.27.17 See if there's a W with the function checkforW. - bool checkz = checkforZ(); //new9.15.17 See if there's a Z with the function checkforZ. - if(checkw){ - double boostw = getWBoostWeight(); //Grab the p_T of the W. - if(boostw > 0 && boostw <= 50) {pu_weight *= 1.1192;} //new7.27.17 - else if (boostw > 50 && boostw <= 100) {pu_weight *= 1.1034;} //new7.27.17 - else if (boostw > 100 && boostw <= 150) {pu_weight *= 1.0675;} //new7.27.17 - else if (boostw > 150 && boostw <= 200) {pu_weight *= 1.0637;} //new7.27.17 - else if (boostw > 200 && boostw <= 300) {pu_weight *= 1.0242;} //new7.27.17 - else if (boostw > 300 && boostw <= 400) {pu_weight *= 0.9453;} //new7.27.17 - else if (boostw > 400 && boostw <= 600) {pu_weight *= 0.8579;} //new7.27.17 - else if (boostw >= 600) {pu_weight *= 0.7822;} //new7.27.17 - else {pu_weight *= 1;} //new7.27.17 - } - else if (checkz){ - double boostz = getZBoostWeight(); //Grab the p_T of the Z. - if(boostz > 0 && boostz <= 50) {pu_weight *= 1.1192;} //new9.15.17 - else if (boostz > 50 && boostz <= 100) {pu_weight *= 1.1034;} //new9.15.17 - else if (boostz > 100 && boostz <= 150) {pu_weight *= 1.0675;} //new9.15.17 - else if (boostz > 150 && boostz <= 200) {pu_weight *= 1.0637;} //new9.15.17 - else if (boostz > 200 && boostz <= 300) {pu_weight *= 1.0242;} //new9.15.17 - else if (boostz > 300 && boostz <= 400) {pu_weight *= 0.9453;} //new9.15.17 - else if (boostz > 400 && boostz <= 600) {pu_weight *= 0.8579;} //new9.15.17 - else if (boostz >= 600) {pu_weight *= 0.7822;} //new9.15.17 - else {pu_weight *= 1;} //new9.15.17 - } - else {pu_weight *= 1;} //new7.27.17 - } - + //---MY APPLICATION OF BOOST WEIGHTS------------------------------------------- + // bool checkw = checkforW(); //new7.27.17 See if there's a W with the function checkforW. + // bool checkz = checkforZ(); //new9.15.17 See if there's a Z with the function checkforZ. + // if(checkw){ + // double boostw = getWBoostWeight(); //Grab the p_T of the W. + // if(boostw > 0 && boostw <= 50) {pu_weight *= 1.1192;} //new7.27.17 + // else if (boostw > 50 && boostw <= 100) {pu_weight *= 1.1034;} //new7.27.17 + // else if (boostw > 100 && boostw <= 150) {pu_weight *= 1.0675;} //new7.27.17 + // else if (boostw > 150 && boostw <= 200) {pu_weight *= 1.0637;} //new7.27.17 + // else if (boostw > 200 && boostw <= 300) {pu_weight *= 1.0242;} //new7.27.17 + // else if (boostw > 300 && boostw <= 400) {pu_weight *= 0.9453;} //new7.27.17 + // else if (boostw > 400 && boostw <= 600) {pu_weight *= 0.8579;} //new7.27.17 + // else if (boostw >= 600) {pu_weight *= 0.7822;} //new7.27.17 + // else {pu_weight *= 1;} //new7.27.17 + // } + // else if (checkz){ + // double boostz = getZBoostWeight(); //Grab the p_T of the Z. + // if(boostz > 0 && boostz <= 50) {pu_weight *= 1.1192;} //new9.15.17 + // else if (boostz > 50 && boostz <= 100) {pu_weight *= 1.1034;} //new9.15.17 + // else if (boostz > 100 && boostz <= 150) {pu_weight *= 1.0675;} //new9.15.17 + // else if (boostz > 150 && boostz <= 200) {pu_weight *= 1.0637;} //new9.15.17 + // else if (boostz > 200 && boostz <= 300) {pu_weight *= 1.0242;} //new9.15.17 + // else if (boostz > 300 && boostz <= 400) {pu_weight *= 0.9453;} //new9.15.17 + // else if (boostz > 400 && boostz <= 600) {pu_weight *= 0.8579;} //new9.15.17 + // else if (boostz >= 600) {pu_weight *= 0.7822;} //new9.15.17 + // else {pu_weight *= 1;} //new9.15.17 + // } + // else {pu_weight *= 1;} //new7.27.17 + } + //---END MY APPLICATION OF BOOST WEIGHTS--------------------------------------- //////Triggers and Vertices active_part->at(CUTS::eRVertex)->resize(bestVertices); TriggerCuts(*(trigPlace[0]), *(trigName[0]), CUTS::eRTrig1); @@ -514,7 +557,7 @@ void Analyzer::getGoodParticles(int syst){ bool Analyzer::fillCuts(bool fillCounter) { const unordered_map >* cut_info = histo.get_cuts(); const vector* cut_order = histo.get_cutorder(); - + bool prevTrue = true; maxCut=0; @@ -997,11 +1040,11 @@ void Analyzer::smearJet(Particle& jet, const CUTS eGenPos, const PartStats& stat } //add energy scale uncertainty - string systname = syst_names.at(syst); - + //cout << systname << endl; for(size_t i=0; i< jet.size(); i++) { TLorentzVector jetReco = jet.RecoP4(i); + if(JetMatchesLepton(*_Muon, jetReco, stats.dmap.at("MuonMatchingDeltaR"), CUTS::eGMuon) || JetMatchesLepton(*_Tau, jetReco, stats.dmap.at("TauMatchingDeltaR"), CUTS::eGTau) || JetMatchesLepton(*_Electron, jetReco,stats.dmap.at("ElectronMatchingDeltaR"), CUTS::eGElec)){ @@ -1013,18 +1056,21 @@ void Analyzer::smearJet(Particle& jet, const CUTS eGenPos, const PartStats& stat //only apply corrections for jets not for FatJets TLorentzVector genJet=matchJetToGen(jetReco, jet.pstats["Smear"],eGenPos); + //cout << "1: " << genJet.Pt() << endl; //01.05.18 if(systname=="orig"){ - sf=jetScaleRes.GetRes(jetReco,genJet, rho, 0); + sf= 1.0 ; //jetScaleRes.GetRes(jetReco,genJet, rho, 0); 01.15.18 }else if(systname=="Jet_Res_Up"){ sf=jetScaleRes.GetRes(jetReco,genJet, rho, 1); }else if(systname=="Jet_Res_Down"){ sf=jetScaleRes.GetRes(jetReco,genJet, rho, -1); }else if(systname=="Jet_Scale_Up"){ - sf = 1.+ jetScaleRes.GetScale(jetReco, false, +1.); + sf = 1.05 ; //1.+ jetScaleRes.GetScale(jetReco, false, +1.); 01.15.18 }else if(systname=="Jet_Scale_Down"){ - sf = 1.- jetScaleRes.GetScale(jetReco, false, -1) ; + sf = 0.95 ; //1.- jetScaleRes.GetScale(jetReco, false, -1) ; 01.15.18 } - systematics.shiftParticle(jet, jetReco, sf, _MET->systdeltaMEx[syst], _MET->systdeltaMEy[syst], syst); + + systematics.shiftParticle(jet, jetReco, sf, _MET->systdeltaMEx[syst], _MET->systdeltaMEy[syst], syst); + } } @@ -1267,25 +1313,21 @@ void Analyzer::getGoodRecoJets(CUTS ePos, const PartStats& stats, const int syst } if(passCuts) active_part->at(ePos)->push_back(i); i++; - } //clean up for first and second jet //note the leading jet has to be selected fist! if(ePos == CUTS::eR1stJet || ePos == CUTS::eR2ndJet) { - int potential = -1; - double prevPt = -1; - for(auto leadit : *active_part->at(ePos)) { - if(((ePos == CUTS::eR2ndJet && (leadit) != leadIndex) || ePos == CUTS::eR1stJet) && _Jet->pt(leadit) > prevPt) { - potential = leadit; - prevPt = _Jet->pt(leadit); - } + vector > ptIndexVector; + for(auto it : *active_part->at(ePos)) { + ptIndexVector.push_back(make_pair(_Jet->pt(it),it)); } - active_part->at(ePos)->clear(); - active_part->at(ePos)->push_back(potential); - if(ePos == CUTS::eR1stJet) leadIndex = active_part->at(CUTS::eR1stJet)->at(0); + sort(ptIndexVector.begin(),ptIndexVector.end()); + if(ePos == CUTS::eR1stJet && ptIndexVector.size()>0) + active_part->at(ePos)->push_back(ptIndexVector.back().second); + if(ePos == CUTS::eR2ndJet && ptIndexVector.size()>1) + active_part->at(ePos)->push_back(ptIndexVector.at(ptIndexVector.size()-2).second); } - } @@ -1393,7 +1435,7 @@ void Analyzer::VBFTopologyCut(const PartStats& stats, const int syst) { } } - if(active_part->at(CUTS::eR1stJet)->at(0) == -1 || active_part->at(CUTS::eR2ndJet)->at(0) == -1) return; + if(active_part->at(CUTS::eR1stJet)->size()==0 || active_part->at(CUTS::eR2ndJet)->size()==0) return; TLorentzVector ljet1 = _Jet->p4(active_part->at(CUTS::eR1stJet)->at(0)); TLorentzVector ljet2 = _Jet->p4(active_part->at(CUTS::eR2ndJet)->at(0)); @@ -1415,8 +1457,8 @@ void Analyzer::VBFTopologyCut(const PartStats& stats, const int syst) { double alpha = (dijet.M() > 0) ? ljet2.Pt() / dijet.M() : -1; passCuts = passCuts && passCutRange(alpha, stats.pmap.at("AlphaCut")); } - else if(cut == "DiscrByDphi1") passCuts = passCuts && passCutRange(abs(dphi1), stats.pmap.at("DPhi1Cut")); - else if(cut == "DiscrByDphi2") passCuts = passCuts && passCutRange(abs(dphi2), stats.pmap.at("DPhi2Cut")); + else if(cut == "DiscrByDphi1") passCuts = passCuts && passCutRange(abs(dphi1), stats.pmap.at("Dphi1Cut")); + else if(cut == "DiscrByDphi2") passCuts = passCuts && passCutRange(abs(dphi2), stats.pmap.at("Dphi2Cut")); else cout << "cut: " << cut << " not listed" << endl; } @@ -1789,8 +1831,8 @@ void Analyzer::fill_histogram() { }else wgt=1.; //backup current weight backup_wgt=wgt; - - for(size_t i = 0; i < syst_names.size(); i++) { + cout << "syst_names size: " << syst_names.size() << endl; + for(size_t i = 0; i < syst_names.size(); i++) { for(Particle* ipart: allParticles) ipart->setCurrentP(i); _MET->setCurrentP(i); active_part =&syst_parts.at(i); @@ -1799,17 +1841,23 @@ void Analyzer::fill_histogram() { active_part = &goodParts; fillCuts(true); for(auto it: *groups) { + cout << "it1: " << it << endl; fill_Folder(it, maxCut, histo, false); } }else{ + //cout << "isyst: " << i << endl; //get the non particle conditions: for(auto itCut : nonParticleCuts){ + //cout << "itcut: " << itCut << endl; active_part->at(itCut)=goodParts.at(itCut); } //cout<<"________________"<at(CUTS::eGTau)->begin(); it!=active_part->at(CUTS::eGTau)->end(); it++, i++) { @@ -1913,7 +1961,11 @@ void Analyzer::fill_Folder(string group, const int max, Histogramer &ihisto, boo //cout<<"mass leptons "<p4(i); + //cout<<_Gen->size()<<" "<size()>_Gen->cur_P.size()){ + //_Gen->init(); + //} + lep1= _Gen->RecoP4(i); } } } @@ -1938,6 +1990,7 @@ void Analyzer::fill_Folder(string group, const int max, Histogramer &ihisto, boo histAddVal(_Tau->nProngs->at(it), "NumSignalTracks"); histAddVal(_Tau->charge(it), "Charge"); histAddVal(_Tau->leadChargedCandPt->at(it), "SeedTrackPt"); + //histAddVal(calculateLeptonMetMt(part->p4(it)), "MetMt"); } if(part->type != PType::Jet) { histAddVal(calculateLeptonMetMt(part->p4(it)), "MetMt"); @@ -1978,12 +2031,12 @@ void Analyzer::fill_Folder(string group, const int max, Histogramer &ihisto, boo histAddVal(_MET->phi(), "MetPhi"); } else if(group == "FillLeadingJet" && active_part->at(CUTS::eSusyCom)->size() == 0) { - - if(active_part->at(CUTS::eR1stJet)->at(0) != -1) { + + if(active_part->at(CUTS::eR1stJet)->size()>0) { histAddVal(_Jet->p4(active_part->at(CUTS::eR1stJet)->at(0)).Pt(), "FirstPt"); histAddVal(_Jet->p4(active_part->at(CUTS::eR1stJet)->at(0)).Eta(), "FirstEta"); } - if(active_part->at(CUTS::eR2ndJet)->at(0) != -1) { + if(active_part->at(CUTS::eR2ndJet)->size()>0) { histAddVal(_Jet->p4(active_part->at(CUTS::eR2ndJet)->at(0)).Pt(), "SecondPt"); histAddVal(_Jet->p4(active_part->at(CUTS::eR2ndJet)->at(0)).Eta(), "SecondEta"); } @@ -2100,12 +2153,14 @@ void Analyzer::fill_Folder(string group, const int max, Histogramer &ihisto, boo double add_px = (part1.Pt() * cos(part1.Phi())) + (part2.Pt() * cos(part2.Phi())); double add_py = (part1.Pt() * sin(part1.Phi())) + (part2.Pt() * sin(part2.Phi())); // TLorentzVector add_p = part1 + part2; - double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); + //double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); TLorentzVector boost_pt; //initialized vector for x and y-components of the muon momenta boost_pt.SetPxPyPzE(add_px, add_py, 0, 0); //double booster = boost_pt.Pt(); - TLorentzVector u_t; //initialized vector for recoil - u_t = -1 * (boost_pt + theMETVector); //Recoil is the negative sum of the Z Pt and MET. + TLorentzVector u_t; //initialized vector for recoil + TLorentzVector met_pt; + met_pt.SetPxPyPzE(_MET->px(), _MET->py(), 0, 0); + u_t = -1 * (boost_pt + met_pt); //Recoil is the negative sum of the Z Pt and MET. TVector2 boost_pt2; //two-component boost (Pt) vector for easy manipulations boost_pt2.Set(add_px, add_py); //put the muons' x and y-momenta in it TVector2 boost_unitpar; //two-component vector for the unit vector parallel to the Z Pt From 075ee68b9c9f300d3ea1460fbe004cf7bd798b16 Mon Sep 17 00:00:00 2001 From: Savanna Starko Date: Wed, 17 Jan 2018 09:06:37 -0600 Subject: [PATCH 4/6] mycommitmsg --- src/Systematics.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Systematics.cc b/src/Systematics.cc index 2a5289c..8a09e50 100644 --- a/src/Systematics.cc +++ b/src/Systematics.cc @@ -19,7 +19,7 @@ void Systematics::shiftParticle(Particle& jet, TLorentzVector recJet, double con dPx+=recJet.Px()*(ratio-1); dPy+=recJet.Py()*(ratio-1); //WARNING change the particle content for the particle - recJet*=ratio; + recJet=recJet*ratio; jet.addP4Syst(recJet, syst); return; } @@ -49,7 +49,7 @@ void Systematics::loadScaleRes(const PartStats& smear, const PartStats& syst, st } if(syst_name.find("_Res_")) { resolution = syst_name.find("_Up") ? 1 + syst.dmap.at("res") : 1 - syst.dmap.at("res"); - } else if(syst_name.find("_Res_")) { + } else if(syst_name.find("_Scale_")) { scale = syst_name.find("_Up") ? 1+syst.dmap.at("scale") : 1- syst.dmap.at("scale"); } } From 54d3b2739cd27e12862ce36245e18ffa683f2139 Mon Sep 17 00:00:00 2001 From: Savanna Starko Date: Wed, 24 Jan 2018 11:16:43 -0600 Subject: [PATCH 5/6] mycommitmsg1.24.18 --- .../Control_Regions.in | 29 + PartDet_isrstau_signalmc_12.08/Cuts.in | 71 +++ .../DiParticle_info.in | 100 +++ .../ElectronTau_info.in | 112 ++++ .../Electron_info.in | 75 +++ PartDet_isrstau_signalmc_12.08/FatJet_info.in | 36 ++ PartDet_isrstau_signalmc_12.08/Gen_info.in | 29 + .../Hist_entries.in | 600 ++++++++++++++++++ .../Hist_syst_entries.in | 599 +++++++++++++++++ PartDet_isrstau_signalmc_12.08/Jet_info.in | 160 +++++ .../MuonElectron_info.in | 111 ++++ .../MuonTau_info.in | 111 ++++ PartDet_isrstau_signalmc_12.08/Muon_info.in | 68 ++ PartDet_isrstau_signalmc_12.08/Run_info.in | 45 ++ .../Systematics_info.in | 72 +++ PartDet_isrstau_signalmc_12.08/Tau_info.in | 113 ++++ .../VBFCuts_info.in | 29 + .../Control_Regions.in | 29 + .../Cuts.in | 71 +++ .../DiParticle_info.in | 100 +++ .../ElectronTau_info.in | 112 ++++ .../Electron_info.in | 75 +++ .../FatJet_info.in | 36 ++ .../Gen_info.in | 29 + .../Hist_entries.in | 600 ++++++++++++++++++ .../Hist_syst_entries.in | 599 +++++++++++++++++ .../Jet_info.in | 160 +++++ .../MuonElectron_info.in | 111 ++++ .../MuonTau_info.in | 111 ++++ .../Muon_info.in | 68 ++ .../Run_info.in | 45 ++ .../Systematics_info.in | 72 +++ .../Tau_info.in | 113 ++++ .../VBFCuts_info.in | 29 + .../Control_Regions.in | 29 + .../Cuts.in | 71 +++ .../DiParticle_info.in | 100 +++ .../ElectronTau_info.in | 112 ++++ .../Electron_info.in | 75 +++ .../FatJet_info.in | 36 ++ .../Gen_info.in | 29 + .../Hist_entries.in | 600 ++++++++++++++++++ .../Hist_syst_entries.in | 599 +++++++++++++++++ .../Jet_info.in | 160 +++++ .../MuonElectron_info.in | 111 ++++ .../MuonTau_info.in | 111 ++++ .../Muon_info.in | 68 ++ .../Run_info.in | 45 ++ .../Systematics_info.in | 72 +++ .../Tau_info.in | 113 ++++ .../VBFCuts_info.in | 29 + PartDet_wmu_11.10/Control_Regions.in | 29 + PartDet_wmu_11.10/Cuts.in | 71 +++ PartDet_wmu_11.10/DiParticle_info.in | 100 +++ PartDet_wmu_11.10/ElectronTau_info.in | 112 ++++ PartDet_wmu_11.10/Electron_info.in | 75 +++ PartDet_wmu_11.10/FatJet_info.in | 36 ++ PartDet_wmu_11.10/Gen_info.in | 29 + PartDet_wmu_11.10/Hist_entries.in | 598 +++++++++++++++++ PartDet_wmu_11.10/Hist_syst_entries.in | 599 +++++++++++++++++ PartDet_wmu_11.10/Jet_info.in | 160 +++++ PartDet_wmu_11.10/MuonElectron_info.in | 111 ++++ PartDet_wmu_11.10/MuonTau_info.in | 111 ++++ PartDet_wmu_11.10/Muon_info.in | 68 ++ PartDet_wmu_11.10/Run_info.in | 51 ++ PartDet_wmu_11.10/Systematics_info.in | 72 +++ PartDet_wmu_11.10/Tau_info.in | 111 ++++ PartDet_wmu_11.10/VBFCuts_info.in | 29 + PartDet_zmumu_11.10/Control_Regions.in | 29 + PartDet_zmumu_11.10/Cuts.in | 71 +++ PartDet_zmumu_11.10/DiParticle_info.in | 100 +++ PartDet_zmumu_11.10/ElectronTau_info.in | 112 ++++ PartDet_zmumu_11.10/Electron_info.in | 75 +++ PartDet_zmumu_11.10/FatJet_info.in | 36 ++ PartDet_zmumu_11.10/Gen_info.in | 29 + PartDet_zmumu_11.10/Hist_entries.in | 598 +++++++++++++++++ PartDet_zmumu_11.10/Hist_syst_entries.in | 599 +++++++++++++++++ PartDet_zmumu_11.10/Jet_info.in | 160 +++++ PartDet_zmumu_11.10/MuonElectron_info.in | 111 ++++ PartDet_zmumu_11.10/MuonTau_info.in | 111 ++++ PartDet_zmumu_11.10/Muon_info.in | 68 ++ PartDet_zmumu_11.10/Run_info.in | 51 ++ PartDet_zmumu_11.10/Systematics_info.in | 72 +++ PartDet_zmumu_11.10/Tau_info.in | 111 ++++ PartDet_zmumu_11.10/VBFCuts_info.in | 29 + PartDet_ztautau_11.10/Control_Regions.in | 29 + PartDet_ztautau_11.10/Cuts.in | 71 +++ PartDet_ztautau_11.10/DiParticle_info.in | 100 +++ PartDet_ztautau_11.10/ElectronTau_info.in | 112 ++++ PartDet_ztautau_11.10/Electron_info.in | 75 +++ PartDet_ztautau_11.10/FatJet_info.in | 36 ++ PartDet_ztautau_11.10/Gen_info.in | 29 + PartDet_ztautau_11.10/Hist_entries.in | 598 +++++++++++++++++ PartDet_ztautau_11.10/Hist_syst_entries.in | 599 +++++++++++++++++ PartDet_ztautau_11.10/Jet_info.in | 160 +++++ PartDet_ztautau_11.10/MuonElectron_info.in | 111 ++++ PartDet_ztautau_11.10/MuonTau_info.in | 111 ++++ PartDet_ztautau_11.10/Muon_info.in | 68 ++ PartDet_ztautau_11.10/Run_info.in | 45 ++ PartDet_ztautau_11.10/Systematics_info.in | 72 +++ PartDet_ztautau_11.10/Tau_info.in | 111 ++++ PartDet_ztautau_11.10/VBFCuts_info.in | 29 + ...forpuweightuncertainty_150GeVLSP_12.08.pdf | Bin 0 -> 39233 bytes ...forpuweightuncertainty_250GeVLSP_12.08.pdf | Bin 0 -> 39266 bytes ..._forpuweightuncertainty_50GeVLSP_12.08.pdf | Bin 0 -> 38265 bytes src/Analyzer.cc | 41 +- src/MET.cc | 2 +- 107 files changed, 14178 insertions(+), 25 deletions(-) create mode 100644 PartDet_isrstau_signalmc_12.08/Control_Regions.in create mode 100644 PartDet_isrstau_signalmc_12.08/Cuts.in create mode 100644 PartDet_isrstau_signalmc_12.08/DiParticle_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/ElectronTau_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Electron_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/FatJet_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Gen_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Hist_entries.in create mode 100644 PartDet_isrstau_signalmc_12.08/Hist_syst_entries.in create mode 100644 PartDet_isrstau_signalmc_12.08/Jet_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/MuonElectron_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/MuonTau_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Muon_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Run_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Systematics_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/Tau_info.in create mode 100644 PartDet_isrstau_signalmc_12.08/VBFCuts_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Control_Regions.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Cuts.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/DiParticle_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/ElectronTau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Electron_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/FatJet_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Gen_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_entries.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_syst_entries.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Jet_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonElectron_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonTau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Muon_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Run_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Systematics_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Tau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/VBFCuts_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Control_Regions.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Cuts.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/DiParticle_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/ElectronTau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Electron_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/FatJet_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Gen_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_entries.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_syst_entries.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Jet_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonElectron_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonTau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Muon_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Run_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Systematics_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Tau_info.in create mode 100644 PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/VBFCuts_info.in create mode 100644 PartDet_wmu_11.10/Control_Regions.in create mode 100644 PartDet_wmu_11.10/Cuts.in create mode 100644 PartDet_wmu_11.10/DiParticle_info.in create mode 100644 PartDet_wmu_11.10/ElectronTau_info.in create mode 100644 PartDet_wmu_11.10/Electron_info.in create mode 100644 PartDet_wmu_11.10/FatJet_info.in create mode 100644 PartDet_wmu_11.10/Gen_info.in create mode 100644 PartDet_wmu_11.10/Hist_entries.in create mode 100644 PartDet_wmu_11.10/Hist_syst_entries.in create mode 100644 PartDet_wmu_11.10/Jet_info.in create mode 100644 PartDet_wmu_11.10/MuonElectron_info.in create mode 100644 PartDet_wmu_11.10/MuonTau_info.in create mode 100644 PartDet_wmu_11.10/Muon_info.in create mode 100644 PartDet_wmu_11.10/Run_info.in create mode 100644 PartDet_wmu_11.10/Systematics_info.in create mode 100644 PartDet_wmu_11.10/Tau_info.in create mode 100644 PartDet_wmu_11.10/VBFCuts_info.in create mode 100644 PartDet_zmumu_11.10/Control_Regions.in create mode 100644 PartDet_zmumu_11.10/Cuts.in create mode 100644 PartDet_zmumu_11.10/DiParticle_info.in create mode 100644 PartDet_zmumu_11.10/ElectronTau_info.in create mode 100644 PartDet_zmumu_11.10/Electron_info.in create mode 100644 PartDet_zmumu_11.10/FatJet_info.in create mode 100644 PartDet_zmumu_11.10/Gen_info.in create mode 100644 PartDet_zmumu_11.10/Hist_entries.in create mode 100644 PartDet_zmumu_11.10/Hist_syst_entries.in create mode 100644 PartDet_zmumu_11.10/Jet_info.in create mode 100644 PartDet_zmumu_11.10/MuonElectron_info.in create mode 100644 PartDet_zmumu_11.10/MuonTau_info.in create mode 100644 PartDet_zmumu_11.10/Muon_info.in create mode 100644 PartDet_zmumu_11.10/Run_info.in create mode 100644 PartDet_zmumu_11.10/Systematics_info.in create mode 100644 PartDet_zmumu_11.10/Tau_info.in create mode 100644 PartDet_zmumu_11.10/VBFCuts_info.in create mode 100644 PartDet_ztautau_11.10/Control_Regions.in create mode 100644 PartDet_ztautau_11.10/Cuts.in create mode 100644 PartDet_ztautau_11.10/DiParticle_info.in create mode 100644 PartDet_ztautau_11.10/ElectronTau_info.in create mode 100644 PartDet_ztautau_11.10/Electron_info.in create mode 100644 PartDet_ztautau_11.10/FatJet_info.in create mode 100644 PartDet_ztautau_11.10/Gen_info.in create mode 100644 PartDet_ztautau_11.10/Hist_entries.in create mode 100644 PartDet_ztautau_11.10/Hist_syst_entries.in create mode 100644 PartDet_ztautau_11.10/Jet_info.in create mode 100644 PartDet_ztautau_11.10/MuonElectron_info.in create mode 100644 PartDet_ztautau_11.10/MuonTau_info.in create mode 100644 PartDet_ztautau_11.10/Muon_info.in create mode 100644 PartDet_ztautau_11.10/Run_info.in create mode 100644 PartDet_ztautau_11.10/Systematics_info.in create mode 100644 PartDet_ztautau_11.10/Tau_info.in create mode 100644 PartDet_ztautau_11.10/VBFCuts_info.in create mode 100644 isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_150GeVLSP_12.08.pdf create mode 100644 isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_250GeVLSP_12.08.pdf create mode 100644 isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_50GeVLSP_12.08.pdf diff --git a/PartDet_isrstau_signalmc_12.08/Control_Regions.in b/PartDet_isrstau_signalmc_12.08/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_isrstau_signalmc_12.08/Cuts.in b/PartDet_isrstau_signalmc_12.08/Cuts.in new file mode 100644 index 0000000..98073cd --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 0 -1 ///only 0 or 1 +NRecoMuon2 0 -1 +NRecoElectron2 0 -1 +***NRecoTau1 1 1 +NRecoElectron1 0 -1 +NRecoMuon1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 0 0 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +***METCut 1 -1 + + + diff --git a/PartDet_isrstau_signalmc_12.08/DiParticle_info.in b/PartDet_isrstau_signalmc_12.08/DiParticle_info.in new file mode 100644 index 0000000..38326e4 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco VectorSumofVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_isrstau_signalmc_12.08/ElectronTau_info.in b/PartDet_isrstau_signalmc_12.08/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_isrstau_signalmc_12.08/Electron_info.in b/PartDet_isrstau_signalmc_12.08/Electron_info.in new file mode 100644 index 0000000..f564168 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_isrstau_signalmc_12.08/FatJet_info.in b/PartDet_isrstau_signalmc_12.08/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_isrstau_signalmc_12.08/Gen_info.in b/PartDet_isrstau_signalmc_12.08/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_isrstau_signalmc_12.08/Hist_entries.in b/PartDet_isrstau_signalmc_12.08/Hist_entries.in new file mode 100644 index 0000000..002ccf1 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Hist_entries.in @@ -0,0 +1,600 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +//GenHadTauFrac_scalar 100 0. 1. +//GenHadTauFrac_vector 100 0. 1. +//GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. +Tau1MetMt 200 0. 1000. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. +Tau2MetMt 200 0. 1000. + +//------------------------------------------------// + +FillElectron1 1 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 1000 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_signalmc_12.08/Hist_syst_entries.in b/PartDet_isrstau_signalmc_12.08/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_signalmc_12.08/Jet_info.in b/PartDet_isrstau_signalmc_12.08/Jet_info.in new file mode 100644 index 0000000..a569ec7 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.8484 +MatchBToGen 0 +UseBtagSF 0 + + diff --git a/PartDet_isrstau_signalmc_12.08/MuonElectron_info.in b/PartDet_isrstau_signalmc_12.08/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_signalmc_12.08/MuonTau_info.in b/PartDet_isrstau_signalmc_12.08/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_signalmc_12.08/Muon_info.in b/PartDet_isrstau_signalmc_12.08/Muon_info.in new file mode 100644 index 0000000..e448641 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_isrstau_signalmc_12.08/Run_info.in b/PartDet_isrstau_signalmc_12.08/Run_info.in new file mode 100644 index 0000000..281ffed --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Run_info.in @@ -0,0 +1,45 @@ +################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos data_pileup_2016_69p2.root +MCHistos mc_pileup_Summer16.root +DataPUHistName pileup +MCPUHistName pileup + +ApplyTauIDSF false +UsePileUpWeight true +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight +Trigger1SecondRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet true +MetCut 230.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_isrstau_signalmc_12.08/Systematics_info.in b/PartDet_isrstau_signalmc_12.08/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_isrstau_signalmc_12.08/Tau_info.in b/PartDet_isrstau_signalmc_12.08/Tau_info.in new file mode 100644 index 0000000..3a6c171 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/Tau_info.in @@ -0,0 +1,113 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.3 +PtCut 20.0 40.0 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut false + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_isrstau_signalmc_12.08/VBFCuts_info.in b/PartDet_isrstau_signalmc_12.08/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_isrstau_signalmc_12.08/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Control_Regions.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Cuts.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Cuts.in new file mode 100644 index 0000000..c21a94f --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 0 -1 ///only 0 or 1 +NRecoMuon2 0 -1 +NRecoElectron2 0 -1 +***NRecoTau1 1 1 +NRecoElectron1 0 -1 +NRecoMuon1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 1 1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +***METCut 1 -1 + + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/DiParticle_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/DiParticle_info.in new file mode 100644 index 0000000..38326e4 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco VectorSumofVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/ElectronTau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Electron_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Electron_info.in new file mode 100644 index 0000000..f564168 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/FatJet_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Gen_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_entries.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_entries.in new file mode 100644 index 0000000..002ccf1 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_entries.in @@ -0,0 +1,600 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +//GenHadTauFrac_scalar 100 0. 1. +//GenHadTauFrac_vector 100 0. 1. +//GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. +Tau1MetMt 200 0. 1000. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. +Tau2MetMt 200 0. 1000. + +//------------------------------------------------// + +FillElectron1 1 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 1000 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_syst_entries.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Jet_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Jet_info.in new file mode 100644 index 0000000..a569ec7 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.8484 +MatchBToGen 0 +UseBtagSF 0 + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonElectron_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonTau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Muon_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Muon_info.in new file mode 100644 index 0000000..e448641 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Run_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Run_info.in new file mode 100644 index 0000000..281ffed --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Run_info.in @@ -0,0 +1,45 @@ +################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos data_pileup_2016_69p2.root +MCHistos mc_pileup_Summer16.root +DataPUHistName pileup +MCPUHistName pileup + +ApplyTauIDSF false +UsePileUpWeight true +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight +Trigger1SecondRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet true +MetCut 230.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Systematics_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Tau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Tau_info.in new file mode 100644 index 0000000..3a6c171 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/Tau_info.in @@ -0,0 +1,113 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.3 +PtCut 20.0 40.0 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut false + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/VBFCuts_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly1b_12.08/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Control_Regions.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Cuts.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Cuts.in new file mode 100644 index 0000000..108a40b --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 0 -1 ///only 0 or 1 +NRecoMuon2 0 -1 +NRecoElectron2 0 -1 +***NRecoTau1 1 1 +NRecoElectron1 0 -1 +NRecoMuon1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 2 2 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +***METCut 1 -1 + + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/DiParticle_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/DiParticle_info.in new file mode 100644 index 0000000..38326e4 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco VectorSumofVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/ElectronTau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Electron_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Electron_info.in new file mode 100644 index 0000000..f564168 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/FatJet_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Gen_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_entries.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_entries.in new file mode 100644 index 0000000..002ccf1 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_entries.in @@ -0,0 +1,600 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +//GenHadTauFrac_scalar 100 0. 1. +//GenHadTauFrac_vector 100 0. 1. +//GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. +Tau1MetMt 200 0. 1000. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. +Tau2MetMt 200 0. 1000. + +//------------------------------------------------// + +FillElectron1 1 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 1000 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_syst_entries.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Jet_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Jet_info.in new file mode 100644 index 0000000..a569ec7 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.8484 +MatchBToGen 0 +UseBtagSF 0 + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonElectron_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonTau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Muon_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Muon_info.in new file mode 100644 index 0000000..e448641 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.3 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Run_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Run_info.in new file mode 100644 index 0000000..281ffed --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Run_info.in @@ -0,0 +1,45 @@ +################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos data_pileup_2016_69p2.root +MCHistos mc_pileup_Summer16.root +DataPUHistName pileup +MCPUHistName pileup + +ApplyTauIDSF false +UsePileUpWeight true +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight +Trigger1SecondRequirement HLT_PFMETNoMu120_PFMHTNoMu120_IDTight + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet true +MetCut 230.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Systematics_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Tau_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Tau_info.in new file mode 100644 index 0000000..3a6c171 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/Tau_info.in @@ -0,0 +1,113 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.3 +PtCut 20.0 40.0 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut false + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byVTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1hps +//1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/VBFCuts_info.in b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_isrstau_ttbar_vtight1hps_exactly2b_12.08/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDet_wmu_11.10/Control_Regions.in b/PartDet_wmu_11.10/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_wmu_11.10/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_wmu_11.10/Cuts.in b/PartDet_wmu_11.10/Cuts.in new file mode 100644 index 0000000..577f941 --- /dev/null +++ b/PartDet_wmu_11.10/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +***NRecoMuon1 1 1 +NRecoMuon2 2 2 +***NRecoElectron1 0 0 +NRecoElectron2 0 -1 +***NRecoTau1 0 0 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 0 0 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +***METCut 1 -1 + + + diff --git a/PartDet_wmu_11.10/DiParticle_info.in b/PartDet_wmu_11.10/DiParticle_info.in new file mode 100644 index 0000000..d72a2ba --- /dev/null +++ b/PartDet_wmu_11.10/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco VectorSumofVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 100.0 100.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_wmu_11.10/ElectronTau_info.in b/PartDet_wmu_11.10/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_wmu_11.10/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_wmu_11.10/Electron_info.in b/PartDet_wmu_11.10/Electron_info.in new file mode 100644 index 0000000..5133c9f --- /dev/null +++ b/PartDet_wmu_11.10/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.4 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_wmu_11.10/FatJet_info.in b/PartDet_wmu_11.10/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_wmu_11.10/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_wmu_11.10/Gen_info.in b/PartDet_wmu_11.10/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_wmu_11.10/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_wmu_11.10/Hist_entries.in b/PartDet_wmu_11.10/Hist_entries.in new file mode 100644 index 0000000..de64a0e --- /dev/null +++ b/PartDet_wmu_11.10/Hist_entries.in @@ -0,0 +1,598 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +//GenHadTauFrac_scalar 100 0. 1. +//GenHadTauFrac_vector 100 0. 1. +//GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 1 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_wmu_11.10/Hist_syst_entries.in b/PartDet_wmu_11.10/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_wmu_11.10/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_wmu_11.10/Jet_info.in b/PartDet_wmu_11.10/Jet_info.in new file mode 100644 index 0000000..4e011ca --- /dev/null +++ b/PartDet_wmu_11.10/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.5 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 3.0 +PtCut 50.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.8484 +MatchBToGen 0 +UseBtagSF 0 + + diff --git a/PartDet_wmu_11.10/MuonElectron_info.in b/PartDet_wmu_11.10/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_wmu_11.10/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_wmu_11.10/MuonTau_info.in b/PartDet_wmu_11.10/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_wmu_11.10/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_wmu_11.10/Muon_info.in b/PartDet_wmu_11.10/Muon_info.in new file mode 100644 index 0000000..9d1f1d9 --- /dev/null +++ b/PartDet_wmu_11.10/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_wmu_11.10/Run_info.in b/PartDet_wmu_11.10/Run_info.in new file mode 100644 index 0000000..4bb05a3 --- /dev/null +++ b/PartDet_wmu_11.10/Run_info.in @@ -0,0 +1,51 @@ +#################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos data_75bins_69200.root +///PU2016data_6p2ifb.root +MCHistos MC_75bins.root +///PU2016MC.root +DataPUHistName pileup +///NVertices_0 +MCPUHistName pileup +///NVertices_0 + +ApplyTauIDSF false +UsePileUpWeight false #for pileup efficiency set to false on a second run 11.08.17 +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_ +///HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 +Trigger1SecondRequirement HLT_IsoMu24_ +///HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet true +MetCut 50.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_wmu_11.10/Systematics_info.in b/PartDet_wmu_11.10/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_wmu_11.10/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_wmu_11.10/Tau_info.in b/PartDet_wmu_11.10/Tau_info.in new file mode 100644 index 0000000..6c39dca --- /dev/null +++ b/PartDet_wmu_11.10/Tau_info.in @@ -0,0 +1,111 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut false + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_wmu_11.10/VBFCuts_info.in b/PartDet_wmu_11.10/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_wmu_11.10/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDet_zmumu_11.10/Control_Regions.in b/PartDet_zmumu_11.10/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_zmumu_11.10/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_zmumu_11.10/Cuts.in b/PartDet_zmumu_11.10/Cuts.in new file mode 100644 index 0000000..4cd6928 --- /dev/null +++ b/PartDet_zmumu_11.10/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +***NRecoMuon1 2 2 +***NRecoMuon2 2 2 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +NRecoTau1 0 -1 +NRecoTau2 0 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +***NDiMuonCombinations 1 1 +NDiElectronCombinations 0 -1 +NDiTauCombinations 0 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +NRecoBJet 0 -1 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDet_zmumu_11.10/DiParticle_info.in b/PartDet_zmumu_11.10/DiParticle_info.in new file mode 100644 index 0000000..55a6a5a --- /dev/null +++ b/PartDet_zmumu_11.10/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType None #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 50.0 100.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 80.0 100.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_zmumu_11.10/ElectronTau_info.in b/PartDet_zmumu_11.10/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_zmumu_11.10/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_zmumu_11.10/Electron_info.in b/PartDet_zmumu_11.10/Electron_info.in new file mode 100644 index 0000000..33d2fff --- /dev/null +++ b/PartDet_zmumu_11.10/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.0 0.4 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID true + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 0 +IsoSumPtCutValue 0.1 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID false +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_zmumu_11.10/FatJet_info.in b/PartDet_zmumu_11.10/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_zmumu_11.10/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_zmumu_11.10/Gen_info.in b/PartDet_zmumu_11.10/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_zmumu_11.10/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_zmumu_11.10/Hist_entries.in b/PartDet_zmumu_11.10/Hist_entries.in new file mode 100644 index 0000000..6861093 --- /dev/null +++ b/PartDet_zmumu_11.10/Hist_entries.in @@ -0,0 +1,598 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +GenHadTauFrac_scalar 100 0. 1. +GenHadTauFrac_vector 100 0. 1. +GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 0 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 0 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 1 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 1 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 1 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 1 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 0 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_zmumu_11.10/Hist_syst_entries.in b/PartDet_zmumu_11.10/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_zmumu_11.10/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_zmumu_11.10/Jet_info.in b/PartDet_zmumu_11.10/Jet_info.in new file mode 100644 index 0000000..ed6ba6f --- /dev/null +++ b/PartDet_zmumu_11.10/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.5 +PtCut 100.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 +UseBtagSF 0 + + diff --git a/PartDet_zmumu_11.10/MuonElectron_info.in b/PartDet_zmumu_11.10/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_zmumu_11.10/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_zmumu_11.10/MuonTau_info.in b/PartDet_zmumu_11.10/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_zmumu_11.10/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_zmumu_11.10/Muon_info.in b/PartDet_zmumu_11.10/Muon_info.in new file mode 100644 index 0000000..9d1f1d9 --- /dev/null +++ b/PartDet_zmumu_11.10/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.1 +PtCut 30.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_zmumu_11.10/Run_info.in b/PartDet_zmumu_11.10/Run_info.in new file mode 100644 index 0000000..ce6e037 --- /dev/null +++ b/PartDet_zmumu_11.10/Run_info.in @@ -0,0 +1,51 @@ +#################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos data_75bins_69200.root +///PU2016data_6p2ifb.root +MCHistos MC_75bins.root +///PU2016MC.root +DataPUHistName pileup +///NVertices_0 +MCPUHistName pileup +///NVertices_0 + +ApplyTauIDSF false +UsePileUpWeight false #for pileup efficiency set to false on a second run 11.08.17 +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_IsoMu24_ +///HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 +Trigger1SecondRequirement HLT_IsoMu24_ +///HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_zmumu_11.10/Systematics_info.in b/PartDet_zmumu_11.10/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_zmumu_11.10/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_zmumu_11.10/Tau_info.in b/PartDet_zmumu_11.10/Tau_info.in new file mode 100644 index 0000000..224021f --- /dev/null +++ b/PartDet_zmumu_11.10/Tau_info.in @@ -0,0 +1,111 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.1 +PtCut 60.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron false +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon false +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.1 +PtCut 60.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation false +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron 0 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 0 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_zmumu_11.10/VBFCuts_info.in b/PartDet_zmumu_11.10/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_zmumu_11.10/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/PartDet_ztautau_11.10/Control_Regions.in b/PartDet_ztautau_11.10/Control_Regions.in new file mode 100644 index 0000000..3f9a82c --- /dev/null +++ b/PartDet_ztautau_11.10/Control_Regions.in @@ -0,0 +1,29 @@ +/////////// Control Region ///////////// + +//// This files allows for control regions to be processed using the analyzer code. To activate control regions +//// run the code with the CR option, ie +//// ./Analyzer -CR +//// +//// The variables for control regions work by giving the fill group the variable is associated with and then +//// the variable. Most fill groups are obvious based on the particle (Muon1's fill group is simple Muon1), but +//// other variables may have different, less obvious ones (eg VBF related cuts have the fill group "LeadingJets") +//// After this, the point that the control region is to be made at is given +//// ie +//// _ +//// +//// When running over data, to make sure the signal region is blinded in studying (since all regions are made +//// when the code runs), the signal region needs to be defined and then the "Unblind" variable needs to be set +//// to true or false. To define the signal region, a ">" or "<" must be given for each control region variable +//// simply using the greater than or less than for whether the signal region is greater than or less than the +//// given value for the variable + +//////////////////////////////// + +Control_Region + +Run_Met 50 +Muon1Muon2_PassBoth 10 + +SR <> +Unblind false +//Muon1Tau1_Mass 100 \ No newline at end of file diff --git a/PartDet_ztautau_11.10/Cuts.in b/PartDet_ztautau_11.10/Cuts.in new file mode 100644 index 0000000..b6cb3be --- /dev/null +++ b/PartDet_ztautau_11.10/Cuts.in @@ -0,0 +1,71 @@ +////////////////////// Cuts /////////////// + +//// This file gives all of the multiplicity cuts that are made in the code. The order of the cuts can be changed +//// +//// The first variable is the name that corresponds to the CUTS enum value that holds the number of "good" +//// particles that correspond to the name. These are defined in the map called "cut_num" in src/Analyzer.cc +//// The next two numbers are the minimum and maximum number of particles allowed. -1 corresponds to infinity +//// ie +//// NParticleA 2 -1 +//// means the particle "ParticleA" must have at least 2 particles. +//// The cuts are applied cumulatively, so after a cut, only events that passed that cut will be considered in the +//// next cut + +//// If you want to see the histograms after a specific multiplicity cut, you can make that cut into a folder by +//// putting *** before the cut name. The folder will hold histograms that were filled AFTER the cut is applied +//// ie +//// ***NParticleB 0 0 +//// means a folder with histograms filled after the cut of have exactly 0 of "ParticleB" + +/////////////////////////////////////////// + + +NGenTop 0 -1 +NGenElectron 0 -1 +NGenMuon 0 -1 +NGenZ 0 -1 +NGenW 0 -1 +NGenHiggs 0 -1 +NGenTau 0 -1 + +***NRecoVertex 1 -1 +***NRecoTriggers1 1 -1 ///only 0 or 1 +NRecoMuon1 0 -1 +NRecoMuon2 0 -1 +NRecoElectron1 0 -1 +NRecoElectron2 0 -1 +***NRecoTau1 2 -1 +***NRecoTau2 2 -1 +NRecoJet2 0 -1 +NRecoCentralJet 0 -1 +NRecoTriggers2 0 -1 ///only 0 or 1 +NRecoSecondLeadingJet 0 -1 ///only 0 or 1 + + +NDiMuonCombinations 0 -1 +NDiElectronCombinations 0 -1 +***NDiTauCombinations 1 -1 +***NRecoJet1 1 -1 +***NRecoFirstLeadingJet 1 -1 ///only 0 or 1 +***NRecoBJet 0 0 +NDiJetCombinations 0 -1 +NLeadJetCombinations 0 -1 ///only 0 or 1 + +NMuon1Tau1Combinations 0 -1 +NMuon1Tau2Combinations 0 -1 +NMuon2Tau1Combinations 0 -1 +NMuon2Tau2Combinations 0 -1 +NElectron1Tau1Combinations 0 -1 +NElectron1Tau2Combinations 0 -1 +NElectron2Tau1Combinations 0 -1 +NElectron2Tau2Combinations 0 -1 +NMuon1Electron1Combinations 0 -1 +NMuon1Electron2Combinations 0 -1 +NMuon2Electron1Combinations 0 -1 +NMuon2Electron2Combinations 0 -1 + + +METCut 0 -1 + + + diff --git a/PartDet_ztautau_11.10/DiParticle_info.in b/PartDet_ztautau_11.10/DiParticle_info.in new file mode 100644 index 0000000..8f05739 --- /dev/null +++ b/PartDet_ztautau_11.10/DiParticle_info.in @@ -0,0 +1,100 @@ +####################################### + DiTau +####################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByOSLSType OS #### OS or LS +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco true +HowCalculateMassReco NONE ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 50.0 100.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt false +DeltaPtDivSumPtCutValue 0.4 1.0 +DiscrByDeltaPt false +DeltaPtCutValue 50.0 1000.0 + +###################################### + DiMuon +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType OS +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco true +HowCalculateMassReco VectorSumOfVisProductsAndMet ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt true +DeltaPtCutValue 30.0 9999.0 + +######################################## + DiElectron +####################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi true +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 150.0 10000.0 + +DiscrByCDFzeta2D false +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 9999.0 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + + +######################################### + DiJet +##################################### + +DiscrByDeltaR true +DeltaRCut 0.3 + +DiscrByDeltaEta false +DeltaEtaCut 4.2 9999.0 +DiscrByDeltaPhi false +DeltaPhiCut 0 9999.0 +DiscrByOSEta true +DiscrByCosDphi false +CosDphiCut -1.00 -0.80 + +DiscrByMassReco false +MassCut 500.0 9999.0 + diff --git a/PartDet_ztautau_11.10/ElectronTau_info.in b/PartDet_ztautau_11.10/ElectronTau_info.in new file mode 100644 index 0000000..a6c14c7 --- /dev/null +++ b/PartDet_ztautau_11.10/ElectronTau_info.in @@ -0,0 +1,112 @@ +###################################### + Electron1Tau1 +##################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron1Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco None ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau1 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################################### + Electron2Tau2 +######################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox or none +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + diff --git a/PartDet_ztautau_11.10/Electron_info.in b/PartDet_ztautau_11.10/Electron_info.in new file mode 100644 index 0000000..e3afe06 --- /dev/null +++ b/PartDet_ztautau_11.10/Electron_info.in @@ -0,0 +1,75 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.1 +UseMotherID 1 +MotherID 23. + +//////////////////////////////// + Elec1 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID false +DoDiscrByTightID 0 +DoDiscrByHEEPID false + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.70 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 40. + +//////////////////////////////// + Elec2 +/////////////////////////////// + +//---RECO CUTS---/// + +EtaCut 2.1 +PtCut 20.0 9999.9 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.2 + +DoDiscrByVetoID false +DoDiscrByLooseID true +DoDiscrByMediumID 0 +DoDiscrByTightID false +DoDiscrByHEEPID 0 + +///---MET TOPOLOGY CUTS---/// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. + diff --git a/PartDet_ztautau_11.10/FatJet_info.in b/PartDet_ztautau_11.10/FatJet_info.in new file mode 100644 index 0000000..fe0d669 --- /dev/null +++ b/PartDet_ztautau_11.10/FatJet_info.in @@ -0,0 +1,36 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + +################################# + Wjet +################################# + +EtaCut 0.0 3.5 +PtCut 150.0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 0 +RemoveOverlapWithTau2s 0 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetWTagging 1 +JetWmassCut 50 100000000 +JetTau2Tau1Ratio 0 0.45 diff --git a/PartDet_ztautau_11.10/Gen_info.in b/PartDet_ztautau_11.10/Gen_info.in new file mode 100644 index 0000000..5487b1d --- /dev/null +++ b/PartDet_ztautau_11.10/Gen_info.in @@ -0,0 +1,29 @@ +/////////// Dont change this file!/////// + +Gen + +TauPtCut -10.0 10000.0 +TauEtaCut 10.0 + +TauID 15. +TauStatus 2. + +TopID 6. +TopStatus 2. + +ElectronID 11. +ElectronStatus 1. + +MuonID 13. +MuonStatus 1. + +ZID 23. +ZStatus 2. + +WID 24. +WStatus 2. + +HiggsID 25. +HiggsStatus 2. + + diff --git a/PartDet_ztautau_11.10/Hist_entries.in b/PartDet_ztautau_11.10/Hist_entries.in new file mode 100644 index 0000000..e02a164 --- /dev/null +++ b/PartDet_ztautau_11.10/Hist_entries.in @@ -0,0 +1,598 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 2 0. 2. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 0 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +NGenNu 20. 0. 20. +GenTauEnergy 500 0. 5000. +GenTauPt 500 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 100 0. 250. +GenNuPt 100 0. 250. +GenNuP 100 0. 250. +GenHadTauEta 72 -3.6 +3.6 +NGenMuon 20 0. 20. +GenMuonEnergy 200 0. 500. +GenMuonPt 200 0. 500. +GenMuonEta 72 -3.6 +3.6 +GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 100 0. 10000. +GenHadTauFrac_scalar 100 0. 1. +GenHadTauFrac_vector 100 0. 1. +GenDeltaR 100 0. 10. +//GenHadTauFrac2 100 0. 1. +//GenHadTauFrac3 100 0. 1. +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 2000 0. 5000. +Tau1Pt 2000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 2000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 2000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 2000 0. 5000. +Tau2Pt 2000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 2000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 2000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + + NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 1 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 0 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 0 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 100 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 1 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 2500 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_ztautau_11.10/Hist_syst_entries.in b/PartDet_ztautau_11.10/Hist_syst_entries.in new file mode 100644 index 0000000..314b459 --- /dev/null +++ b/PartDet_ztautau_11.10/Hist_syst_entries.in @@ -0,0 +1,599 @@ +/////////////////// Histograms ////////////// + +//// This file lists all of the histograms that will be made in the output root file +//// +//// The Histograms, to facilitate ease of adding similar values, are organized into "FillGroups" that can be +//// turned on or off. These fill groups are implimented in the Analyzer in the fill_folders function, so any +//// new histograms that need to be added will be done in that function. +//// Histograms are flexible, so if you don't want a histogram, it can be commented out. If the analyzer has +//// a histogram implimented, but it is not listed in this file, then the code will not complain. +//// The Histograms themselves are implimented similarly to root histos. First give the name, the number of bins +//// then the low and high value for the histogram. +//// ie +//// +//// For 2D histograms, you simply add another set of bins, min, and max for the y-axis. +//// If you are trying to put a new histogram into the analyzer, NOTE: the analyzer uses the histogram name, but +//// without the particle names and/or with names replaced with "Part1" or "Part2". This is to facilitate similar +//// particles using similar histograms. +//// ie +//// Muon1Pt ==> Pt +//// DiMuon_Muon1MetMt ==> Part1MetMt + +/////////////////////////////////////////////// + + +FillRun 1 +Events 3 0. 3. +NVertices 100 0. 100. + +//------------------------------------------------// + +FillGen 1 + +NGenTau 20 0. 20. +NGenHadTau 20 0. 20. +GenTauEnergy 5000 0. 5000. +GenTauPt 5000 0. 5000. +GenTauEta 72 -3.6 +3.6 +GenTauPhi 36 -3.15 +3.15 +GenHadTauPt 5000 0. 5000. +GenHadTauEta 72 -3.6 +3.6 +//NGenMuon 20 0. 20. +//GenMuonEnergy 200 0. 500. +//GenMuonPt 200 0. 500. +//GenMuonEta 72 -3.6 +3.6 +//GenMuonPhi 36 -3.15 +3.15 +GenDiTauMass 10000 0. 10000. + +//////GenZprimeMass 100 0. 10000. NOT IMPLIMENTED +//////GenZprimeStatusCode 100 0. 100. +//////GenTauStatusCode 100 0. 100. + +//------------------------------------------------// + +FillTau1 1 + +NTau1 20 0. 20. +Tau1Energy 5000 0. 5000. +Tau1Pt 5000 0. 5000. +Tau1Eta 100 -5.0 +5.0 +FirstLeadingTau1Pt 5000 0. 5000. +FirstLeadingTau1Eta 144 -7.2 +7.2 +SecondLeadingTau1Pt 5000 0. 5000. +SecondLeadingTau1Eta 144 -7.2 +7.2 +Tau1Phi 36 -3.15 +3.15 +Tau1NumSignalTracks 10 0 10 +Tau1SeedTrackPt 5000 0. 5000. +Tau1Charge 10 -5. 5. + +FillTau2 1 + +NTau2 20 0. 20. +Tau2Energy 5000 0. 5000. +Tau2Pt 5000 0. 5000. +Tau2Eta 100 -5.0 +5.0 +FirstLeadingTau2Pt 5000 0. 5000. +FirstLeadingTau2Eta 144 -7.2 +7.2 +SecondLeadingTau2Pt 5000 0. 5000. +SecondLeadingTau2Eta 144 -7.2 +7.2 +Tau2Phi 36 -3.15 +3.15 +Tau2NumSignalTracks 10 0 10 +Tau2SeedTrackPt 5000 0. 5000. +Tau2Charge 10 -5. 5. + +//------------------------------------------------// + +FillElectron1 0 + +NElectron1 20 0. 20. +Electron1Energy 2000 0. 5000. +Electron1Pt 2000 0. 5000. +Electron1Eta 72 -3.6 +3.6 +FirstLeadingElectron1Pt 400 0. 1000. +FirstLeadingElectron1Eta 144 -7.2 +7.2 +Electron1Phi 36 -3.15 +3.15 +Electron1MetMt 100 0 500 + +FillElectron2 0 + +NElectron2 20 0. 20. +Electron2Energy 2000 0. 5000. +Electron2Pt 2000 0. 5000. +Electron2Eta 72 -3.6 +3.6 +FirstLeadingElectron2Pt 400 0. 1000. +FirstLeadingElectron2Eta 144 -7.2 +7.2 +Electron2Phi 36 -3.15 +3.15 +Electron2MetMt 100 0 500 + +//------------------------------------------------// + +FillMuon1 0 + +NMuon1 20 0. 20. +Muon1Energy 2000 0. 5000. +Muon1Pt 2000 0. 5000. +Muon1Eta 72 -3.6 +3.6 +FirstLeadingMuon1Pt 400 0. 1000. +FirstLeadingMuon1Eta 144 -7.2 +7.2 +Muon1Phi 36 -3.15 +3.15 +Muon1MetMt 100 0 500 + +FillMuon2 0 + +NMuon2 20 0. 20. +Muon2Energy 2000 0. 5000. +Muon2Pt 2000 0. 5000. +Muon2Eta 72 -3.6 +3.6 +FirstLeadingMuon2Pt 400 0. 1000. +FirstLeadingMuon2Eta 144 -7.2 +7.2 +Muon2Phi 36 -3.15 +3.15 +Muon2MetMt 100 0 500 + +//------------------------------------------------// + +FillJet1 1 + +NJet1 20 0. 20. +Jet1Energy 200 0. 500. +Jet1Pt 200 0. 500. +Jet1Eta 100 -5.0 +5.0 +Jet1Phi 144 -6.3 +6.3 + +FillJet2 0 + +NJet2 20 0. 20. +Jet2Energy 200 0. 500. +Jet2Pt 200 0. 500. +Jet2Eta 100 -5.0 +5.0 +Jet2Phi 144 -6.3 +6.3 + +FillBJet 1 + +NBJet 20 0. 20. +BJetEnergy 200 0. 500. +BJetPt 200 0. 500. +BJetEta 72 -3.6 +3.6 +BJetPhi 36 -3.15 +3.15 + +FillCentralJet 0 + +NCentralJet 20 0. 20. +CentralJetPt 200 0. 500. +CentralJetEta 100 -5.0 +5.0 + + +FillWJet 1 + +NWJet 20 0. 20. +WJetPt 200 0. 500. +WJetEta 100 -5.0 +5.0 +WJetPrunedMass 300 0 300 +WJetSoftDropMass 300 0 300 +WJettau1 100 0 1 +WJettau2 100 0 1 +WJettau2Overtau1 100 0 1 + +//------------------------------------------------// + +FillMetCuts 1 + +Met 1000 0 1000 +MHT 500 0 5000 +HT 500 0 5000 +Meff 500 0 5000 + +//------------------------------------------------// + +FillLeadingJet 0 + +FirstLeadingJetPt 200 0. 1000. +SecondLeadingJetPt 200 0. 1000. +FirstLeadingJetEta 100 -5. 5. +SecondLeadingJetEta 100 -5. 5. + +LeadingJetMass 1000 0 5000 +LeadSublDijetDphi 72 0 +3.15 +LeadingJetPt 1000 0 5000 +LeadingJetDeltaR 200 0 10. +LeadingJetDeltaEta 200 0 10. +R1 60 0 6 +R2 60 0 6 +Dphi1 72 -6.3 +6.3 +Dphi2MHT 72 -6.3 +6.3 +Dphi1MHT 72 -6.3 +6.3 +Dphi2 72 -6.3 +6.3 +Alpha 50 0 2 +MetDiJetDeltaPhi 72 0 +3.15 + +Dphi1VsDphi2 72 -6.3 +6.3 72 -6.3 +6.3 +MetVsDiJetDeltaPhiLeadSubl 100 0 1000. 72 0 +3.15 +DeltaEtaVsDeltaPhiLeadSubl 200 0 10. 72 0 +3.15 + + +//------------------------------------------------// + +FillDiJet 0 + +DiJetDeltaR 200 0 10. +DiJetDeltaEta 200 0 10. +DiJetDeltaPhi 72 0 +3.15 +DiJetMass 1000 0 5000 +DiJetPt 1000 0 5000 + +LargestDiJetMass 1000 0 5000 +LargestDiJetPt 1000 0 5000 +LargestDiJetEtaProduct 4 -2 2 +LargestDiJetDeltaR 200 0 10. +LargestMassDiJetDeltaEta 200 0 10. + +//------------------------------------------------// + +FillDiMuon 0 + +DiMuon_Muon1DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon2DiJetDeltaPhi 72 0 +3.15 +DiMuon_Muon1IsZdecay 2 0 2 +DiMuon_Muon2IsZdecay 2 0 2 +DiMuonDeltaR 100 0 5. +DiMuonDeltaPtDivSumPt 100 -5 5. +DiMuonDeltaPt 100 0 1000 +DiMuon_Muon1MetMt 100 0 500 +DiMuon_Muon2MetMt 100 0 500 +DiMuonOSLS 20 -10 10 +DiMuonCosDphi 220 -1.1 1.1 +DiMuonCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiMuon_Muon1MetDeltaPhi 72 0 +3.15 +DiMuon_Muon2MetDeltaPhi 72 0 +3.15 +DiMuonPZeta 200 -100 100 +DiMuonPZetaVis 100 0 100 +DiMuonZeta1D 150 -300 300 +DiMuonNotReconstructableMass 600 0 1500 +DiMuonReconstructableMass 600 0 1500 + +Muon1PtVsMuon2Pt 100 0 500 100 0 500 +DiMuonZeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsDiMuonCosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillDiTau 1 + +DiTau_Tau1DiJetDeltaPhi 72 0 +3.15 +DiTau_Tau2DiJetDeltaPhi 72 0 +3.15 +DiTauDeltaR 100 0 5. +DiTauDeltaPtDivSumPt 100 -5 5. +DiTauDeltaPt 100 0 1000 +DiTau_Tau1MetMt 100 0 500 +DiTau_Tau2MetMt 100 0 500 +DiTauOSLS 20 -10 10 +DiTauCosDphi 220 -1.1 1.1 +DiTau_Tau1CosDphiPtandMet 220 -1.1 1.1 +DiTau_Tau2CosDphiPtandMet 220 -1.1 1.1 +DiTauCosDphi_DeltaPtAndMet 220 -1.1 1.1 +DiTau_Tau1MetDeltaPhi 72 0 +3.15 +DiTau_Tau2MetDeltaPhi 72 0 +3.15 +DiTauPZeta 200 -100 100 +DiTauPZetaVis 100 0 100 +DiTauZeta1D 150 -300 300 +DiTauNotReconstructableMass 200 0 5000 +DiTauReconstructableMass 5000 0 5000 +DiTauInvariantMass 5000 0 5000 +DiTauSumOfPt 5000 0 5000 +DiTauDiJetReconstructableMass 200 0 5000 +Tau1MetDeltaPhiVsDiTauCosDphi 72 0 +3.15 220 -1.1 1.1 +DiTauZeta2D 100 0 100 200 -100 100 +Tau1PtVsTau2Pt 100 0 500 100 0 500 + +//------------------------------------------------// + +FillMuon1Tau1 0 + +Muon1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau1_Muon1IsZdecay 2 0 2. +Muon1Tau1DeltaR 100 0 5. +Muon1Tau1DeltaPtDivSumPt 100 -5 5. +Muon1Tau1DeltaPt 100 0 1000 +Muon1Tau1_Muon1MetMt 100 0 500 +Muon1Tau1_Tau1MetMt 100 0 500 +Muon1Tau1OSLS 20 -10 10 +Muon1Tau1CosDphi 220 -1.1 1.1 +Muon1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon1Tau1NotReconstructableMass 600 0 1500 +Muon1Tau1ReconstructableMass 600 0 1500 +Muon1Tau1PZeta 200 -100 100 +Muon1Tau1PZetaVis 100 0 100 +Muon1Tau1Zeta1D 150 -300 300 +Muon1Tau1DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau1Pt 100 0 500 100 0 500 +Muon1Tau1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Tau2 0 + +Muon1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Tau2_Muon1IsZdecay 2 0 2. +Muon1Tau2DeltaR 100 0 5. +Muon1Tau2DeltaPtDivSumPt 100 -5 5. +Muon1Tau2DeltaPt 100 0 1000 +Muon1Tau2_Muon1MetMt 100 0 500 +Muon1Tau2_Tau2MetMt 100 0 500 +Muon1Tau2OSLS 20 -10 10 +Muon1Tau2CosDphi 220 -1.1 1.1 +Muon1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Tau2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon1Tau2NotReconstructableMass 600 0 1500 +Muon1Tau2ReconstructableMass 600 0 1500 +Muon1Tau2PZeta 200 -100 100 +Muon1Tau2PZetaVis 100 0 100 +Muon1Tau2Zeta1D 150 -300 300 +Muon1Tau2DiJetReconstructableMass 100 0 5000 +Muon1PtVsTau2Pt 100 0 500 100 0 500 +Muon1Tau2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Tau1 0 + +Muon2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau1_Muon2IsZdecay 2 0 2. +Muon2Tau1DeltaR 100 0 5. +Muon2Tau1DeltaPtDivSumPt 100 -5 5. +Muon2Tau1DeltaPt 100 0 1000 +Muon2Tau1_Muon2MetMt 100 0 500 +Muon2Tau1_Tau1MetMt 100 0 500 +Muon2Tau1OSLS 20 -10 10 +Muon2Tau1CosDphi 220 -1.1 1.1 +Muon2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Muon2Tau1NotReconstructableMass 600 0 1500 +Muon2Tau1ReconstructableMass 600 0 1500 +Muon2Tau1PZeta 200 -100 100 +Muon2Tau1PZetaVis 100 0 100 +Muon2Tau1Zeta1D 150 -300 300 +Muon2Tau1DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau1Pt 100 0 500 100 0 500 +Muon2Tau1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Tau2 0 + +Muon2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Tau2_Muon2IsZdecay 2 0 2. +Muon2Tau2DeltaR 100 0 5. +Muon2Tau2DeltaPtDivSumPt 100 -5 5. +Muon2Tau2DeltaPt 100 0 1000 +Muon2Tau2_Muon2MetMt 100 0 500 +Muon2Tau2_Tau2MetMt 100 0 500 +Muon2Tau2OSLS 20 -10 10 +Muon2Tau2CosDphi 220 -1.1 1.1 +Muon2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Tau2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Muon2Tau2NotReconstructableMass 600 0 1500 +Muon2Tau2ReconstructableMass 600 0 1500 +Muon2Tau2PZeta 200 -100 100 +Muon2Tau2PZetaVis 100 0 100 +Muon2Tau2Zeta1D 150 -300 300 +Muon2Tau2DiJetReconstructableMass 100 0 5000 +Muon2PtVsTau2Pt 100 0 500 100 0 500 +Muon2Tau2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillElectron1Tau1 0 + +Electron1Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau1_Electron1IsZdecay 2 0 2. +Electron1Tau1DeltaR 100 0 5. +Electron1Tau1DeltaPtDivSumPt 100 -5 5. +Electron1Tau1DeltaPt 100 0 1000 +Electron1Tau1_Electron1MetMt 100 0 500 +Electron1Tau1_Tau1MetMt 100 0 500 +Electron1Tau1OSLS 20 -10 10 +Electron1Tau1CosDphi 220 -1.1 1.1 +Electron1Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau1_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron1Tau1NotReconstructableMass 600 0 1500 +Electron1Tau1ReconstructableMass 600 0 1500 +Electron1Tau1PZeta 200 -100 100 +Electron1Tau1PZetaVis 100 0 100 +Electron1Tau1Zeta1D 150 -300 300 +Electron1Tau1DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau1Pt 100 0 500 100 0 500 +Electron1Tau1Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron1Tau2 0 + +Electron1Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1DiJetDeltaPhi 72 0 +3.15 +Electron1Tau2_Electron1IsZdecay 2 0 2. +Electron1Tau2DeltaR 100 0 5. +Electron1Tau2DeltaPtDivSumPt 100 -5 5. +Electron1Tau2DeltaPt 100 0 1000 +Electron1Tau2_Electron1MetMt 100 0 500 +Electron1Tau2_Tau2MetMt 100 0 500 +Electron1Tau2OSLS 20 -10 10 +Electron1Tau2CosDphi 220 -1.1 1.1 +Electron1Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron1Tau2_Electron1MetDeltaPhi 72 0 +3.15 +Electron1Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron1Tau2NotReconstructableMass 600 0 1500 +Electron1Tau2ReconstructableMass 600 0 1500 +Electron1Tau2PZeta 200 -100 100 +Electron1Tau2PZetaVis 100 0 100 +Electron1Tau2Zeta1D 150 -300 300 +Electron1Tau2DiJetReconstructableMass 100 0 5000 +Electron1PtVsTau2Pt 100 0 500 100 0 500 +Electron1Tau2Zeta2D 100 0 100 200 -100 100 +Electron1MetDeltaPhiVsElectron1Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau1 0 + +Electron2Tau1_Tau1DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau1_Electron2IsZdecay 2 0 2. +Electron2Tau1DeltaR 100 0 5. +Electron2Tau1DeltaPtDivSumPt 100 -5 5. +Electron2Tau1DeltaPt 100 0 1000 +Electron2Tau1_Electron2MetMt 100 0 500 +Electron2Tau1_Tau1MetMt 100 0 500 +Electron2Tau1OSLS 20 -10 10 +Electron2Tau1CosDphi 220 -1.1 1.1 +Electron2Tau1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau1_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau1_Tau1MetDeltaPhi 72 0 +3.15 +Electron2Tau1NotReconstructableMass 600 0 1500 +Electron2Tau1ReconstructableMass 600 0 1500 +Electron2Tau1PZeta 200 -100 100 +Electron2Tau1PZetaVis 100 0 100 +Electron2Tau1Zeta1D 150 -300 300 +Electron2Tau1DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau1Pt 100 0 500 100 0 500 +Electron2Tau1Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillElectron2Tau2 0 + +Electron2Tau2_Tau2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2DiJetDeltaPhi 72 0 +3.15 +Electron2Tau2_Electron2IsZdecay 2 0 2. +Electron2Tau2DeltaR 100 0 5. +Electron2Tau2DeltaPtDivSumPt 100 -5 5. +Electron2Tau2DeltaPt 100 0 1000 +Electron2Tau2_Electron2MetMt 100 0 500 +Electron2Tau2_Tau2MetMt 100 0 500 +Electron2Tau2OSLS 20 -10 10 +Electron2Tau2CosDphi 220 -1.1 1.1 +Electron2Tau2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Electron2Tau2_Electron2MetDeltaPhi 72 0 +3.15 +Electron2Tau2_Tau2MetDeltaPhi 72 0 +3.15 +Electron2Tau2NotReconstructableMass 600 0 1500 +Electron2Tau2ReconstructableMass 600 0 1500 +Electron2Tau2PZeta 200 -100 100 +Electron2Tau2PZetaVis 100 0 100 +Electron2Tau2Zeta1D 150 -300 300 +Electron2Tau2DiJetReconstructableMass 100 0 5000 +Electron2PtVsTau2Pt 100 0 500 100 0 500 +Electron2Tau2Zeta2D 100 0 100 200 -100 100 +Electron2MetDeltaPhiVsElectron2Tau2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// + +FillMuon1Electron1 0 + +Muon1Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron1_Muon1IsZdecay 2 0 2. +Muon1Electron1_Electron1IsZdecay 2 0 2. +Muon1Electron1DeltaR 100 0 5. +Muon1Electron1DeltaPtDivSumPt 100 -5 5. +Muon1Electron1DeltaPt 100 0 1000 +Muon1Electron1_Muon1MetMt 100 0 500 +Muon1Electron1_Electron1MetMt 100 0 500 +Muon1Electron1OSLS 20 -10 10 +Muon1Electron1CosDphi 220 -1.1 1.1 +Muon1Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron1_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon1Electron1NotReconstructableMass 600 0 1500 +Muon1Electron1ReconstructableMass 600 0 1500 +Muon1Electron1PZeta 200 -100 100 +Muon1Electron1PZetaVis 100 0 100 +Muon1Electron1Zeta1D 150 -300 300 +Muon1Electron1DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron1Pt 100 0 500 100 0 500 +Muon1Electron1Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon1Electron2 0 + +Muon1Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1DiJetDeltaPhi 72 0 +3.15 +Muon1Electron2_Muon1IsZdecay 2 0 2. +Muon1Electron2_Electron2IsZdecay 2 0 2. +Muon1Electron2DeltaR 100 0 5. +Muon1Electron2DeltaPtDivSumPt 100 -5 5. +Muon1Electron2DeltaPt 100 0 1000 +Muon1Electron2_Muon1MetMt 100 0 500 +Muon1Electron2_Electron2MetMt 100 0 500 +Muon1Electron2OSLS 20 -10 10 +Muon1Electron2CosDphi 220 -1.1 1.1 +Muon1Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon1Electron2_Muon1MetDeltaPhi 72 0 +3.15 +Muon1Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon1Electron2NotReconstructableMass 600 0 1500 +Muon1Electron2ReconstructableMass 600 0 1500 +Muon1Electron2PZeta 200 -100 100 +Muon1Electron2PZetaVis 100 0 100 +Muon1Electron2Zeta1D 150 -300 300 +Muon1Electron2DiJetReconstructableMass 100 0 5000 +Muon1PtVsElectron2Pt 100 0 500 100 0 500 +Muon1Electron2Zeta2D 100 0 100 200 -100 100 +Muon1MetDeltaPhiVsMuon1Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +FillMuon2Electron1 0 + +Muon2Electron1_Electron1DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron1_Muon2IsZdecay 2 0 2. +Muon2Electron1_Electron1IsZdecay 2 0 2. +Muon2Electron1DeltaR 100 0 5. +Muon2Electron1DeltaPtDivSumPt 100 -5 5. +Muon2Electron1DeltaPt 100 0 1000 +Muon2Electron1_Muon2MetMt 100 0 500 +Muon2Electron1_Electron1MetMt 100 0 500 +Muon2Electron1OSLS 20 -10 10 +Muon2Electron1CosDphi 220 -1.1 1.1 +Muon2Electron1CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron1_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron1_Electron1MetDeltaPhi 72 0 +3.15 +Muon2Electron1NotReconstructableMass 600 0 1500 +Muon2Electron1ReconstructableMass 600 0 1500 +Muon2Electron1PZeta 200 -100 100 +Muon2Electron1PZetaVis 100 0 100 +Muon2Electron1Zeta1D 150 -300 300 +Muon2Electron1DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron1Pt 100 0 500 100 0 500 +Muon2Electron1Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron1CosDphi 72 0 +3.15 220 -1.1 1.1 + + +FillMuon2Electron2 0 + +Muon2Electron2_Electron2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2DiJetDeltaPhi 72 0 +3.15 +Muon2Electron2_Muon2IsZdecay 2 0 2. +Muon2Electron2_Electron2IsZdecay 2 0 2. +Muon2Electron2DeltaR 100 0 5. +Muon2Electron2DeltaPtDivSumPt 100 -5 5. +Muon2Electron2DeltaPt 100 0 1000 +Muon2Electron2_Muon2MetMt 100 0 500 +Muon2Electron2_Electron2MetMt 100 0 500 +Muon2Electron2OSLS 20 -10 10 +Muon2Electron2CosDphi 220 -1.1 1.1 +Muon2Electron2CosDphi_DeltaPtAndMet 220 -1.1 1.1 +Muon2Electron2_Muon2MetDeltaPhi 72 0 +3.15 +Muon2Electron2_Electron2MetDeltaPhi 72 0 +3.15 +Muon2Electron2NotReconstructableMass 600 0 1500 +Muon2Electron2ReconstructableMass 600 0 1500 +Muon2Electron2PZeta 200 -100 100 +Muon2Electron2PZetaVis 100 0 100 +Muon2Electron2Zeta1D 150 -300 300 +Muon2Electron2DiJetReconstructableMass 100 0 5000 +Muon2PtVsElectron2Pt 100 0 500 100 0 500 +Muon2Electron2Zeta2D 100 0 100 200 -100 100 +Muon2MetDeltaPhiVsMuon2Electron2CosDphi 72 0 +3.15 220 -1.1 1.1 + +//------------------------------------------------// diff --git a/PartDet_ztautau_11.10/Jet_info.in b/PartDet_ztautau_11.10/Jet_info.in new file mode 100644 index 0000000..d8440b8 --- /dev/null +++ b/PartDet_ztautau_11.10/Jet_info.in @@ -0,0 +1,160 @@ +######################################## + Smear +####################################### + +SmearTheJet 0 +JetEnergyScaleOffset 0.3 + +MuonMatchingDeltaR 0.3 +ElectronMatchingDeltaR 0.3 +TauMatchingDeltaR 0.3 + + + +######################################## + Jet1 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 + +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.1 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.1 +Tau2MatchingDeltaR 0.1 + +######################################## + Jet2 +####################################### + +EtaCut 0. 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.1 +Electron2MatchingDeltaR 0.1 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + CentralJet +################################### + +ApplyLooseID 1 +PtCut 30.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + FirstLeadingJet +################################### + +DoDiscrByThisJet 1 + +ApplyLooseID 1 +EtaCut 0.0 2.4 +PtCut 100.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +#################################### + SecondLeadingJet +################################### + +DoDiscrByThisJet 1 + +EtaCut 0.0 2.4 +PtCut 30.0 +ApplyLooseID 1 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +################################### + BJet +################################## + +EtaCut 0.0 3.5 +PtCut 20.0 + +RemoveOverlapWithMuon1s 1 +RemoveOverlapWithMuon2s 1 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 1 +RemoveOverlapWithElectron2s 1 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +RemoveOverlapWithTau1s 1 +RemoveOverlapWithTau2s 1 +Tau1MatchingDeltaR 0.3 +Tau2MatchingDeltaR 0.3 + +ApplyJetBTagging 1 +JetBTaggingCut 0.600 +MatchBToGen 0 +UseBtagSF 1 + + diff --git a/PartDet_ztautau_11.10/MuonElectron_info.in b/PartDet_ztautau_11.10/MuonElectron_info.in new file mode 100644 index 0000000..bb721ba --- /dev/null +++ b/PartDet_ztautau_11.10/MuonElectron_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Electron1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Electron2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Electron1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Electron2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_ztautau_11.10/MuonTau_info.in b/PartDet_ztautau_11.10/MuonTau_info.in new file mode 100644 index 0000000..7a6aba5 --- /dev/null +++ b/PartDet_ztautau_11.10/MuonTau_info.in @@ -0,0 +1,111 @@ +################################ + Muon1Tau1 +############################# + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +############################### + Muon1Tau2 +############################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +#################################### + Muon2Tau1 +################################### + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 + +######################### + Muon2Tau2 +######################## + +DiscrByDeltaR 1 +DeltaRCut 0.3 + +DiscrByOSLSType No +DiscrByCosDphi 0 +CosDphiCut -1.00 -0.95 + +DiscrByCosDphi_DeltaPtAndMet false +CosDphi_DeltaPtMetCut 0.8 1.0 + +DiscrByMassReco 0 +HowCalculateMassReco none ###VectorSumOfVisProductsAndMet or CollinearApprox +MassCut 0.0 200.0 + +DiscrByCDFzeta2D 0 +PZetaCutCoefficient 1.0 +PZetaVisCutCoefficient -3.1 +CDFzeta2DCutValue -50.0 1000 + +DiscrByDeltaPtDivSumPt 0 +DeltaPtDivSumPtCutValue 0.1 1.0 +DiscrByDeltaPt 0 +DeltaPtCutValue 30.0 1000.0 \ No newline at end of file diff --git a/PartDet_ztautau_11.10/Muon_info.in b/PartDet_ztautau_11.10/Muon_info.in new file mode 100644 index 0000000..c356e9c --- /dev/null +++ b/PartDet_ztautau_11.10/Muon_info.in @@ -0,0 +1,68 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 1 +PtScaleOffset 1. +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.3 +UseMotherID 0 +MotherID 23.0 + +//////////////////////////////// + Muon1 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 10.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.15 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.0 3.15 + +DiscrByMetMt 0 +MetMtCut 0. 100. + +//////////////////////////////// + Muon2 +/////////////////////////////// + +//----RECO CUTS----// + +EtaCut 2.5 +PtCut 20.0 9999.9 + +DoDiscrByTightID 1 +DoDiscrBySoftID 0 + +DoDiscrByIsolation 1 +IsoSumPtCutValue 0.0 0.2 + +//----MET TOPOLOGY CUTS----// + +DiscrIfIsZdecay 0 + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 10. 100. \ No newline at end of file diff --git a/PartDet_ztautau_11.10/Run_info.in b/PartDet_ztautau_11.10/Run_info.in new file mode 100644 index 0000000..7e7c62d --- /dev/null +++ b/PartDet_ztautau_11.10/Run_info.in @@ -0,0 +1,45 @@ +#################################### + Run +#################################### + +CalculatePUSystematics true +DataHistos PU2016data_6p2ifb.root +MCHistos PU2016MC.root +DataPUHistName NVertices_0 +MCPUHistName NVertices_0 + +ApplyTauIDSF false +UsePileUpWeight false #for pileup efficiency set to false on a second run 11.08.17 +ApplyZBoostSF true + +isData false +ApplyGenWeight true + +///------Triggers-----/// + +Trigger1FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 +Trigger1SecondRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1 + +Trigger2FirstRequirement HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v +Trigger2SecondRequirement HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v + +///---Treat Muon as Neutrino---/// + +TreatMuonsAsNeutrinos 0 +TreatMuonsAsTaus 0 + +///-----MET cuts------/// + +DiscrByMet false +MetCut 30.0 10000.0 + +DiscrByMHT false +MhtCut 50.0 +DiscrByHT false +HtCut 30.0 + +JetPtForMhtAndHt 30.0 +JetEtaForMhtAndHt 5.0 +ApplyJetLooseIDforMhtAndHt true + + diff --git a/PartDet_ztautau_11.10/Systematics_info.in b/PartDet_ztautau_11.10/Systematics_info.in new file mode 100644 index 0000000..3b20966 --- /dev/null +++ b/PartDet_ztautau_11.10/Systematics_info.in @@ -0,0 +1,72 @@ +#################################### + Systematics +#################################### + +useSystematics 0 + +Tau_weight_Normal 0 +Tau_weight_Up 0 +Tau_weight_Down 0 + +MetUncl_Up 0 +MetUncl_Down 0 +Jet_Res_Up 0 +Jet_Res_Down 0 +Jet_Scale_Up 0 +Jet_Scale_Down 0 +Electron_Res_Up 0 +Electron_Res_Down 0 +Electron_Scale_Up 0 +Electron_Scale_Down 0 +Muon_Res_Up 0 +Muon_Res_Down 0 +Muon_Scale_Up 0 +Muon_Scale_Down 0 + + +################################ + Muon_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 + + +################################ + Electron_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +#Based on 2015 JINST 10 P06005 +scale 0.003 +res 0.0 + + +################################ + Tau_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.4 +scale 0.03 +res 0.0 + +################################ + Jet_systematics +################################ +#minimal pt and maximal eta + +pt_min 30 +eta_max 2.8 +scale 0.05 +res 0.032 +#from https://github.com/cms-jet/JRDatabase +jetResolutionFileUnmatched Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt +jetResolutionSFFile Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt + diff --git a/PartDet_ztautau_11.10/Tau_info.in b/PartDet_ztautau_11.10/Tau_info.in new file mode 100644 index 0000000..f0cf01a --- /dev/null +++ b/PartDet_ztautau_11.10/Tau_info.in @@ -0,0 +1,111 @@ +///////////////////////////////// + Smear +///////////////////////////////// + +SmearTheParticle 0 +PtScaleOffset 1.0 +PtSigmaOffset 1. +EtaScaleOffset 1. +EtaSigmaOffset 1. +PhiScaleOffset 1. +PhiSigmaOffset 1. +EnergyScaleOffset 1. +EnergySigmaOffset 1. + +MatchToGen 0 +GenMatchingDeltaR 0.2 + +TauSF 0 +////////////////////////////// + Tau1 +//////////////////////////// + +//RECO CUTS/// + +EtaCut 2.1 +PtCut 60.0 9999.9 + +DoDiscrByLeadTrack false +LeadTrackThreshold 3.0 + + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron true +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons false + +DoDiscrAgainstMuon true +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons false + +DoDiscrByCrackCut true + +RemoveOverlapWithMuon1s false +RemoveOverlapWithMuon2s false +Muon1MatchingDeltaR 0.01 +Muon2MatchingDeltaR 0.01 + +RemoveOverlapWithElectron1s false +RemoveOverlapWithElectron2s false +Electron1MatchingDeltaR 0.01 +Electron2MatchingDeltaR 0.01 + +///---MET TOPOLOGY CUTS---// + +DiscrByMetDphi false +MetDphiCut 1.3 3.15 + +DiscrByMetMt false +MetMtCut 0.0 50.0 + +///////////////////////////// + Tau2 +////////////////////////////// + +//----RECO CUTS----//// + +EtaCut 2.1 +PtCut 60.0 9999.9 + +DoDiscrByLeadTrack 0 +LeadTrackThreshold 5.0 + +DoDiscrByIsolation true +DiscrByMinIsolation ZERO +DiscrByMaxIsolation byTightIsolationMVArun2v1DBnewDMwLT +DiscrByProngType true +ProngType 1or2or3hps + +DoDiscrAgainstElectron 1 +DiscrAgainstElectron againstElectronMVALooseMVA6 +SelectTausThatAreElectrons 0 + +DoDiscrAgainstMuon 1 +DiscrAgainstMuon againstMuonTight3 +SelectTausThatAreMuons 0 + +DoDiscrByCrackCut 0 + +RemoveOverlapWithMuon1s 0 +RemoveOverlapWithMuon2s 0 +Muon1MatchingDeltaR 0.3 +Muon2MatchingDeltaR 0.3 + +RemoveOverlapWithElectron1s 0 +RemoveOverlapWithElectron2s 0 +Electron1MatchingDeltaR 0.3 +Electron2MatchingDeltaR 0.3 + +//-----MET TOPOLOGY CUTS-----// + +DiscrByMetDphi 0 +MetDphiCut 1.30 3.15 + +DiscrByMetMt 0 +MetMtCut 0.0 40.0 + diff --git a/PartDet_ztautau_11.10/VBFCuts_info.in b/PartDet_ztautau_11.10/VBFCuts_info.in new file mode 100644 index 0000000..c33bed6 --- /dev/null +++ b/PartDet_ztautau_11.10/VBFCuts_info.in @@ -0,0 +1,29 @@ +################################## + VBFSUSY +################################## + +DiscrByMass false +MassCut 500.0 10000.0 + +DiscrByPt true +PtCut 0 10000.0 +DiscrByDeltaEta false +DeltaEtaCut 4.0 10000.0 +DiscrByDeltaPhi false +DeltaPhiCut 1.3. 10000.0 + +DiscrByOSEta 0 + +DiscrByR1 0 +R1Cut 0.85 999.0 +DiscrByR2 false +R2Cut 0.0 3.6 +DiscrByAlpha false +AlphaCut 0.5 5.0 + +DiscrByDphi1 false +Dphi1Cut 0.2 999.9 +DiscrByDphi2 true +Dphi2Cut 0.6 9999.5 + + diff --git a/isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_150GeVLSP_12.08.pdf b/isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_150GeVLSP_12.08.pdf new file mode 100644 index 0000000000000000000000000000000000000000..112458c08feb144e2b8b7687147c624a5ac0e574 GIT binary patch literal 39233 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 Jh0YH%`9J(n17H9E literal 0 HcmV?d00001 diff --git a/isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_250GeVLSP_12.08.pdf b/isrstau_pileupstudies_12.08/mT_forpuweightuncertainty_250GeVLSP_12.08.pdf new file mode 100644 index 0000000000000000000000000000000000000000..52d00db9911f317ae42bf8e00e07496dac221f4f GIT binary patch literal 39266 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 aUYj infiles, string outfile, bool setCR, string co }else { doSystematics=false; } - cout << doSystematics << endl; _Electron = new Electron(BOOM, filespace + "Electron_info.in", syst_names); _Muon = new Muon(BOOM, filespace + "Muon_info.in", syst_names); _Tau = new Taus(BOOM, filespace + "Tau_info.in", syst_names); @@ -174,7 +173,6 @@ Analyzer::Analyzer(vector infiles, string outfile, bool setCR, string co std::remove(outfile.c_str()); // delete file histo = Histogramer(1, filespace+"Hist_entries.in", filespace+"Cuts.in", outfile, isData, cr_variables); if(doSystematics) - //cout << "syst_names: " << syst_names.size() << endl; syst_histo=Histogramer(1, filespace+"Hist_syst_entries.in", filespace+"Cuts.in", outfile, isData, cr_variables,syst_names); systematics = Systematics(distats); jetScaleRes = JetScaleResolution("Pileup/Summer16_23Sep2016V4_MC_Uncertainty_AK4PFchs.txt", "", "Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt", "Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt"); @@ -346,6 +344,7 @@ Analyzer::~Analyzer() { delete _Muon; delete _Tau; delete _Jet; + if(!isData) delete _Gen; for(auto pair: fillInfo) { @@ -417,7 +416,7 @@ void Analyzer::preprocess(int event) { ipart->init(); } _MET->init(); - + active_part = &goodParts; if(!select_mc_background()){ //we will put nothing in good particles @@ -473,17 +472,16 @@ void Analyzer::preprocess(int event) { smearLepton(*_Electron, CUTS::eGElec, _Electron->pstats["Smear"], distats["Electron_systematics"], i); smearLepton(*_Muon, CUTS::eGMuon, _Muon->pstats["Smear"], distats["Muon_systematics"], i); smearLepton(*_Tau, CUTS::eGTau, _Tau->pstats["Smear"], distats["Tau_systematics"], i); - smearJet(*_Jet,CUTS::eGJet,_Jet->pstats["Smear"], i); smearJet(*_FatJet,CUTS::eGJet,_FatJet->pstats["Smear"], i); - updateMet(i); + updateMet(i); } for(size_t i=0; i < syst_names.size(); i++) { string systname = syst_names.at(i); for( auto part: allParticles) part->setCurrentP(i); - _MET->setCurrentP(i); + _MET->setCurrentP(i); getGoodParticles(i); } active_part = &goodParts; @@ -561,8 +559,7 @@ bool Analyzer::fillCuts(bool fillCounter) { bool prevTrue = true; maxCut=0; - // cout << active_part << endl;; - + for(size_t i = 0; i < cut_order->size(); i++) { string cut = cut_order->at(i); if(isData && cut.find("Gen") != string::npos){ @@ -1052,7 +1049,7 @@ void Analyzer::smearJet(Particle& jet, const CUTS eGenPos, const PartStats& stat //add energy scale uncertainty string systname = syst_names.at(syst); - //cout << systname << endl; + for(size_t i=0; i< jet.size(); i++) { TLorentzVector jetReco = jet.RecoP4(i); @@ -1067,21 +1064,20 @@ void Analyzer::smearJet(Particle& jet, const CUTS eGenPos, const PartStats& stat //only apply corrections for jets not for FatJets TLorentzVector genJet=matchJetToGen(jetReco, jet.pstats["Smear"],eGenPos); - //cout << "1: " << genJet.Pt() << endl; //01.05.18 + if(systname=="orig"){ - sf= 1.0 ; //jetScaleRes.GetRes(jetReco,genJet, rho, 0); 01.15.18 + sf= jetScaleRes.GetRes(jetReco,genJet, rho, 0); }else if(systname=="Jet_Res_Up"){ sf=jetScaleRes.GetRes(jetReco,genJet, rho, 1); }else if(systname=="Jet_Res_Down"){ sf=jetScaleRes.GetRes(jetReco,genJet, rho, -1); }else if(systname=="Jet_Scale_Up"){ - sf = 1.05 ; //1.+ jetScaleRes.GetScale(jetReco, false, +1.); 01.15.18 + sf = 1.+ jetScaleRes.GetScale(jetReco, false, +1.); }else if(systname=="Jet_Scale_Down"){ - sf = 0.95 ; //1.- jetScaleRes.GetScale(jetReco, false, -1) ; 01.15.18 + sf = 1.- jetScaleRes.GetScale(jetReco, false, -1); } - + systematics.shiftParticle(jet, jetReco, sf, _MET->systdeltaMEx[syst], _MET->systdeltaMEy[syst], syst); - } } @@ -1844,7 +1840,7 @@ void Analyzer::fill_histogram() { }else wgt=1.; //backup current weight backup_wgt=wgt; - cout << "syst_names size: " << syst_names.size() << endl; + for(size_t i = 0; i < syst_names.size(); i++) { for(Particle* ipart: allParticles) ipart->setCurrentP(i); _MET->setCurrentP(i); @@ -1854,7 +1850,7 @@ void Analyzer::fill_histogram() { active_part = &goodParts; fillCuts(true); for(auto it: *groups) { - cout << "it1: " << it << endl; + //cout << "it1: " << it << endl; fill_Folder(it, maxCut, histo, false); } }else{ @@ -1872,19 +1868,16 @@ void Analyzer::fill_histogram() { } } } ->>>>>>> 0611eb8ef419128ee7a3cb59e1c0c003eee0de29 + //get the non particle conditions: for(auto itCut : nonParticleCuts){ - //cout << "itcut: " << itCut << endl; - active_part->at(itCut)=goodParts.at(itCut); + active_part->at(itCut)=goodParts.at(itCut); } //cout<<"________________"< Date: Thu, 11 Oct 2018 11:48:27 -0500 Subject: [PATCH 6/6] remove some debug statements --- Analyzer_editing_612.cc | 1696 --------------------------------------- PartDet/.gitignore | 1 - msg1 | 53 -- src/Analyzer.cc | 93 +-- src/MET.cc | 2 +- src/main.cc | 5 - 6 files changed, 7 insertions(+), 1843 deletions(-) delete mode 100644 Analyzer_editing_612.cc delete mode 100644 PartDet/.gitignore delete mode 100644 msg1 diff --git a/Analyzer_editing_612.cc b/Analyzer_editing_612.cc deleted file mode 100644 index 1184cad..0000000 --- a/Analyzer_editing_612.cc +++ /dev/null @@ -1,1696 +0,0 @@ -#include "Analyzer.h" -//// Used to convert Enums to integers -#define ival(x) static_cast(x) -//// BIG_NUM = sqrt(sizeof(int)) so can use diparticle convention of -//// index = BIG_NUM * i1 + i2 -//// This insures easy way to extract indices -//// Needs to be changed if go to size_t instead (if want to play safe -#define BIG_NUM 46340 - -///// Macros defined to shorten code. Made since lines used A LOT and repeative. May change to inlines -///// if tests show no loss in speed -#define histAddVal2(val1, val2, name) histo.addVal(val1, val2, group, max, name, wgt) -#define histAddVal(val, name) histo.addVal(val, group, max, name, wgt) -#define SetBranch(name, variable) BOOM->SetBranchStatus(name, 1); BOOM->SetBranchAddress(name, &variable); - -typedef vector::iterator vec_iter; - -////////////////////////////////////////////////////////////////// -///////////////////CONSTANTS DEFINITONS/////////////////////////// -////////////////////////////////////////////////////////////////// - -//Filespace that has all of the .in files -const string FILESPACE = "PartDet/"; -const string PUSPACE = "Pileup/"; -const string ISRSPACE = "ISR/"; - -const vector Analyzer::genCuts = { - CUTS::eGTau, CUTS::eNuTau, CUTS::eGTop, - CUTS::eGElec, CUTS::eGMuon, CUTS::eGZ, - CUTS::eGW, CUTS::eGHiggs -}; - -const vector Analyzer::jetCuts = { - CUTS::eRJet1, CUTS::eRJet2, CUTS::eRCenJet, - CUTS::eR1stJet, CUTS::eR2ndJet, CUTS::eRBJet -}; - - - - -const unordered_map, EnumHash> Analyzer::adjList = { - {CUTS::eMuon1Tau1, {CUTS::eRMuon1, CUTS::eRTau1}}, - {CUTS::eMuon1Tau2, {CUTS::eRMuon1, CUTS::eRTau2}}, - {CUTS::eMuon2Tau1, {CUTS::eRMuon2, CUTS::eRTau1}}, - {CUTS::eMuon2Tau2, {CUTS::eRMuon2, CUTS::eRTau2}}, - - {CUTS::eElec1Tau1, {CUTS::eRElec1, CUTS::eRTau1}}, - {CUTS::eElec1Tau2, {CUTS::eRElec1, CUTS::eRTau2}}, - {CUTS::eElec2Tau1, {CUTS::eRElec2, CUTS::eRTau1}}, - {CUTS::eMuon2Tau2, {CUTS::eRElec2, CUTS::eRTau2}}, - - {CUTS::eMuon1Elec1, {CUTS::eRMuon1, CUTS::eRElec1}}, - {CUTS::eMuon1Elec2, {CUTS::eRMuon1, CUTS::eRElec2}}, - {CUTS::eMuon2Elec1, {CUTS::eRMuon2, CUTS::eRElec1}}, - {CUTS::eMuon2Elec2, {CUTS::eRMuon2, CUTS::eRElec2}}, - - {CUTS::eDiElec, {CUTS::eRElec1, CUTS::eRElec2}}, - {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eR1stJet, CUTS::eR2ndJet}}, - {CUTS::eDiTau, {CUTS::eRTau1, CUTS::eRTau2}}, - {CUTS::eDiElec, {CUTS::eRElec1, CUTS::eRElec2, CUTS::eR1stJet, CUTS::eR2ndJet}}, - {CUTS::eDiMuon, {CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eR1stJet, CUTS::eR2ndJet}}, - {CUTS::eDiTau, {CUTS::eRTau1, CUTS::eRTau2, CUTS::eR1stJet, CUTS::eR2ndJet}}, - {CUTS::eDiJet, {CUTS::eRJet1, CUTS::eRJet2}}, - {CUTS::eSusyCom, {CUTS::eR1stJet, CUTS::eR2ndJet}}, - {CUTS::eGTau, {CUTS::eNuTau}}, - {CUTS::eGen, genCuts} -}; - - -const unordered_map Analyzer::cut_num = { - {"NGenTau", CUTS::eGTau}, {"NGenTop", CUTS::eGTop}, - {"NGenElectron", CUTS::eGElec}, {"NGenMuon", CUTS::eGMuon}, - {"NGenZ", CUTS::eGZ}, {"NGenW", CUTS::eGW}, - {"NGenHiggs", CUTS::eGHiggs}, {"NRecoVertex", CUTS::eRVertex}, - {"NRecoMuon1", CUTS::eRMuon1}, {"NRecoMuon2", CUTS::eRMuon2}, - {"NRecoElectron1", CUTS::eRElec1}, {"NRecoElectron2",CUTS::eRElec2}, - {"NRecoTau1", CUTS::eRTau1}, {"NRecoTau2", CUTS::eRTau2}, - {"NRecoJet1", CUTS::eRJet1}, {"NRecoJet2", CUTS::eRJet2}, - {"NRecoCentralJet", CUTS::eRCenJet}, {"NRecoBJet", CUTS::eRBJet}, - {"NRecoTriggers1", CUTS::eRTrig1}, {"NRecoTriggers2", CUTS::eRTrig2}, - {"NRecoFirstLeadingJet", CUTS::eR1stJet}, {"NRecoSecondLeadingJet", CUTS::eR2ndJet}, - {"NDiMuonCombinations", CUTS::eDiMuon}, {"NDiElectronCombinations", CUTS::eDiElec}, - {"NDiTauCombinations", CUTS::eDiTau}, {"NDiJetCombinations", CUTS::eDiJet}, - {"NMuon1Tau1Combinations", CUTS::eMuon1Tau1}, {"NMuon1Tau2Combinations", CUTS::eMuon1Tau2}, - {"NMuon2Tau1Combinations", CUTS::eMuon2Tau1}, {"NMuon2Tau2Combinations", CUTS::eMuon2Tau2}, - {"NElectron1Tau1Combinations", CUTS::eElec1Tau1}, {"NElectron1Tau2Combinations", CUTS::eElec1Tau2}, - {"NElectron2Tau1Combinations", CUTS::eElec2Tau1}, {"NElectron2Tau2Combinations", CUTS::eElec2Tau2}, - {"NMuon1Electron1Combinations", CUTS::eMuon1Elec1}, {"NMuon1Electron2Combinations", CUTS::eMuon1Elec2}, - {"NMuon2Electron1Combinations", CUTS::eMuon2Elec1}, {"NMuon2Electron2Combinations", CUTS::eMuon2Elec2}, - {"NLeadJetCombinations", CUTS::eSusyCom}, {"METCut", CUTS::eMET} -}; - - -////////////////////////////////////////////////////// -//////////////////PUBLIC FUNCTIONS//////////////////// -////////////////////////////////////////////////////// - -///Constructor -Analyzer::Analyzer(string infile, string outfile, bool setCR) : goodParts(getArray()) { - cout << "setup start" << endl; - f = TFile::Open(infile.c_str()); - f->cd("TNT"); - BOOM = (TTree*)f->Get("TNT/BOOM"); - nentries = (int) BOOM->GetEntries(); - BOOM->SetBranchStatus("*", 0); - std::cout << "TOTAL EVENTS: " << nentries << std::endl; - - for(int i=0; i < nTrigReq; i++) { - vector* tmpi = new vector(); - vector* tmps = new vector(); - trigPlace[i] = tmpi; - trigName[i] = tmps; - } - - setupGeneral(BOOM,infile); - - isData = distats["Run"].bmap.at("isData"); - CalculatePUSystematics = distats["Run"].bmap.at("CalculatePUSystematics"); - initializePileupInfo(distats["Run"].smap.at("MCHistos"), distats["Run"].smap.at("DataHistos")); - CalculateISRSystematics = distats["Run"].bmap.at("CalculateISRSystematics"); - initializeISRWeightInfo(distats["Run"].smap.at("ISRweightHistos")); - - - if(!isData) { - _Gen = new Generated(BOOM, FILESPACE + "Gen_info.in"); - } - _Electron = new Electron(BOOM, FILESPACE + "Electron_info.in"); - _Muon = new Muon(BOOM, FILESPACE + "Muon_info.in"); - _Tau = new Taus(BOOM, FILESPACE + "Tau_info.in"); - _Jet = new Jet(BOOM, FILESPACE + "Jet_info.in"); - - _Electron->findExtraCuts(); - _Muon->findExtraCuts(); - _Tau->findExtraCuts(); - _Jet->findExtraCuts(); - - - vector cr_variables; - if(setCR) { - char buf[64]; - read_info(FILESPACE + "Control_Regions.in"); - crbins = pow(2.0, distats["Control_Region"].dmap.size()); - for(auto maper: distats["Control_Region"].dmap) { - cr_variables.push_back(maper.first); - sprintf(buf, "%.*G", 16, maper.second); - cr_variables.push_back(buf); - } - if(isData) { - if(distats["Control_Region"].smap.find("SR") == distats["Control_Region"].smap.end()) { - cout << "Using Control Regions with data, but no signal region specified can lead to accidentially unblinding a study before it should be. Please specify a SR in the file PartDet/Control_Region.in" << endl; - exit(1); - } else if(distats["Control_Region"].smap.at("SR").length() != distats["Control_Region"].dmap.size()) { - cout << "Signal Region specified incorrectly: check signal region variable to make sure the number of variables matches the number of signs in SR" << endl; - exit(1); - } - int factor = 1; - SignalRegion = 0; - for(auto gtltSign: distats["Control_Region"].smap["SR"]) { - if(gtltSign == '>') SignalRegion += factor; - factor *= 2; - } - if(distats["Control_Region"].bmap.find("Unblind") != distats["Control_Region"].bmap.end()) { - blinded = !distats["Control_Region"].bmap["Unblind"]; - } - } - } - - histo = Histogramer(1, FILESPACE+"Hist_entries.in", FILESPACE+"Cuts.in", outfile, isData, cr_variables); - - if(setCR) { - cuts_per.resize(histo.get_folders()->size()); - cuts_cumul.resize(histo.get_folders()->size()); - } else { - cuts_per.resize(histo.get_cuts()->size()); - cuts_cumul.resize(histo.get_cuts()->size()); - } - create_fillInfo(); - for(auto maper: distats["Control_Region"].dmap) { - - setupCR(maper.first, maper.second); - } - - setCutNeeds(); - // exit(1); -} - -unordered_map*, EnumHash> Analyzer::getArray() { - unordered_map*, EnumHash> rmap; - for(auto e: Enum()) { - rmap[e] = new vector(); - } - return rmap; -} - - - -void Analyzer::create_fillInfo() { - - fillInfo["FillLeadingJet"] = new FillVals(CUTS::eSusyCom, FILLER::Dipart, _Jet, _Jet); - fillInfo["FillGen"] = new FillVals(CUTS::eGen, FILLER::Single, _Gen); - fillInfo["FillTau1"] = new FillVals(CUTS::eRTau1, FILLER::Single, _Tau); - fillInfo["FillTau2"] = new FillVals(CUTS::eRTau2, FILLER::Single, _Tau); - fillInfo["FillMuon1"] = new FillVals(CUTS::eRMuon1, FILLER::Single, _Muon); - fillInfo["FillMuon2"] = new FillVals(CUTS::eRMuon2, FILLER::Single, _Muon); - fillInfo["FillElectron1"] = new FillVals(CUTS::eRElec1, FILLER::Single, _Electron); - fillInfo["FillElectron2"] = new FillVals(CUTS::eRElec2, FILLER::Single, _Electron); - - fillInfo["FillJet1"] = new FillVals(CUTS::eRJet1, FILLER::Single, _Jet); - fillInfo["FillJet2"] = new FillVals(CUTS::eRJet2, FILLER::Single, _Jet); - fillInfo["FillBJet"] = new FillVals(CUTS::eRBJet, FILLER::Single, _Jet); - fillInfo["FillCentralJet"] = new FillVals(CUTS::eRCenJet, FILLER::Single, _Jet); - - fillInfo["FillDiMuon"] = new FillVals(CUTS::eDiMuon, FILLER::Dipart, _Muon, _Muon); - fillInfo["FillDiTau"] = new FillVals(CUTS::eDiTau, FILLER::Dipart, _Tau, _Tau); - fillInfo["FillMetCuts"] = new FillVals(); - fillInfo["FillDiJet"] = new FillVals(CUTS::eDiJet, FILLER::Dipart, _Jet, _Jet); - - fillInfo["FillMuon1Tau1"] = new FillVals(CUTS::eMuon1Tau1, FILLER::Dipart, _Muon, _Tau); - fillInfo["FillMuon1Tau2"] = new FillVals(CUTS::eMuon1Tau1, FILLER::Dipart, _Muon, _Tau); - fillInfo["FillMuon2Tau1"] = new FillVals(CUTS::eMuon2Tau1, FILLER::Dipart, _Muon, _Tau); - fillInfo["FillMuon2Tau2"] = new FillVals(CUTS::eMuon2Tau2, FILLER::Dipart, _Muon, _Tau); - fillInfo["FillElectron1Tau1"] = new FillVals(CUTS::eElec1Tau1, FILLER::Dipart, _Electron, _Tau); - fillInfo["FillElectron1Tau2"] = new FillVals(CUTS::eElec1Tau1, FILLER::Dipart, _Electron, _Tau); - fillInfo["FillElectron2Tau1"] = new FillVals(CUTS::eElec2Tau1, FILLER::Dipart, _Electron, _Tau); - fillInfo["FillElectron2Tau2"] = new FillVals(CUTS::eElec2Tau2, FILLER::Dipart, _Electron, _Tau); - fillInfo["FillMuon1Electron1"] = new FillVals(CUTS::eMuon1Elec1, FILLER::Dipart, _Muon, _Electron); - fillInfo["FillMuon1Electron2"] = new FillVals(CUTS::eMuon1Elec1, FILLER::Dipart, _Muon, _Electron); - fillInfo["FillMuon2Electron1"] = new FillVals(CUTS::eMuon2Elec1, FILLER::Dipart, _Muon, _Electron); - fillInfo["FillMuon2Electron2"] = new FillVals(CUTS::eMuon2Elec2, FILLER::Dipart, _Muon, _Electron); - - //////I hate this solution so much. Its terrible - fillInfo["FillElectron1Electron2"] = new FillVals(CUTS::eDiElec, FILLER::Single, _Electron, _Electron); - fillInfo["FillMuon1Muon2"] = new FillVals(CUTS::eDiMuon, FILLER::Single, _Muon, _Muon); - fillInfo["FillTau1Tau2"] = new FillVals(CUTS::eDiTau, FILLER::Single, _Tau, _Tau); - - - - for(auto it: *histo.get_groups()) { - if(fillInfo[it] == nullptr) fillInfo[it] = new FillVals(); - } - - - -} - -void Analyzer::setupCR(string var, double val) { - smatch m; - regex part ("^(.+)_(.+)$"); - if(regex_match(var, m, part)) { - string name = m[1]; - string cut = "Fill" + name; - if(fillInfo.find(cut) == fillInfo.end()) { - cout << cut << " not found, put into fillInfo" << endl; - exit(1); - } - cout << cut << " " << m[2] << " " << val << " " << name << endl; - testVec.push_back(new CRTester(fillInfo.at(cut), m[2], val, name)); - } else { - cout << "Could not process line: " << var << endl; - exit(1); - } - -} - - - - -////destructor -Analyzer::~Analyzer() { - delete f; - delete _Electron; - delete _Muon; - delete _Tau; - delete _Jet; - if(!isData) delete _Gen; - - for(auto pair: fillInfo) { - delete pair.second; - } - - for(auto e: Enum()) { - delete goodParts[e]; - } - - for(int i=0; i < nTrigReq; i++) { - delete trigPlace[i]; - delete trigName[i]; - } -} - - -///resets values so analysis can start -void Analyzer::clear_values() { - for(auto e: Enum()) { - goodParts[e]->clear(); - } - deltaMEx=0; - deltaMEy=0; - sumpxForMht = 0.0; - sumpyForMht = 0.0; - sumptForHt = 0.0; - leadIndex=-1; - maxCut = 0; -} - -///Function that does most of the work. Calculates the number of each particle -void Analyzer::preprocess(int event) { - BOOM->GetEntry(event); - theMETVector.SetPxPyPzE(Met[0], Met[1], Met[2], sqrt(pow(Met[0],2) + pow(Met[1],2))); - pu_weight = (!isData && CalculatePUSystematics) ? hPU[(int)(nTruePU+1)] : 1.0; - isr_weight = (!isData && CalculateISRSystermatics) ? hISR[(double)(leadpt)] : 1.0; - - - // SET NUMBER OF GEN PARTICLES - if(!isData){ - getGoodGen(_Gen->pstats["Gen"]); - getGoodTauNu(); - } - - //////Smearing - smearLepton(*_Electron, CUTS::eGElec, _Electron->pstats["Smear"]); - smearLepton(*_Muon, CUTS::eGMuon, _Muon->pstats["Smear"]); - smearLepton(*_Tau, CUTS::eGTau, _Tau->pstats["Smear"]); - smearJet(_Jet->pstats["Smear"]); - - //////Triggers and Vertices - goodParts[CUTS::eRVertex]->resize(bestVertices); - TriggerCuts(*(trigPlace[0]), *(trigName[0]), CUTS::eRTrig1); - TriggerCuts(*(trigPlace[1]), *(trigName[1]), CUTS::eRTrig2); - updateMet(); - - // // SET NUMBER OF RECO PARTICLES - // // MUST BE IN ORDER: Muon/Electron, Tau, Jet - getGoodRecoLeptons(*_Electron, CUTS::eRElec1, CUTS::eGElec, _Electron->pstats["Elec1"]); - getGoodRecoLeptons(*_Electron, CUTS::eRElec2, CUTS::eGElec, _Electron->pstats["Elec2"]); - getGoodRecoLeptons(*_Muon, CUTS::eRMuon1, CUTS::eGMuon, _Muon->pstats["Muon1"]); - getGoodRecoLeptons(*_Muon, CUTS::eRMuon2, CUTS::eGMuon, _Muon->pstats["Muon2"]); - getGoodRecoLeptons(*_Tau, CUTS::eRTau1, CUTS::eGTau, _Tau->pstats["Tau1"]); - getGoodRecoLeptons(*_Tau, CUTS::eRTau2, CUTS::eGTau, _Tau->pstats["Tau2"]); - - getGoodRecoJets(CUTS::eRJet1, _Jet->pstats["Jet1"]); - getGoodRecoJets(CUTS::eRJet2, _Jet->pstats["Jet2"]); - getGoodRecoJets(CUTS::eRCenJet, _Jet->pstats["CentralJet"]); - getGoodRecoJets(CUTS::eRBJet, _Jet->pstats["BJet"]); - getGoodRecoJets(CUTS::eR1stJet, _Jet->pstats["FirstLeadingJet"]); - getGoodRecoJets(CUTS::eR2ndJet, _Jet->pstats["SecondLeadingJet"]); - - treatMuons_Met(); - - ///VBF Susy cut on leadin jets - VBFTopologyCut(distats["VBFSUSY"]); - - /////lepton lepton topology cuts - getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec1,CUTS::eRTau1, CUTS::eElec1Tau1, distats["Electron1Tau1"]); - getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau1, CUTS::eElec2Tau1, distats["Electron2Tau1"]); - getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec1, CUTS::eRTau2, CUTS::eElec1Tau2, distats["Electron1Tau2"]); - getGoodLeptonCombos(*_Electron, *_Tau, CUTS::eRElec2, CUTS::eRTau2, CUTS::eElec2Tau2, distats["Electron2Tau2"]); - - getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau1, CUTS::eMuon1Tau1, distats["Muon1Tau1"]); - getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon1, CUTS::eRTau2, CUTS::eMuon1Tau2, distats["Muon1Tau2"]); - getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau1, CUTS::eMuon2Tau1, distats["Muon2Tau1"]); - getGoodLeptonCombos(*_Muon, *_Tau, CUTS::eRMuon2, CUTS::eRTau2, CUTS::eMuon2Tau2, distats["Muon2Tau2"]); - - getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec1, CUTS::eMuon1Elec1, distats["Muon1Electron1"]); - getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon1, CUTS::eRElec2, CUTS::eMuon1Elec2, distats["Muon1Electron2"]); - getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec1, CUTS::eMuon2Elec1, distats["Muon2Electron1"]); - getGoodLeptonCombos(*_Muon, *_Electron, CUTS::eRMuon2, CUTS::eRElec2, CUTS::eMuon2Elec2, distats["Muon2Electron2"]); - - ////DIlepton topology cuts - getGoodLeptonCombos(*_Tau, *_Tau, CUTS::eRTau1, CUTS::eRTau2, CUTS::eDiTau, distats["DiTau"]); - getGoodLeptonCombos(*_Electron, *_Electron, CUTS::eRElec1, CUTS::eRElec2, CUTS::eDiElec, distats["DiElectron"]); - getGoodLeptonCombos(*_Muon, *_Muon, CUTS::eRMuon1, CUTS::eRMuon2, CUTS::eDiMuon, distats["DiMuon"]); - - ////Dijet cuts - getGoodDiJets(distats["DiJet"]); - - if(event % 50000 == 0) { - cout << "Event #" << event << endl; - } -} - - -////Reads cuts from Cuts.in file and see if the event has enough particles -void Analyzer::fillCuts() { - const unordered_map >* cut_info = histo.get_cuts(); - const vector* cut_order = histo.get_cutorder(); - - bool prevTrue = true; - maxCut=0; - - - for(size_t i = 0; i < cut_order->size(); i++) { - // for(vector::const_iterator it=cut_order->begin(); it != cut_order->end(); it++, i++) { - - string cut = cut_order->at(i); - if(isData && cut.find("Gen") != string::npos) continue; - - int min= cut_info->at(cut).first; - int max= cut_info->at(cut).second; - int nparticles = goodParts[cut_num.at(cut)]->size(); - if( (nparticles >= min) && (nparticles <= max || max == -1)) { - if((cut_num.at(cut) == CUTS::eR1stJet || cut_num.at(cut) == CUTS::eR2ndJet) && goodParts[cut_num.at(cut)]->at(0) == -1 ) { - prevTrue = false; - continue; ////dirty dirty hack - } - cuts_per[i]++; - cuts_cumul[i] += (prevTrue) ? 1 : 0; - maxCut += (prevTrue) ? 1 : 0; - } else prevTrue = false; - } - - -} - -/////// maxcut made -1 if doesn't pass all of the cuts -void Analyzer::CRfillCuts() { - const unordered_map >* cut_info = histo.get_cuts(); - const vector* cut_order = histo.get_cutorder(); - - maxCut=0; - - for(size_t i = 0; i < cut_order->size(); i++) { - string cut = cut_order->at(i); - if(isData && cut.find("Gen") != string::npos) continue; - - int min= cut_info->at(cut).first; - int max= cut_info->at(cut).second; - int nparticles = goodParts[cut_num.at(cut)]->size(); - if( (nparticles < min) || (nparticles > max && max != -1)) { - maxCut = -1; - return; - } else if((cut_num.at(cut) == CUTS::eR1stJet || cut_num.at(cut) == CUTS::eR2ndJet) && goodParts[cut_num.at(cut)]->at(0) == -1 ) { - maxCut = -1; - return; - } - } - - int factor = crbins; - for(auto tester: testVec) { - factor /= 2; - /////get variable value from maper.first. - if(tester->test(this)) { ///pass cut - maxCut += factor; - } - } - if(isData && blinded && maxCut == SignalRegion) return; - cuts_per[maxCut]++; -} - - -///Prints the number of events that passed each cut per event and cumulatively -//done at the end of the analysis -void Analyzer::printCuts() { - vector cut_order; - if(crbins > 1) cut_order = *(histo.get_folders()); - else cut_order = *(histo.get_cutorder()); - - cout.setf(ios::floatfield,ios::fixed); - cout<::iterator it=_Jet->smearP.begin(); it!=_Jet->smearP.end(); it++, i++) { - if( (it->Pt() > distats["Run"].dmap.at("JetPtForMhtAndHt")) && (fabs(it->Eta()) < distats["Run"].dmap.at("JetEtaForMhtAndHt")) ) { - if(distats["Run"].bmap.at("ApplyJetLooseIDforMhtAndHt") && !passedLooseJetID(i) ) continue; - - sumpxForMht -= it->Px(); - sumpyForMht -= it->Py(); - sumptForHt += it->Pt(); - } - } - phiForMht = atan2(sumpyForMht,sumpxForMht); - theMETVector.SetPxPyPzE(theMETVector.Px()+deltaMEx, theMETVector.Py()+deltaMEy, theMETVector.Pz(), - TMath::Sqrt(pow(theMETVector.Px()+deltaMEx,2) + pow(theMETVector.Py()+deltaMEy,2))); - - /////MET CUTS - - if(!passCutRange("Met", theMETVector.Pt(), distats["Run"])) return; - if(distats["Run"].bmap.at("DiscrByHT") && sumptForHt < distats["Run"].dmap.at("HtCut")) return; - - goodParts[CUTS::eMET]->push_back(1); -} - -void Analyzer::treatMuons_Met() { - // Neutrino update before calculation - deltaMEx = 0; - deltaMEy = 0; - - if(distats["Run"].bmap.at("TreatMuonsAsNeutrinos")) { - for(auto it : *goodParts[CUTS::eRMuon1]) { - if(find(goodParts[CUTS::eRMuon2]->begin(), goodParts[CUTS::eRMuon2]->end(), it) != goodParts[CUTS::eRMuon2]->end() ) continue; - deltaMEx += _Muon->smearP.at(it).Px(); - deltaMEy += _Muon->smearP.at(it).Py(); - } - for(auto it : *goodParts[CUTS::eRMuon2]) { - deltaMEx += _Muon->smearP.at(it).Px(); - deltaMEy += _Muon->smearP.at(it).Py(); - } - } - if(distats["Run"].bmap.at("TreatMuonsAsTaus")) { - - if(goodParts[CUTS::eRMuon1]->size() == 1) { - - int muon = (int)goodParts[CUTS::eRMuon1]->at(0); - - - - - double rand1 = 1;//Tau_HFrac->GetRandom(); - double rand2 = 0;//Tau_Resol->GetRandom(); - - double ETau_Pt = _Muon->smearP.at(muon).Pt()*rand1*(rand2+1.0); - double ETau_Eta = _Muon->smearP.at(muon).Eta(); - double ETau_Phi=normPhi(_Muon->smearP.at(muon).Phi());//+DeltaNu_Phi->GetRandom()); - double ETau_Energy = 0.; - - - // double theta = 2.0*TMath::ATan2(1.0,TMath::Exp(_Muon->smearP.at(muon).Eta())); - // double sin_theta = TMath::Sin(theta); - // double P_tau = ETau_Pt/sin_theta; - - // //ETau_Energy = sqrt(pow(P_tau, 2) + pow(1.77699, 2)); - // ETau_Energy = sqrt( pow(1.77699, 2) + pow(ETau_Pt, 2) + pow(_Muon->smearP.at(muon).Pz(), 2)); - - /*if(ETau_Pt <= 15.0){ - while(ETau_Pt<=15.0){ - rand1 = Tau_HFrac->GetRandom(); - rand2 = Tau_Resol->GetRandom(); - ETau_Pt = _Muon->smearP.at(muon).Pt()*rand1*(rand2+1.0); - ENu_Pt = _Muon->smearP.at(muon).Pt()-ETau_Pt; - } - } - */ - - TLorentzVector Emu_Tau; - Emu_Tau.SetPtEtaPhiE(ETau_Pt, ETau_Eta, ETau_Phi, ETau_Energy); - _Muon->smearP.clear(); - - if (ETau_Pt >= _Muon->pstats["Muon1"].pmap.at("PtCut").first ){ - _Muon->smearP.push_back(Emu_Tau); - deltaMEx += (_Muon->smearP.at(muon).Px()-Emu_Tau.Px()); - deltaMEy += (_Muon->smearP.at(muon).Py()-Emu_Tau.Py()); - - } - } - } - - - // recalculate MET - theMETVector.SetPxPyPzE(theMETVector.Px()+deltaMEx, theMETVector.Py()+deltaMEy, theMETVector.Pz(), - TMath::Sqrt(pow(theMETVector.Px()+deltaMEx,2) + pow(theMETVector.Py()+deltaMEy,2))); - - /////MET CUTS - goodParts[CUTS::eMET]->clear(); - - if(passCutRange("Met", theMETVector.Pt(), distats["Run"])) { - goodParts[CUTS::eMET]->push_back(1); - } -} - - -/////sets up other values needed for analysis that aren't particle specific -void Analyzer::setupGeneral(TTree* BOOM, string infile) { - SetBranch("Trigger_decision", Trigger_decision); - SetBranch("Trigger_names", Trigger_names); - SetBranch("nTruePUInteractions", nTruePU); - SetBranch("bestVertices", bestVertices); - SetBranch("weightevt", gen_weight); - SetBranch("Met_type1PF_px", Met[0]); - SetBranch("Met_type1PF_py", Met[1]); - SetBranch("Met_type1PF_pz", Met[2]); - - read_info(FILESPACE + "ElectronTau_info.in"); - read_info(FILESPACE + "MuonTau_info.in"); - read_info(FILESPACE + "MuonElectron_info.in"); - read_info(FILESPACE + "DiParticle_info.in"); - read_info(FILESPACE + "VBFCuts_info.in"); - read_info(FILESPACE + "Run_info.in"); - - BOOM->GetEntry(0); - for(int i = 0; i < nTrigReq; i++) { - for(int j = 0; j < (int)trigName[i]->size(); j++) { - for(int k = 0; k < (int)Trigger_names->size(); k++) { - if(Trigger_names->at(k).find(trigName[i]->at(j)) != string::npos) { - trigPlace[i]->at(j) = k; - break; - } - } - } - } - BOOM->SetBranchStatus("Trigger_names", 0); - -} - - -///parsing method that gets info on diparts and basic run info -//put in map called "distats" -void Analyzer::read_info(string filename) { - typedef boost::tokenizer > tokenizer; - ifstream info_file(filename); - boost::char_separator sep(", \t"); - - if(!info_file) { - std::cout << "could not open file " << filename < stemp; - - for(tokenizer::iterator iter = tokens.begin();iter != tokens.end(); iter++) { - if( ((*iter)[0] == '/' && (*iter)[0] == '/') || ((*iter)[0] == '#') ) break; - stemp.push_back(*iter); - } - if(stemp.size() == 0) continue; - else if(stemp.size() == 1) { - group = stemp[0]; - continue; - } else if(group == "") { - cout << "error in " << filename << "; no groups specified for data" << endl; - exit(1); - } else if(stemp.size() == 2) { - if(stemp.at(0).find("Trigger") != string::npos) { - int ntrig = (stemp.at(0).find("1") != string::npos) ? 0 : 1; - trigName[ntrig]->push_back(stemp.at(1)); - trigPlace[ntrig]->push_back(0); - continue; - } - - char* p; - strtod(stemp[1].c_str(), &p); - if(stemp[1] == "1" || stemp[1] == "true") distats[group].bmap[stemp[0]]=true; - else if(stemp[1] == "0" || stemp[1] == "false") distats[group].bmap[stemp[0]]=false; - else if(*p) distats[group].smap[stemp[0]] = stemp[1]; - else distats[group].dmap[stemp[0]]=stod(stemp[1]); - - } else if(stemp.size() == 3) distats[group].pmap[stemp[0]] = make_pair(stod(stemp[1]), stod(stemp[2])); - } - info_file.close(); -} - - -// This code works pretty much (at least in my tests), but dagnabit, its ugly. They all can't be winners, at least now... -void Analyzer::setCutNeeds() { - - - - for(auto e: Enum()) { - need_cut[e] = false; - } - - for(auto it: *histo.get_groups()) { - if(fillInfo[it]->type == FILLER::None) continue; - need_cut[fillInfo[it]->ePos] = true; - if(adjList.find(fillInfo[it]->ePos) == adjList.end()) continue; - for(auto e: adjList.at(fillInfo[it]->ePos)) { - need_cut[e] = true; - } - } - - for(auto it: *histo.get_cutorder()) { - need_cut[cut_num.at(it)] = true; - if(adjList.find(cut_num.at(it)) == adjList.end()) continue; - for(auto e: adjList.at(cut_num.at(it))) { - need_cut[e] = true; - } - } - - for(auto it: testVec) { - CUTS ePos = it->info->ePos; - need_cut[ePos] = true; - if(adjList.find(ePos) == adjList.end()) continue; - for(auto e: adjList.at(ePos)) { - need_cut[e] = true; - } - } - - for(auto it: _Jet->extraCuts) { - need_cut[it] = true; - if(adjList.find(it) == adjList.end()) continue; - for(auto e: adjList.at(it)) { - need_cut[e] = true; - } - } - - for(auto it: jetCuts) { - if(need_cut[it]) { - for(auto it2: _Jet->overlapCuts(it)) { - need_cut[it2] = true; - if(adjList.find(it2) == adjList.end()) continue; - for(auto e: adjList.at(it2)) { - need_cut[e] = true; - } - } - } - } - - if( !(need_cut[CUTS::eRTau1] || need_cut[CUTS::eRTau2]) ) { - _Tau->unBranch(); - } else { - for(auto it: _Tau->extraCuts) { - need_cut[it] = true; - if(adjList.find(it) == adjList.end()) continue; - for(auto e: adjList.at(it)) { - need_cut[e] = true; - } - } - } - - if( !(need_cut[CUTS::eRElec1] || need_cut[CUTS::eRElec2]) ) { - _Electron->unBranch(); - } else { - for(auto it: _Electron->extraCuts) { - need_cut[it] = true; - if(adjList.find(it) == adjList.end()) continue; - for(auto e: adjList.at(it)) { - need_cut[e] = true; - } - } - } - - if( !(need_cut[CUTS::eRMuon1] || need_cut[CUTS::eRMuon2]) ) { - _Muon->unBranch(); - } else { - for(auto it: _Muon->extraCuts) { - need_cut[it] = true; - if(adjList.find(it) == adjList.end()) continue; - for(auto e: adjList.at(it)) { - need_cut[e] = true; - } - } - } - - if(isData) return; - - bool passGen = false; - for(auto e: genCuts) { - passGen = passGen || need_cut[e]; - - } - - if(!passGen) _Gen->unBranch(); - else { - if(need_cut[CUTS::eGTau]) genMaper[15] = new GenFill(2, CUTS::eGTau); - if(need_cut[CUTS::eGTop]) genMaper[6] = new GenFill(2, CUTS::eGTop); - if(need_cut[CUTS::eGElec]) genMaper[11] = new GenFill(1, CUTS::eGElec); - if(need_cut[CUTS::eGMuon]) genMaper[13] = new GenFill(1, CUTS::eGMuon); - if(need_cut[CUTS::eGZ]) genMaper[23] = new GenFill(2, CUTS::eGZ); - if(need_cut[CUTS::eGW]) genMaper[24] = new GenFill(2, CUTS::eGW); - if(need_cut[CUTS::eGHiggs]) genMaper[25] = new GenFill(2, CUTS::eGHiggs); - // , CUTS::eNuTau - } -} - - -///Smears lepton only if specified and not a data file. Otherwise, just filles up lorentz vectors -//of the data into the vector container smearP with is in each lepton object. -void Analyzer::smearLepton(Lepton& lepton, CUTS eGenPos, const PartStats& stats) { - lepton.smearP.clear(); - - for(int i = 0; i < (int)lepton.pt->size(); i++) { - TLorentzVector tmpSmear; - tmpSmear.SetPtEtaPhiE(lepton.pt->at(i), lepton.eta->at(i), lepton.phi->at(i), lepton.energy->at(i)); - - if(isData || !stats.bmap.at("SmearTheParticle")) { - lepton.smearP.push_back(tmpSmear); - continue; - } - - TLorentzVector genVec = matchLeptonToGen(tmpSmear, lepton.pstats["Smear"],eGenPos); - if(genVec == TLorentzVector(0,0,0,0)) { - lepton.smearP.push_back(tmpSmear); - continue; - } - - double smearedPt = (genVec.Pt()*stats.dmap.at("PtScaleOffset")) + (tmpSmear.Pt() - genVec.Pt())*stats.dmap.at("PtSigmaOffset"); - double smearedEta =(genVec.Eta()*stats.dmap.at("EtaScaleOffset")) + (tmpSmear.Eta() - genVec.Eta())*stats.dmap.at("EtaSigmaOffset"); - double smearedPhi = (genVec.Phi() * stats.dmap.at("PhiScaleOffset")) + (tmpSmear.Phi() - genVec.Phi())*stats.dmap.at("PhiSigmaOffset"); - double smearedEnergy = (genVec.Energy()*stats.dmap.at("EnergyScaleOffset")) + (tmpSmear.Energy() - genVec.Energy())*stats.dmap.at("EnergySigmaOffset"); - - TLorentzVector final; - final.SetPtEtaPhiE(smearedPt, smearedEta, smearedPhi, smearedEnergy); - lepton.smearP.push_back(final); - deltaMEx += tmpSmear.Px() - final.Px(); - deltaMEy += tmpSmear.Py() - final.Py(); - - } - -} - -///Same as smearlepton, just jet specific -void Analyzer::smearJet(const PartStats& stats) { - _Jet->smearP.clear(); - - TLorentzVector jetV; - - for(size_t i=0; i< _Jet->pt->size(); i++) { - jetV.SetPtEtaPhiE(_Jet->pt->at(i), _Jet->eta->at(i), _Jet->phi->at(i), _Jet->energy->at(i)); - - if(isData || !stats.bmap.at("SmearTheJet")) { - _Jet->smearP.push_back(jetV); - continue; - } - - if(JetMatchesLepton(*_Muon, jetV, stats.dmap.at("MuonMatchingDeltaR"), CUTS::eGMuon) || - JetMatchesLepton(*_Tau, jetV, stats.dmap.at("TauMatchingDeltaR"), CUTS::eGTau) || - JetMatchesLepton(*_Electron, jetV,stats.dmap.at("ElectronMatchingDeltaR"), CUTS::eGElec)){ - - _Jet->smearP.push_back(jetV); - - continue; - } - - _Jet->smearP.push_back(stats.dmap.at("JetEnergyScaleOffset") * jetV); - deltaMEx += (1 - stats.dmap.at("JetEnergyScaleOffset"))*jetV.Px(); - deltaMEy += (1 -stats.dmap.at("JetEnergyScaleOffset"))*jetV.Py(); - } -} - -/////checks if jet is close to a lepton and the lepton is a gen particle, then the jet is a lepton object, so -//this jet isn't smeared -bool Analyzer::JetMatchesLepton(const Lepton& lepton, const TLorentzVector& jetV, double partDeltaR, CUTS eGenPos) { - TLorentzVector tempV; - for(size_t j = 0; j < lepton.pt->size(); j++) { - tempV.SetPtEtaPhiE(lepton.pt->at(j), lepton.eta->at(j), lepton.phi->at(j), lepton.energy->at(j)); - if(jetV.DeltaR(tempV) < partDeltaR && matchLeptonToGen(tempV, lepton.pstats.at("Smear"), eGenPos) != TLorentzVector(0,0,0,0)) return true; - } - return false; -} - - -////checks if reco object matchs a gen object. If so, then reco object is for sure a correctly identified particle -TLorentzVector Analyzer::matchLeptonToGen(const TLorentzVector& lvec, const PartStats& stats, CUTS ePos) { - if(ePos == CUTS::eGTau) { - return matchTauToGen(lvec, stats.dmap.at("GenMatchingDeltaR")); - } - TLorentzVector genVec = TLorentzVector(0,0,0,0); - - for(vec_iter it=goodParts[ePos]->begin(); it !=goodParts[ePos]->end();it++) { - genVec.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - if(lvec.DeltaR(genVec) <= stats.dmap.at("GenMatchingDeltaR")) { - if(stats.bmap.at("UseMotherID") && abs(_Gen->motherpdg_id->at(*it)) != stats.dmap.at("MotherID")) continue; - return genVec; - } - } - - return TLorentzVector(0,0,0,0); -} - - -///Tau specific matching fucntion. Works by seeing if a tau doesn't decay into a muon/electron and has -//a matching tau neutrino showing that the tau decayed and decayed hadronically -TLorentzVector Analyzer::matchTauToGen(const TLorentzVector& lvec, double lDeltaR) { - TLorentzVector genVec(0,0,0,0); - int i = 0; - for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it !=goodParts[CUTS::eGTau]->end();it++, i++) { - int nu = goodParts[CUTS::eNuTau]->at(i); - if(nu == -1) continue; - - TLorentzVector tmp1, tmp2; - tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); - genVec = tmp1 - tmp2; - if(lvec.DeltaR(genVec) <= lDeltaR) { - return genVec; - } - } - return TLorentzVector(0,0,0,0); - -} - - -////Calculates the number of gen particles. Based on id number and status of each particle -void Analyzer::getGoodGen(const PartStats& stats) { - - for(size_t j = 0; j < _Gen->pt->size(); j++) { - int id = abs(_Gen->pdg_id->at(j)); - if(genMaper[id] != nullptr && _Gen->pdg_id->at(j) == genMaper[id]->status) { - if(id == 15 && (_Gen->pt->at(j) < stats.pmap.at("TauPtCut").first || _Gen->pt->at(j) > stats.pmap.at("TauPtCut").second || abs(_Gen->eta->at(j)) > stats.dmap.at("TauEtaCut"))) continue; - goodParts[genMaper[id]->ePos]->push_back(j); - } - } - - - // if((abs(_Gen->pdg_id->at(j)) == particle_id) && (_Gen->status->at(j) == particle_status)) { - // goodParts[ePos]->push_back(j); - // } - //} - -} - -////Tau neutrino specific function used for calculating the number of hadronic taus -void Analyzer::getGoodTauNu() { - - for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it !=goodParts[CUTS::eGTau]->end();it++) { - bool leptonDecay = false; - int nu = -1; - for(size_t j = 0; j < _Gen->pt->size(); j++) { - if(abs(_Gen->BmotherIndex->at(j)) == (*it)) { - if( (abs(_Gen->pdg_id->at(j)) == 16) && (abs(_Gen->motherpdg_id->at(j)) == 15) && (_Gen->status->at(_Gen->BmotherIndex->at(j)) == 2) ) nu = j; - else if( (abs(_Gen->pdg_id->at(j)) == 12) || (abs(_Gen->pdg_id->at(j)) == 14) ) leptonDecay = true; - } - } - nu = (leptonDecay) ? -1 : nu; - goodParts[CUTS::eNuTau]->push_back(nu); - } - -} - -///Function used to find the number of reco leptons that pass the various cuts. -///Divided into if blocks for the different lepton requirements. -void Analyzer::getGoodRecoLeptons(const Lepton& lep, const CUTS ePos, const CUTS eGenPos, const PartStats& stats) { - if(! need_cut[ePos]) return; - int i = 0; - - for(vector::const_iterator it=lep.smearP.begin(); it != lep.smearP.end(); it++, i++) { - TLorentzVector lvec = (*it); - - if (fabs(lvec.Eta()) > stats.dmap.at("EtaCut")) continue; - if (lvec.Pt() < stats.pmap.at("PtCut").first || lvec.Pt() > stats.pmap.at("PtCut").second) continue; - - if((lep.pstats.at("Smear").bmap.at("MatchToGen")) && (!isData)) { /////check - if(matchLeptonToGen(lvec, lep.pstats.at("Smear") ,eGenPos) == TLorentzVector(0,0,0,0)) continue; - } - - if (stats.bmap.at("DoDiscrByIsolation")) { - double firstIso = (stats.pmap.find("IsoSumPtCutValue") != stats.pmap.end()) ? stats.pmap.at("IsoSumPtCutValue").first : ival(ePos) - ival(CUTS::eRTau1) + 1; - double secondIso = (stats.pmap.find("IsoSumPtCutValue") != stats.pmap.end()) ? stats.pmap.at("IsoSumPtCutValue").second : 0; - if(!lep.get_Iso(i, firstIso, secondIso)) continue; - } - - if ((lep.type != PType::Tau) && stats.bmap.at("DiscrIfIsZdecay")) { - if(isZdecay(lvec, lep)) continue; - } - if(!passCutRange("MetDphi", absnormPhi(lvec.Phi() - theMETVector.Phi()), stats)) continue; - if(!passCutRange("MetMt", calculateLeptonMetMt(lvec), stats)) continue; - - - if(lep.type == PType::Muon) { ////////////////MUON CUTS///////////// - if(stats.bmap.at("DoDiscrByTightID") && (_Muon->tight->at(i) == 0)) continue; - if(stats.bmap.at("DoDiscrBySoftID") && (_Muon->soft->at(i) == 0)) continue; - - } else if(lep.type == PType::Electron) { ///////////////ELECTRON CUT/////////// - - //----Require electron to pass ID discriminators - if(stats.bmap.at("DoDiscrByVetoID") && (_Electron->isPassVeto->at(i) == 0)) continue; - if(stats.bmap.at("DoDiscrByLooseID") && (_Electron->isPassLoose->at(i) == 0)) continue; - if(stats.bmap.at("DoDiscrByMediumID") && (_Electron->isPassMedium->at(i) == 0)) continue; - if(stats.bmap.at("DoDiscrByTightID") && (_Electron->isPassTight->at(i) == 0)) continue; - if(stats.bmap.at("DoDiscrByHEEPID") && (_Electron->isPassHEEPId->at(i) == 0)) continue; - - - } else if(lep.type == PType::Tau) { /////////////TAU CUT///////////////// - if (stats.bmap.at("DoDiscrByLeadTrack")) { - if(_Tau->leadChargedCandPt->at(i) < stats.dmap.at("LeadTrackThreshold")) continue; - } - - // ----Require 1 or 3 prongs - if(stats.smap.at("DiscrByProngType").find("hps") != string::npos && _Tau->decayModeFindingNewDMs->at(i) == 0) continue; - if(!passProng(stats.smap.at("DiscrByProngType"), _Tau->nProngs->at(i))) continue; - - // ----Electron and Muon vetos - vector* against = (ePos == CUTS::eRTau1) ? _Tau->againstElectron.first : _Tau->againstElectron.second; - if (stats.bmap.at("DoDiscrAgainstElectron") && against->at(i) == 0) continue; - else if (stats.bmap.at("SelectTausThatAreElectrons") && against->at(i) > 0) continue; - - against = (ePos == CUTS::eRTau1) ? _Tau->againstMuon.first : _Tau->againstMuon.second; - if (stats.bmap.at("DoDiscrAgainstMuon") && against->at(i) == 0) continue; - else if (stats.bmap.at("SelectTausThatAreMuons") && against->at(i) > 0) continue; - - if (stats.bmap.at("DoDiscrByCrackCut") && isInTheCracks(lvec.Eta())) continue; - - // ----anti-overlap requirements - if (stats.bmap.at("RemoveOverlapWithMuon1s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon1, stats.dmap.at("Muon1MatchingDeltaR"))) continue; - if (stats.bmap.at("RemoveOverlapWithMuon2s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon2, stats.dmap.at("Muon2MatchingDeltaR"))) continue; - if (stats.bmap.at("RemoveOverlapWithElectron1s") && isOverlaping(lvec, *_Electron, CUTS::eRElec1, stats.dmap.at("Electron1MatchingDeltaR"))) continue; - if (stats.bmap.at("RemoveOverlapWithElectron2s") && isOverlaping(lvec, *_Electron, CUTS::eRElec2, stats.dmap.at("Electron2MatchingDeltaR"))) continue; - } - goodParts[ePos]->push_back(i); - } - -} - -////Jet specific function for finding the number of jets that pass the cuts. -//used to find the nubmer of good jet1, jet2, central jet, 1st and 2nd leading jets and bjet. -void Analyzer::getGoodRecoJets(CUTS ePos, const PartStats& stats) { - if(! need_cut[ePos]) return; - int i=0; - - - for(vector::iterator it=_Jet->smearP.begin(); it != _Jet->smearP.end(); it++, i++) { - TLorentzVector lvec = (*it); - ///if else loop for central jet requirements - - if( ePos == CUTS::eRCenJet) { - if(fabs(lvec.Eta()) > 2.5) continue; - } else if (fabs(lvec.Eta()) < stats.pmap.at("EtaCut").first || fabs(lvec.Eta()) > stats.pmap.at("EtaCut").second) continue; - - if (lvec.Pt() < stats.dmap.at("PtCut")) continue; - - /// BJet specific - if(ePos == CUTS::eRBJet) { - if(stats.bmap.at("ApplyJetBTagging") && _Jet->bDiscriminator->at(i) <= stats.dmap.at("JetBTaggingCut")) continue; - if((stats.bmap.at("MatchBToGen")) && !isData && abs(_Jet->partonFlavour->at(i)) != 5) continue; - } else if (stats.bmap.at("ApplyLooseID") && !passedLooseJetID(i)) continue; - - // ----anti-overlap requirements - if(stats.bmap.at("RemoveOverlapWithMuon1s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon1, stats.dmap.at("Muon1MatchingDeltaR"))) continue; - if(stats.bmap.at("RemoveOverlapWithMuon2s") && isOverlaping(lvec, *_Muon, CUTS::eRMuon2, stats.dmap.at("Muon2MatchingDeltaR"))) continue; - if(stats.bmap.at("RemoveOverlapWithElectron1s") && isOverlaping(lvec, *_Electron, CUTS::eRElec1, stats.dmap.at("Electron1MatchingDeltaR"))) continue; - if(stats.bmap.at("RemoveOverlapWithElectron2s") && isOverlaping(lvec, *_Electron, CUTS::eRElec2, stats.dmap.at("Electron2MatchingDeltaR"))) continue; - if(stats.bmap.at("RemoveOverlapWithTau1s") && isOverlaping(lvec, *_Tau, CUTS::eRTau1, stats.dmap.at("Tau1MatchingDeltaR"))) continue; - if(stats.bmap.at("RemoveOverlapWithTau2s") && isOverlaping(lvec, *_Tau, CUTS::eRTau2, stats.dmap.at("Tau2MatchingDeltaR"))) continue; - - /////fill up array - goodParts[ePos]->push_back(i); - } - - if(ePos == CUTS::eR1stJet || ePos == CUTS::eR2ndJet) { - int potential = -1; - double prevPt = -1; - for(vec_iter leadit = goodParts[ePos]->begin(); leadit != goodParts[ePos]->end(); ++leadit) { - if(((ePos == CUTS::eR2ndJet && (*leadit) != leadIndex) || ePos == CUTS::eR1stJet) && _Jet->smearP.at(*leadit).Pt() > prevPt) { - potential = (*leadit); - prevPt = _Jet->smearP.at(*leadit).Pt(); - } - } - goodParts[ePos]->clear(); - goodParts[ePos]->push_back(potential); - if(ePos == CUTS::eR1stJet) leadIndex = goodParts[CUTS::eR1stJet]->at(0); - } - -} - -///function to see if a lepton is overlapping with another particle. Used to tell if jet or tau -//came ro decayed into those leptons -bool Analyzer::isOverlaping(const TLorentzVector& lvec, Lepton& overlapper, CUTS ePos, double MatchingDeltaR) { - for(vec_iter it=goodParts[ePos]->begin(); it != goodParts[ePos]->end(); it++) { - if(lvec.DeltaR(overlapper.smearP.at(*it)) < MatchingDeltaR) return true; - } - return false; -} - -///Tests if tau decays into the specified number of jet prongs. -bool Analyzer::passProng(string prong, int value) { - return ( (prong.find("1") != string::npos && value == 1) || - (prong.find("2") != string::npos && value == 2) || - (prong.find("3") != string::npos && value == 3) ); -} - - -////Tests if tau is within the cracks of the detector (the specified eta ranges) -bool Analyzer::isInTheCracks(float etaValue){ - return (fabs(etaValue) < 0.018 || - (fabs(etaValue)>0.423 && fabs(etaValue)<0.461) || - (fabs(etaValue)>0.770 && fabs(etaValue)<0.806) || - (fabs(etaValue)>1.127 && fabs(etaValue)<1.163) || - (fabs(etaValue)>1.460 && fabs(etaValue)<1.558)); -} - - -//Tests if a jet meets a litany of different tests -bool Analyzer::passedLooseJetID(int nobj) { - if (_Jet->neutralHadEnergyFraction->at(nobj) >= 0.99) return false; - if (_Jet->neutralEmEmEnergyFraction->at(nobj) >= 0.99) return false; - if (_Jet->numberOfConstituents->at(nobj) <= 1) return false; - if (_Jet->muonEnergyFraction->at(nobj) >= 0.80) return false; - if ( (fabs(_Jet->smearP.at(nobj).Eta()) < 2.4) && - ((_Jet->chargedHadronEnergyFraction->at(nobj) <= 0.0) || - (_Jet->chargedMultiplicity->at(nobj) <= 0.0) || - (_Jet->chargedEmEnergyFraction->at(nobj) >= 0.99) )) return false; - return true; -} - - -///sees if the event passed one of the two cuts provided -void Analyzer::TriggerCuts(vector& prevTrig, const vector& trigvec, CUTS ePos) { - if(! need_cut[ePos]) return; - for(int i = 0; i < (int)trigvec.size(); i++) { - if(Trigger_decision->at(prevTrig.at(i)) == 1) { - goodParts[ePos]->push_back(0); - return; - } - } -} - - -////VBF specific cuts dealing with the leading jets. -void Analyzer::VBFTopologyCut(const PartStats& stats) { - if(! need_cut[CUTS::eSusyCom]) return; - - if(goodParts[CUTS::eR1stJet]->at(0) == -1 || goodParts[CUTS::eR2ndJet]->at(0) == -1) return; - - TLorentzVector ljet1 = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)); - TLorentzVector ljet2 = _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); - - if(!passCutRange("Mass", (ljet1 + ljet2).M(), stats)) return; - if(!passCutRange("Pt", (ljet1 + ljet2).Pt(), stats)) return; - if(!passCutRange("DeltaEta", abs(ljet1.Eta() - ljet2.Eta()), stats)) return; - if(!passCutRange("DeltaEta", absnormPhi(ljet1.Phi() - ljet2.Phi()), stats)) return; - - if(stats.bmap.at("DiscrByOSEta")) { - if((ljet1.Eta() * ljet2.Eta()) >= 0) return; - } - - double dphi1 = normPhi(ljet1.Phi() - theMETVector.Phi()); - double dphi2 = normPhi(ljet2.Phi() - theMETVector.Phi()); - double r1, r2, alpha; - - if(stats.bmap.at("DiscrByR1")) { - r1 = sqrt( pow(dphi1,2.0) + pow((TMath::Pi() - dphi2),2.0) ); - if(r1 < stats.pmap.at("R1Cut").first || r1 > stats.pmap.at("R1Cut").second) return; - - } - if(stats.bmap.at("DiscrByR2")) { - r2 = sqrt( pow(dphi2,2.0) + pow((TMath::Pi() - dphi1),2.0) ); - if(r2 < stats.pmap.at("R2Cut").first || r2 > stats.pmap.at("R2Cut").second) return; - } - if(stats.bmap.at("DiscrByAlpha")) { - TLorentzVector addVec = ljet1 + ljet2; - alpha = (addVec.M() > 0) ? ljet2.Pt() / addVec.M() : -1; - if(alpha < stats.pmap.at("AlphaCut").first || alpha > stats.pmap.at("AlphaCut").second) return; - } - if( !passCutRange("Dphi1", abs(dphi1), stats)) return; - if( !passCutRange("Dphi2", abs(dphi2), stats)) return; - - goodParts[CUTS::eSusyCom]->push_back(0); -} - -inline bool Analyzer::passCutRange(string CutName, double value, const PartStats& stats) { - return ( !(stats.bmap.at("DiscrBy" + CutName)) || (value > stats.pmap.at(CutName + "Cut").first && value < stats.pmap.at(CutName + "Cut").second) ); - -} - - -//-----Calculate lepton+met transverse mass -double Analyzer::calculateLeptonMetMt(const TLorentzVector& Tobj) { - double px = Tobj.Px() + theMETVector.Px(); - double py = Tobj.Py() + theMETVector.Py(); - double et = Tobj.Et() + theMETVector.Energy(); //TMath::Sqrt((theMETVector.Px() * theMETVector.Px()) + (theMETVector.Py() * theMETVector.Py())); - double mt2 = et*et - (px*px + py*py); - return (mt2 >= 0) ? sqrt(mt2) : -1; -} - - -/////Calculate the diparticle mass based on how to calculate it -///can use Collinear Approximation, which can fail (number failed available in a histogram) -///can use VectorSumOfVisProductAndMet which is sum of particles and met -///Other which is adding without met -double Analyzer::diParticleMass(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2, string howCalc) { - bool ratioNotInRange = false; - TLorentzVector The_LorentzVect; - - - //////check this equation///// - if(howCalc == "CollinearApprox") { - double denominator = (Tobj1.Px() * Tobj2.Py()) - (Tobj2.Px() * Tobj1.Py()); - double x1 = (Tobj2.Py()*theMETVector.Px() - Tobj2.Px()*theMETVector.Py())/denominator; - double x2 = (Tobj1.Px()*theMETVector.Py() - Tobj1.Py()*theMETVector.Px())/denominator; - ratioNotInRange=!((x1 < 0.) && (x2 < 0.)); - if (!ratioNotInRange) { - The_LorentzVect.SetPxPyPzE( (Tobj1.Px()*(1 + x1) + Tobj2.Px()*(1+x2)), (Tobj1.Py()*(1+x1) + Tobj2.Py()*(1+x2)), (Tobj1.Pz()*(1+x1) + Tobj2.Pz()*(1+x2)), (Tobj1.Energy()*(1+x1) + Tobj2.Energy()*(1+x2)) ); - return The_LorentzVect.M(); - } - } - - if(howCalc == "VectorSumOfVisProductsAndMet" || ratioNotInRange) { - return (Tobj1 + Tobj2 + theMETVector).M(); - } - - return (Tobj1 + Tobj2).M(); -} - -////Tests if the CollinearApproximation works for finding the mass of teh particles -bool Analyzer::passDiParticleApprox(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2, string howCalc) { - if(howCalc == "CollinearApprox") { - double x1_numerator = (Tobj1.Px() * Tobj2.Py()) - (Tobj2.Px() * Tobj1.Py()); - double x1_denominator = (Tobj2.Py() * (Tobj1.Px() + theMETVector.Px())) - (Tobj2.Px() * (Tobj1.Py() + theMETVector.Py())); - double x1 = ( x1_denominator != 0. ) ? x1_numerator/x1_denominator : -1.; - double x2_numerator = x1_numerator; - double x2_denominator = (Tobj1.Px() * (Tobj2.Py() + theMETVector.Py())) - (Tobj1.Py() * (Tobj2.Px() + theMETVector.Px())); - double x2 = ( x2_denominator != 0. ) ? x2_numerator/x2_denominator : -1.; - return (x1 > 0. && x1 < 1.) && (x2 > 0. && x2 < 1.); - } else { - return true; - } -} - - - - -/////abs for values -///Find the number of lepton combos that pass the dilepton cuts -void Analyzer::getGoodLeptonCombos(Lepton& lep1, Lepton& lep2, CUTS ePos1, CUTS ePos2, CUTS ePosFin, const PartStats& stats) { - if(! need_cut[ePosFin]) return; - bool sameParticle = (&lep1 == &lep2); - TLorentzVector part1, part2; - - for(vec_iter i1=goodParts[ePos1]->begin(); i1 != goodParts[ePos1]->end(); i1++) { - for(vec_iter i2=goodParts[ePos2]->begin(); i2 != goodParts[ePos2]->end(); i2++) { - if(sameParticle && (*i2) <= (*i1)) continue; - part1 = lep1.smearP.at(*i1); - part2 = lep2.smearP.at(*i2); - - if(stats.bmap.at("DiscrByDeltaR") && (part1.DeltaR(part2)) < stats.dmap.at("DeltaRCut")) continue; - if(stats.smap.at("DiscrByOSLSType") == "LS" && (lep1.charge->at(*i1) * lep2.charge->at(*i2) <= 0)) continue; - else if(stats.smap.at("DiscrByOSLSType") == "OS" && (lep1.charge->at(*i1) * lep2.charge->at(*i2) >= 0)) continue; - - if( !passCutRange("CosDphi", cos(absnormPhi( part1.Phi() - part2.Phi())), stats)) continue; - - // ----Mass window requirement - - if (stats.bmap.at("DiscrByMassReco")) { - double diMass = diParticleMass(part1,part2, stats.smap.at("HowCalculateMassReco")); - if( diMass < stats.pmap.at("MassCut").first || diMass > stats.pmap.at("MassCut").second) continue; - } - - if (stats.bmap.at("DiscrByCDFzeta2D")) { - double CDFzeta = stats.dmap.at("PZetaCutCoefficient") * getPZeta(part1, part2).first - + stats.dmap.at("PZetaVisCutCoefficient") * getPZeta(part1, part2).second; - if( CDFzeta < stats.pmap.at("CDFzeta2DCutValue").first || CDFzeta > stats.pmap.at("CDFzeta2DCutValue").second ) continue; - } - - /// optional cut - // if(stats.bmap.find("DeltaPtAndMet") != stats.bmap.end() && stats.bmap.at("DiscrByCosDphi_DeltaPtAndMet")) { - // double DPhi = absnormPhi(atan2(part1.Py() + part2.Py(), part1.Px() + part2.Px()) - theMETVector.Phi()); - // if( cos(DPhi) < stats.pmap.at("CosDphi_DeltaPtMetCut").first || cos(DPhi) > stats.pmap.at("CosDphi_DeltaPtMetCut").second) continue; - // } - - //////////abs on the difference???? - /////////////////// - - if (stats.bmap.at("DiscrByDeltaPtDivSumPt")) { - double ptDiv = (lep1.smearP.at(*i1).Pt() - lep2.smearP.at(*i2).Pt()) / (lep1.smearP.at(*i1).Pt() + lep2.smearP.at(*i2).Pt()); - if( ptDiv < stats.pmap.at("DeltaPtDivSumPtCutValue").first || ptDiv > stats.pmap.at("DeltaPtDivSumPtCutValue").second) continue; - } - - if (stats.bmap.at("DiscrByDeltaPt")) { - double deltaPt = lep1.smearP.at(*i1).Pt() - lep2.smearP.at(*i2).Pt(); - if(deltaPt < stats.pmap.at("DeltaPtCutValue").first || deltaPt > stats.pmap.at("DeltaPtCutValue").second) continue; - } - - ///Particlesp that lead to good combo are nGen * part1 + part2 - /// final / nGen = part1 (make sure is integer) - /// final % nGen = part2 - goodParts[ePosFin]->push_back((*i1)*BIG_NUM + (*i2)); - } - } -} - - -//////////////LOOK INTO DIJET PICKING -///////HOW TO GET RID OF REDUNCENCIES?? - -/////Same as gooddilepton, just jet specific -void Analyzer::getGoodDiJets(const PartStats& stats) { - if(! need_cut[CUTS::eDiJet]) return; - TLorentzVector jet1, jet2; - // ----Separation cut between jets (remove overlaps) - for(vec_iter ij2=goodParts[CUTS::eRJet2]->begin(); ij2 != goodParts[CUTS::eRJet2]->end(); ij2++) { - jet2 = _Jet->smearP.at(*ij2); - for(vec_iter ij1=goodParts[CUTS::eRJet1]->begin(); ij1 != goodParts[CUTS::eRJet1]->end() && (*ij1) < (*ij2); ij1++) { - jet1 = _Jet->smearP.at(*ij1); - - if (stats.bmap.at("DiscrByDeltaR")) { - if(jet1.DeltaR(jet2) < stats.dmap.at("DeltaRCut")) continue; - } - - if( !passCutRange("DeltaEta", abs(jet1.Eta() - jet2.Eta()), stats) ) continue; - if( !passCutRange("DeltaPhi", abs(jet1.Phi() - jet2.Phi()), stats) ) continue; - - if (stats.bmap.at("DiscrByOSEta")) { - if((jet1.Eta() * jet2.Eta()) >= 0) continue; - } - // ----Require both legs to be almost back-to-back in phi - if( !passCutRange("CosDphi", cos(absnormPhi(jet1.Phi() - jet2.Phi())), stats) ) continue; - - // ----Mass window requirement - if (stats.bmap.at("DiscrByMassReco")) { - if( ((jet1 + jet2).M() < stats.pmap.at("MassCut").first) || ((jet1 + jet2).M() > stats.pmap.at("MassCut").second) ) continue; - } - ///Particlesp that lead to good combo are totjet * part1 + part2 - /// final / totjet = part1 (make sure is integer) - /// final % totjet = part2 - goodParts[CUTS::eDiJet]->push_back((*ij1)*_Jet->smearP.size() + (*ij2)); - } - } -} - - -///////Only tested for if is Zdecay, can include massptasymmpair later? -/////Tests to see if a light lepton came form a zdecay -bool Analyzer::isZdecay(const TLorentzVector& theObject, const Lepton& lep) { - bool eventIsZdecay = false; - const float zMass = 90.1876; - const float zWidth = 2.4952; - float zmmPtAsymmetry = -10.; - - // if mass is within 3 sigmas of z or pt asymmetry is small set to true. - for(vector::const_iterator lepit= lep.smearP.begin(); lepit != lep.smearP.end(); lepit++) { - if(theObject.DeltaR(*lepit) < 0.3) continue; - if(theObject == (*lepit)) continue; - - TLorentzVector The_LorentzVect = theObject + (*lepit); - zmmPtAsymmetry = (theObject.Pt() - lepit->Pt()) / (theObject.Pt() + lepit->Pt()); - - if( (abs(The_LorentzVect.M() - zMass) < 3.*zWidth) || (fabs(zmmPtAsymmetry) < 0.20) ) { - eventIsZdecay = true; - break; - } - } - - return eventIsZdecay; -} - - -///Calculates the Pzeta value -pair Analyzer::getPZeta(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2) { - double zetaX = cos(Tobj1.Phi()) + cos(Tobj2.Phi()); - double zetaY = sin(Tobj1.Phi()) + sin(Tobj2.Phi()); - double zetaR = TMath::Sqrt(zetaX*zetaX + zetaY*zetaY); - if ( zetaR > 0. ) { zetaX /= zetaR; zetaY /= zetaR; } - double visPx = Tobj1.Px() + Tobj2.Px(); - double visPy = Tobj1.Py() + Tobj2.Py(); - double px = visPx + theMETVector.Px(); - double py = visPy + theMETVector.Py(); - return make_pair(px*zetaX + py*zetaY, visPx*zetaX + visPy*zetaY); -} - - -///Normalizes phi to be between -PI and PI - -///Takes the absolute value of of normPhi (made because constant use) - - - -////Grabs a list of the groups of histograms to be filled and asked Fill_folder to fill up the histograms -void Analyzer::fill_histogram() { - if(distats["Run"].bmap["ApplyGenWeight"] && gen_weight == 0.0) return; - - if(crbins != 1) CRfillCuts(); - else fillCuts(); - if(isData && blinded && maxCut == SignalRegion) return; - const vector* groups = histo.get_groups(); - wgt = pu_weight; - wgtisr = isr_weight; - if(distats["Run"].bmap["ApplyGenWeight"]) wgt *= (gen_weight > 0) ? 1.0 : -1.0; - if(distats["Run"].bmap["ApplyISRWeight"]) wgt *= wgtisr ? 1.0 : -1.0; - for(auto it: *groups) { - fill_Folder(it, maxCut); - } -} - -///Function that fills up the histograms -void Analyzer::fill_Folder(string group, const int max) { - if(group == "FillRun") { - if(crbins != 1) { - for(int i = 0; i < crbins; i++) { - histo.addVal(false, group, i, "Events", 1); - } - } - else histo.addVal(false, group,histo.get_maxfolder(), "Events", 1); - histAddVal(true, "Events"); - histAddVal(bestVertices, "NVertices"); - } else if(!isData && group == "FillGen") { - - int nhadtau = 0; - TLorentzVector genVec; - int i = 0; - for(vec_iter it=goodParts[CUTS::eGTau]->begin(); it!=goodParts[CUTS::eGTau]->end(); it++, i++) { - - int nu = goodParts[CUTS::eNuTau]->at(i); - if(nu != -1) { - TLorentzVector tmp1, tmp2; - tmp1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - tmp2.SetPtEtaPhiE(_Gen->pt->at(nu), _Gen->eta->at(nu), _Gen->phi->at(nu), _Gen->energy->at(nu)); - genVec = tmp1 - tmp2; - histAddVal(genVec.Pt(), "HadTauPt"); - histAddVal(genVec.Eta(), "HadTauEta"); - nhadtau++; - - } - histAddVal(_Gen->energy->at(*it), "TauEnergy"); - histAddVal(_Gen->pt->at(*it), "TauPt"); - histAddVal(_Gen->eta->at(*it), "TauEta"); - histAddVal(_Gen->phi->at(*it), "TauPhi"); - for(vec_iter it2=it+1; it2!=goodParts[CUTS::eGTau]->end(); it2++) { - TLorentzVector genObjt1; - genObjt1.SetPtEtaPhiE(_Gen->pt->at(*it), _Gen->eta->at(*it), _Gen->phi->at(*it), _Gen->energy->at(*it)); - TLorentzVector genObjt2; - genObjt2.SetPtEtaPhiE(_Gen->pt->at(*it2), _Gen->eta->at(*it2), _Gen->phi->at(*it2), _Gen->energy->at(*it2)); - histAddVal(diParticleMass(genObjt1,genObjt2, "none"), "DiTauMass"); - } - } - histAddVal(goodParts[CUTS::eGTau]->size(), "NTau"); - histAddVal(nhadtau, "NHadTau"); - - for(vec_iter it=goodParts[CUTS::eGMuon]->begin(); it!=goodParts[CUTS::eGMuon]->end(); it++) { - histAddVal(_Gen->energy->at(*it), "MuonEnergy"); - histAddVal(_Gen->pt->at(*it), "MuonPt"); - histAddVal(_Gen->eta->at(*it), "MuonEta"); - histAddVal(_Gen->phi->at(*it), "MuonPhi"); - } - histAddVal(goodParts[CUTS::eGMuon]->size(), "NMuon"); - - - - } else if(fillInfo[group]->type == FILLER::Single) { - Particle* part = fillInfo[group]->part; - CUTS ePos = fillInfo[group]->ePos; - - for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { - histAddVal(part->smearP.at(*it).Energy(), "Energy"); - histAddVal(part->smearP.at(*it).Pt(), "Pt"); - histAddVal(part->smearP.at(*it).Eta(), "Eta"); - histAddVal(part->smearP.at(*it).Phi(), "Phi"); - if(part->type == PType::Tau) { - histAddVal(_Tau->nProngs->at(*it), "NumSignalTracks"); - histAddVal(_Tau->charge->at(*it), "Charge"); - histAddVal(_Tau->leadChargedCandPt->at(*it), "SeedTrackPt"); - } - if(part->type != PType::Jet) { - histAddVal(calculateLeptonMetMt(part->smearP.at(*it)), "MetMt"); - } - } - if((part->type != PType::Jet ) && goodParts[ePos]->size() > 0) { - double leadpt = 0; - double leadeta = 0; - for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { - if(part->smearP.at(*it).Pt() >= leadpt) { - leadpt = part->smearP.at(*it).Pt(); - leadeta = part->smearP.at(*it).Eta(); - } - } - - histAddVal(leadpt, "FirstLeadingPt"); - histAddVal(leadeta, "FirstLeadingEta"); - } - - histAddVal(goodParts[ePos]->size(), "N"); - - - } else if(group == "FillMetCuts") { - histAddVal(sqrt((sumpxForMht * sumpxForMht) + (sumpyForMht * sumpyForMht)), "MHT"); - histAddVal(sumptForHt, "HT"); - histAddVal(sumptForHt + sqrt((sumpxForMht * sumpxForMht) + (sumpyForMht * sumpyForMht)), "Meff"); - histAddVal(theMETVector.Pt(), "Met"); - - } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() == 0) { - - if(goodParts[CUTS::eR1stJet]->at(0) != -1) { - histAddVal(_Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)).Pt(), "FirstPt"); - histAddVal(_Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)).Eta(), "FirstEta"); - } - if(goodParts[CUTS::eR2ndJet]->at(0) != -1) { - histAddVal(_Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)).Pt(), "SecondPt"); - histAddVal(_Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)).Eta(), "SecondEta"); - } - - - } else if(group == "FillLeadingJet" && goodParts[CUTS::eSusyCom]->size() != 0) { - - TLorentzVector first = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)); - TLorentzVector second = _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); - - histAddVal(first.Pt(), "FirstPt"); - histAddVal(second.Pt(), "SecondPt"); - - histAddVal(first.Eta(), "FirstEta"); - histAddVal(second.Eta(), "SecondEta"); - - TLorentzVector LeadDiJet = first + second; - - histAddVal(LeadDiJet.M(), "Mass"); - histAddVal(LeadDiJet.Pt(), "Pt"); - histAddVal(fabs(first.Eta() - second.Eta()), "DeltaEta"); - histAddVal(first.DeltaR(second), "DeltaR"); - - double dphiDijets = absnormPhi(first.Phi() - second.Phi()); - double dphi1 = normPhi(first.Phi() - theMETVector.Phi()); - double dphi2 = normPhi(second.Phi() - theMETVector.Phi()); - double alpha = (LeadDiJet.M() > 0) ? second.Pt() / LeadDiJet.M() : 999999999.0; - - histAddVal(dphiDijets, "LeadSublDijetDphi"); - histAddVal2(theMETVector.Pt(),dphiDijets, "MetVsDiJetDeltaPhiLeadSubl"); - histAddVal2(fabs(first.Eta()-second.Eta()), dphiDijets, "DeltaEtaVsDeltaPhiLeadSubl"); - - histAddVal(absnormPhi(theMETVector.Phi() - LeadDiJet.Phi()), "MetDeltaPhi"); - - - - histAddVal(sqrt( pow(dphi1,2.0) + pow((TMath::Pi() - dphi2),2.0) ), "R1"); - histAddVal(sqrt( pow(dphi2,2.0) + pow((TMath::Pi() - dphi1),2.0)), "R2"); - histAddVal(normPhi(first.Phi() - phiForMht), "Dphi1MHT"); - histAddVal(normPhi(second.Phi() - phiForMht), "Dphi2MHT"); - histAddVal(dphi1, "Dphi1"); - histAddVal(dphi2, "Dphi2"); - histAddVal2(dphi1,dphi2, "Dphi1VsDphi2"); - histAddVal(alpha, "Alpha"); - - - //dijet info - } else if(group == "FillDiJet") { - double leaddijetmass = 0; - double leaddijetpt = 0; - double leaddijetdeltaR = 0; - double leaddijetdeltaEta = 0; - double etaproduct = 0; - for(vec_iter it=goodParts[CUTS::eDiJet]->begin(); it!=goodParts[CUTS::eDiJet]->end(); it++) { - int p1 = (*it) / _Jet->smearP.size(); - int p2 = (*it) % _Jet->smearP.size(); - TLorentzVector jet1 = _Jet->smearP.at(p1); - TLorentzVector jet2 = _Jet->smearP.at(p2); - TLorentzVector DiJet = jet1 + jet2; - - if(DiJet.M() > leaddijetmass) { - leaddijetmass = DiJet.M(); - etaproduct = (jet1.Eta() * jet2.Eta() > 0) ? 1 : -1; - } - if(DiJet.Pt() > leaddijetpt) leaddijetpt = DiJet.Pt(); - if(fabs(jet1.Eta() - jet2.Eta()) > leaddijetdeltaEta) leaddijetdeltaEta = fabs(jet1.Eta() - jet2.Eta()); - if(jet1.DeltaR(jet2) > leaddijetdeltaR) leaddijetdeltaR = jet1.DeltaR(jet2); - - histAddVal(DiJet.M(), "Mass"); - histAddVal(DiJet.Pt(), "Pt"); - histAddVal(fabs(jet1.Eta() - jet2.Eta()), "DeltaEta"); - histAddVal(absnormPhi(jet1.Phi() - jet2.Phi()), "DeltaPhi"); - histAddVal(jet1.DeltaR(jet2), "DeltaR"); - } - - - histAddVal(leaddijetmass, "LargestMass"); - histAddVal(leaddijetpt, "LargestPt"); - histAddVal(leaddijetdeltaEta, "LargestDeltaEta"); - histAddVal(leaddijetdeltaR, "LargestDeltaR"); - histAddVal(etaproduct, "LargestMassEtaProduct"); - - - ////diparticle stuff - } else if(fillInfo[group]->type == FILLER::Dipart) { - Lepton* lep1 = static_cast(fillInfo[group]->part); - Lepton* lep2 = static_cast(fillInfo[group]->part2); - CUTS ePos = fillInfo[group]->ePos; - string digroup = group; - digroup.erase(0,4); - - TLorentzVector part1; - TLorentzVector part2; - - for(vec_iter it=goodParts[ePos]->begin(); it!=goodParts[ePos]->end(); it++) { - - int p1= (*it) / BIG_NUM; - int p2= (*it) % BIG_NUM; - - part1 = lep1->smearP.at(p1); - part2 = lep2->smearP.at(p2); - double add_px = (part1.Pt() * cos(part1.Phi())) + (part2.Pt() * cos(part2.Phi())); - double add_py = (part1.Pt() * sin(part1.Phi())) + (part2.Pt() * sin(part2.Phi())); -// TLorentzVector add_p = part1 + part2; - double mag_addp2 = pow(add_px, 2) + pow(add_py, 2); - - histAddVal2(part1.Pt(),part2.Pt(), "Part1PtVsPart2Pt"); - histAddVal(part1.DeltaR(part2), "DeltaR"); - if(group.find("Di") != string::npos) { - histAddVal((part1.Pt() - part2.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); - histAddVal(part1.Pt() - part2.Pt(), "DeltaPt"); - histAddVal(TMath::Sqrt(mag_addp2), "Boost"); - } else { - histAddVal((part2.Pt() - part1.Pt()) / (part1.Pt() + part2.Pt()), "DeltaPtDivSumPt"); - histAddVal(part2.Pt() - part1.Pt(), "DeltaPt"); - histAddVal(TMath::Sqrt(mag_addp2), "Boost"); - } - histAddVal(cos(absnormPhi(part2.Phi() - part1.Phi())), "CosDphi"); - histAddVal(absnormPhi(part1.Phi() - theMETVector.Phi()), "Part1MetDeltaPhi"); - histAddVal2(absnormPhi(part1.Phi() - theMETVector.Phi()), cos(absnormPhi(part2.Phi() - part1.Phi())), "Part1MetDeltaPhiVsCosDphi"); - histAddVal(absnormPhi(part2.Phi() - theMETVector.Phi()), "Part2MetDeltaPhi"); - histAddVal(cos(absnormPhi(atan2(part1.Py() - part2.Py(), part1.Px() - part2.Px()) - theMETVector.Phi())), "CosDphi_DeltaPtAndMet"); - double diMass = diParticleMass(part1,part2, distats[digroup].smap.at("HowCalculateMassReco")); - if(passDiParticleApprox(part1,part2, distats[digroup].smap.at("HowCalculateMassReco"))) { - histAddVal(diMass, "ReconstructableMass"); - - } else { - histAddVal(diMass, "NotReconstructableMass"); - } - - double PZeta = getPZeta(part1,part2).first; - double PZetaVis = getPZeta(part1,part2).second; - histAddVal(calculateLeptonMetMt(part1), "Part1MetMt"); - histAddVal(calculateLeptonMetMt(part2), "Part2MetMt"); - histAddVal(lep2->charge->at(p2) * lep1->charge->at(p1), "OSLS"); - histAddVal(PZeta, "PZeta"); - histAddVal(PZetaVis, "PZetaVis"); - histAddVal2(PZetaVis,PZeta, "Zeta2D"); - histAddVal((distats.at(digroup).dmap.at("PZetaCutCoefficient") * PZeta) + (distats.at(digroup).dmap.at("PZetaVisCutCoefficient") * PZetaVis), "Zeta1D"); - - if ((goodParts[CUTS::eR1stJet]->at(0) != -1) && (goodParts[CUTS::eR2ndJet]->at(0) != -1)) { - TLorentzVector TheLeadDiJetVect = _Jet->smearP.at(goodParts[CUTS::eR1stJet]->at(0)) + _Jet->smearP.at(goodParts[CUTS::eR2ndJet]->at(0)); - - histAddVal(absnormPhi(part1.Phi() - TheLeadDiJetVect.Phi()), "Part1DiJetDeltaPhi"); - histAddVal(absnormPhi(part2.Phi() - TheLeadDiJetVect.Phi()), "Part2DiJetDeltaPhi"); - histAddVal(diParticleMass(TheLeadDiJetVect, part1+part2, "VectorSumOfVisProductsAndMet"), "DiJetReconstructableMass"); - } - - if(lep1->type != PType::Tau) { - histAddVal(isZdecay(part1, *lep1), "Part1IsZdecay"); - } - if(lep2->type != PType::Tau){ - histAddVal(isZdecay(part2, *lep2), "Part2IsZdecay"); - } - } - } -} - - -void Analyzer::initializePileupInfo(string MCHisto, string DataHisto) { - - TFile *file1 = new TFile((PUSPACE+MCHisto).c_str()); - TH1D* histmc = (TH1D*)file1->FindObjectAny("pileup"); - if(!histmc) throw std::runtime_error("failed to extract histogram"); - - TFile* file2 = new TFile((PUSPACE+DataHisto).c_str()); - TH1D* histdata = (TH1D*)file2->FindObjectAny("pileup"); - if(!histdata) throw std::runtime_error("failed to extract histogram"); - - double factor = histmc->Integral() / histdata->Integral(); - double value; - for(int bin=0; bin < 100; bin++) { - if(histmc->GetBinContent(bin) == 0) value = 1; - - else value = factor*histdata->GetBinContent(bin) / histmc->GetBinContent(bin); - hPU[bin] = value; - } - - file1->Close(); - file2->Close(); - -} - -void Analyzer::initializeISRWeightInfo(string ISRweightHisto){ - TFile *file1 = new TFile((ISRSPACE+ISRweightHisto).c_str()); - TH1D* histisr = (TH1D*)file1->FindObjectAny("isrweight_1"); - if(!histisr) throw std::runtime_error("failed to extract histogram"); - - // double factor = histmc->Integral() / histdata->Integral(); - double value; - for(int bin=0; bin < 9; bin++) { - if(histisr->GetBinContent(bin) == 0) value = 1; - - else value = histisr->GetBinContent(bin); - hISR[bin] = value; - } - - file1->Close(); - -} - -double normPhi(double phi) { - static double const TWO_PI = TMath::Pi() * 2; - while ( phi <= -TMath::Pi() ) phi += TWO_PI; - while ( phi > TMath::Pi() ) phi -= TWO_PI; - return phi; -} - -double absnormPhi(double phi) { - return abs(normPhi(phi)); -} diff --git a/PartDet/.gitignore b/PartDet/.gitignore deleted file mode 100644 index e4e5f6c..0000000 --- a/PartDet/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*~ \ No newline at end of file diff --git a/msg1 b/msg1 deleted file mode 100644 index 369458b..0000000 --- a/msg1 +++ /dev/null @@ -1,53 +0,0 @@ -sstarko@[~/nobackup/CMSSW_8_0_25/src/Analyzer] $ git status -# On branch master -# Your branch and 'origin/master' have diverged, -# and have 3 and 73 different commits each, respectively. -# (use "git pull" to merge the remote branch into yours) -Merge branch 'master' of https://github.com/BSM3G/Analyzer - -Conflicts: - src/Analyzer.cc -# -# It looks like you may be committing a merge. -# If this is not correct, please remove the file -# .git/MERGE_HEAD -# and try again. - - -# Please enter the commit message for your changes. Lines starting -# with '#' will be ignored, and an empty message aborts the commit. -# On branch master -# Your branch and 'origin/master' have diverged, -# and have 3 and 73 different commits each, respectively. -# (use "git pull" to merge the remote branch into yours) -# -# All conflicts fixed but you are still merging. -# (use "git commit" to conclude merge) -# -# Changes to be committed: -# -# modified: Analyses/example/Control_Regions.in -# modified: Analyses/example/Cuts.in -# modified: Analyses/example/DiParticle_info.in -# modified: Analyses/example/Electron_info.in -# modified: Analyses/example/Gen_info.in -# modified: Analyses/example/Hist_entries.in -# new file: Analyses/example/Hist_syst_entries.in -# modified: Analyses/example/Jet_info.in -# modified: Analyses/example/Muon_info.in -# modified: Analyses/example/Run_info.in -# new file: Analyses/example/Systematics_info.in -# modified: Analyses/example/Tau_info.in -# modified: Makefile -# new file: Pileup/MC_75bins.root -# new file: Pileup/Spring16_25nsV6_MC_PtResolution_AK4PFchs.txt -# new file: Pileup/Spring16_25nsV6_MC_SF_AK4PFchs.txt -# new file: Pileup/Summer16_23Sep2016V4_MC_UncertaintySources_AK4PFchs.txt -# new file: Pileup/Summer16_23Sep2016V4_MC_Uncertainty_AK4PFchs.txt -# new file: Pileup/data_75bins_69200.root -# modified: README.md -# modified: src/Analyzer.cc -# modified: src/Analyzer.h -# modified: src/CRTest.cc -# modified: src/Cut_enum.h -".git/COMMIT_EDITMSG" 63L, 2186C \ No newline at end of file diff --git a/src/Analyzer.cc b/src/Analyzer.cc index c7444d2..07aece8 100644 --- a/src/Analyzer.cc +++ b/src/Analyzer.cc @@ -101,7 +101,7 @@ Analyzer::Analyzer(std::vector infiles, std::string outfile, bool s trigName[i] = tmps; } - filespace="PartDet"; + filespace=configFolder; filespace+="/"; setupGeneral(); @@ -412,7 +412,6 @@ void Analyzer::clear_values() { ///Function that does most of the work. Calculates the number of each particle void Analyzer::preprocess(int event) { - //cout << "event: " << event << std::endl; BOOM->GetEntry(event); for(Particle* ipart: allParticles){ ipart->init(); @@ -517,7 +516,6 @@ void Analyzer::getGoodParticles(int syst){ getGoodRecoLeptons(*_Tau, CUTS::eRTau1, CUTS::eGTau, _Tau->pstats["Tau1"],syst); getGoodRecoLeptons(*_Tau, CUTS::eRTau2, CUTS::eGTau, _Tau->pstats["Tau2"],syst); getGoodRecoBJets(CUTS::eRBJet, _Jet->pstats["BJet"],syst); - //cout << "function called" << std::endl; getGoodRecoJets(CUTS::eRJet1, _Jet->pstats["Jet1"],syst); getGoodRecoJets(CUTS::eRJet2, _Jet->pstats["Jet2"],syst); getGoodRecoJets(CUTS::eRCenJet, _Jet->pstats["CentralJet"],syst); @@ -730,7 +728,6 @@ void Analyzer::printCuts() { //write all the histograms //attention this is not the fill_histogram method from the Analyser - std::cout << "--------\n" << std::endl; histo.fill_histogram(); if(doSystematics) syst_histo.fill_histogram(); @@ -955,7 +952,7 @@ void Analyzer::initializeTrigger() { for(int k = 0; k < (int)Trigger_names->size(); k++) { if(Trigger_names->at(k).find(trigName[i]->at(j)) != std::string::npos) { trigPlace[i]->at(j) = k; - std::cout << "Trigger_names->at(k): " << Trigger_names->at(k) << std::endl; + //std::cout << "Trigger_names->at(k): " << Trigger_names->at(k) << std::endl; break; } } @@ -1082,13 +1079,10 @@ void Analyzer::setCutNeeds() { //cout << "loaded W and Z." << std::endl; //neededCuts.loadCuts(CUTS::eGHadW); //05.21.18 } - //neededCuts.loadCuts(CUTS::eGen); - //neededCuts.loadCuts(CUTS::eGZ); - //neededCuts.loadCuts(CUTS::eGW); - - neededCuts.loadCuts(CUTS::eGHadW); //05.21.18 - neededCuts.loadCuts(CUTS::eGBJet); //07.25.18 - + if(!isData){ + neededCuts.loadCuts(CUTS::eGHadW); //05.21.18 + neededCuts.loadCuts(CUTS::eGBJet); //07.25.18 + } neededCuts.loadCuts(_Jet->findExtraCuts()); if(doSystematics) { neededCuts.loadCuts(CUTS::eGen); @@ -1521,7 +1515,6 @@ void Analyzer::getGoodRecoJets(CUTS ePos, const PartStats& stats, const int syst else if(cut == "ApplyJetBTagging") passCuts = passCuts && (_Jet->bDiscriminator->at(i) > stats.dmap.at("JetBTaggingCut")); else if(cut == "MatchBToGen") passCuts = passCuts && (isData || abs(_Jet->partonFlavour->at(i)) == 5); else if(cut == "ApplyLooseID") passCuts = passCuts && _Jet->passedLooseJetID(i); - else if(cut == "RemoveOverlapWithBs") passCuts = passCuts && !isOverlapingB(lvec, *_Jet, CUTS::eRBJet, stats.dmap.at("BJMatchingDeltaR")); // ----anti-overlap requirements else if(cut == "RemoveOverlapWithMuon1s") passCuts = passCuts && !isOverlaping(lvec, *_Muon, CUTS::eRMuon1, stats.dmap.at("Muon1MatchingDeltaR")); else if (cut =="RemoveOverlapWithMuon2s") passCuts = passCuts && !isOverlaping(lvec, *_Muon, CUTS::eRMuon2, stats.dmap.at("Muon2MatchingDeltaR")); @@ -2209,56 +2202,6 @@ std::pair Analyzer::getPZeta(const TLorentzVector& Tobj1, const return std::make_pair(px*zetaX + py*zetaY, visPx*zetaX + visPy*zetaY); } -//---MY WEIGHTING and DECAY LIST---------------------------------------------------------------------------------------------------------------------------------------- -// double Analyzer::getZBoostWeight(){ //new7.28.17 -// double z2_p = 0.; //new9.14.17 -// for (unsigned p=0; p < _Gen->pt->size(); p++){ //new9.14.17 Loop over the full size of _Gen -// if (_Gen->pdg_id->at(p) == 23 && (_Gen->status->at(p) == 2 || _Gen->status->at(p) == 62)){ //new9.14.17 If we get a Z with the right status... -// z2_p = _Gen->pt->at(p); //new9.14.17 ...we grab its p_T... -// break; //new9.14.17 ..and then get out of the loop once we have it. -// } -// } -// return z2_p; -// //return (Tobj1 + Tobj2).Pt(); //new7.28.17 -// }//new7.28.17 - -// double Analyzer::getWBoostWeight(){ //new7.28.17 -// double w2_p = 0.; //new7.28.17 -// for (unsigned p=0; p < _Gen->pt->size(); p++){ //new7.28.17 Loop over the full size of _Gen. -// if (_Gen->pdg_id->at(p) == 24 && (_Gen->status->at(p) == 2 || _Gen->status->at(p) == 62)){ //new7.28.17 If we get a W with the right status... -// w2_p = _Gen->pt->at(p); //new7.28.17 ...we grab its p_T... -// break; //new7.28.17 ...and then get out of the loop once we have it. -// } //new7.28.17 -// } //new7.28.17 -// return w2_p; //new7.28.17 We want to return the p_T of the W. -// } //new7.28.17 - -// double Analyzer::getParallelRecoilWeight(const TLorentzVector& Tobj1, const TLorentzVector& Tobj2){ -// //-----Get the recoil Lorentz std::vector.-----// -// double boostzpx = Tobj1.Px() + Tobj2.Px(); //x-component of zboost -// double boostzpy = Tobj1.Py() + Tobj2.Py(); //y-component of zboost -// TLorentzVector boostzplorentz; //Make Lorentz std::vector for zboost. -// boostzplorentz.SetPxPyPzE(boostzpx, boostzpy, 0, 0); //Fill Lorentz vec. -// TLorentzVector u_t; //Make Lorentz std::vector for recoil. -// u_t = -1 * (boostzplorentz + theMETVector); //Fill Lorentz vec (will use Px, Py). - -// //-----2-vector for zboost now.-----// -// TVector2 boostzp; //two-component boost (Pt) std::vector for easy manipulations -// boostzp.Set(boostzpx, boostzpy); //Fill TVector 2. - -// //-----Get unit std::vectors parallel and perpendicular to boost.-----// -// TVector2 boostzp_unitpar; //two-component unit std::vector parallel to the Z Pt -// boostzp_unitpar = boostzp.Unit(); -// TVector2 boostzp_unitper; //two-component unit std::vector perp. to the Z Pt -// boostzp_unitper.Set((-1 / boostzp.Mod()) * boostzpy, (1 / boostzp.Mod()) * boostzpx); - -// //-----Project the recoil onto the parallel unit std::vector to zboost.-----// -// TVector2 ut_pt2; //two-component std::vector for the recoil Pt in each direction. -// ut_pt2.Set(u_t.Px(), u_t.Py()); -// double ut_par = boostzp_unitpar * ut_pt2; //Project recoil onto unit std::vector parallel to the Z Pt. - -// return ut_par; -// } void Analyzer::checkParticleDecayList(){ std::fstream file; @@ -2424,7 +2367,6 @@ void Analyzer::fill_histogram() { active_part = &goodParts; fillCuts(true); for(auto it: *groups) { - //cout << "it1: " << it << std::endl; fill_Folder(it, maxCut, histo, false); } if(!fillCuts(false)) { @@ -2534,19 +2476,7 @@ void Analyzer::fill_Folder(std::string group, const int max, Histogramer &ihisto histAddVal(true, "Events"); histAddVal(bestVertices, "NVertices"); } else if(!isData && group == "FillGen") { - //int nhadW = 0; //05.22.18 - //int p = 0; //05.22.18 - //int hadW = 0; - //for(vec_iter it = active_part->at(CUTS::eGW)->begin(); it!=active_part->at(CUTS::eGW)->end(); it++){ //05.22.18 - //} //05.22.18 - //if (hadW == -1){nhadW++;}} //05.22.18 - //int num_hadW = 0; - //for(auto it : *active_part->at(CUTS::eGHadW)){ - //int num_eitherW = active_part->at(CUTS::eGHadW)->at(it); - //if (num_eitherW == 0){num_hadW++) - //histAddVal(num_hadW, "NHadW");} //05.22.18 histAddVal(active_part->at(CUTS::eGHadW)->size(), "NHadW"); - //histAddVal(active_part->at(CUTS::eGHadW)->size(),"NHadW"); int nhadtau = 0; TLorentzVector genVec; int i = 0; @@ -2557,17 +2487,6 @@ void Analyzer::fill_Folder(std::string group, const int max, Histogramer &ihisto histAddVal(genVec.Pt(), "HadTauPt"); histAddVal(genVec.Eta(), "HadTauEta"); nhadtau++; - //--MY CODE FROM VALIDATING ALEJANDRO'S W-STUDIES--------------------------------------------------------------------------------------------------------------- - //double ghadtau_frac_scalar = Hadtau.Pt() / (Hadtau.Pt()+nu.Pt()); - //double ghadtau_frac_vector = Hadtau.Pt() / (Gentau.Pt()); - //histAddVal(ghadtau_frac_scalar, "HadTauFrac_scalar"); - //histAddVal(ghadtau_frac_vector, "HadTauFrac_vector"); - //histAddVal(Hadtau.Pt(), "HadTauPt"); - //histAddVal(nu.Pt(), "NuPt"); - //histAddVal(nu.P(), "NuP"); - //histAddVal(Hadtau.Eta(), "HadTauEta"); - //histAddVal(Hadtau.DeltaR(nu), "DeltaR"); - //---END MY CODE FROM VALIDATING ALEJANDRO'S W-STUDIES---------------------------------------------------------------------------------------------------------- } histAddVal(_Gen->energy(*it), "TauEnergy"); histAddVal(_Gen->pt(*it), "TauPt"); diff --git a/src/MET.cc b/src/MET.cc index 5a92747..523514d 100644 --- a/src/MET.cc +++ b/src/MET.cc @@ -77,7 +77,7 @@ void Met::init(){ } -void Met::update(PartStats& stats, Jet& jet, int syst){ +void Met::update(PartStats& stats, Jet& jet, int syst=0){ ///Calculates met from values from each file plus smearing and treating muons as neutrinos if(systVec.at(syst) == nullptr) return; double sumpxForMht=0; diff --git a/src/main.cc b/src/main.cc index 4a499bd..e47e57c 100644 --- a/src/main.cc +++ b/src/main.cc @@ -122,7 +122,6 @@ int main (int argc, char* argv[]) { Nentries=100; testing.nentries=100; } - //testing.checkParticleDecayList(); //main event loop for(size_t i=0; i < Nentries; i++) { if(i==0){ @@ -139,10 +138,6 @@ int main (int argc, char* argv[]) { break; } } - //cout << "leptonic: " << leptonic << std::endl; - //cout << "notleptonic: " << notleptonic << std::endl; - - //f.close(); //commented-out 7.27.17 testing.printCuts(); spechialAna.end_run(); return 0;