diff --git a/microAODProduction/crab/SyncTuple_T3_crab.py b/microAODProduction/crab/SyncTuple_T3_crab.py new file mode 100755 index 00000000..5a7a834d --- /dev/null +++ b/microAODProduction/crab/SyncTuple_T3_crab.py @@ -0,0 +1,19 @@ +from CRABClient.UserUtilities import config +config = config() + +config.General.requestName = 'SUSYGluGluToHToTauTau_M160_76X_MIB_v3' +config.General.workArea = 'SUSYGluGluToHToTauTau_M160' + +config.JobType.pluginName = 'Analysis' +config.JobType.psetName = '../python/miniAOD_skim_Sync.py' +config.JobType.pyCfgParams = ['isData=False','sampleType=Fall15MC','computeHT=False'] + +config.Data.inputDataset = '/SUSYGluGluToHToTauTau_M-160_TuneCUETP8M1_13TeV-pythia8/RunIIFall15MiniAODv2-PU25nsData2015v1_76X_mcRun2_asymptotic_v12-v1/MINIAODSIM' +config.Data.inputDBS = 'global' +config.Data.splitting = 'EventAwareLumiBased' +config.Data.unitsPerJob = 5000 +#config.Data.outLFNDirBase = '/store/user/ccaputo/HHbbtautau/Run2/160215_Sync_76x_v1/' # or '/store/group/' +config.Data.outLFNDirBase = '/store/user/ccaputo/' # or '/store/group/' +config.Data.publication = False + +config.Site.storageSite = 'T3_IT_MIB' diff --git a/microAODProduction/crab/SyncTuple_crab.py b/microAODProduction/crab/SyncTuple_crab.py index fe23036b..05a83d14 100755 --- a/microAODProduction/crab/SyncTuple_crab.py +++ b/microAODProduction/crab/SyncTuple_crab.py @@ -1,17 +1,19 @@ from CRABClient.UserUtilities import config config = config() -config.General.requestName = 'SUSYGluGluToHToTauTau_M160_76X' +config.General.requestName = 'SUSYGluGluToHToTauTau_M160_76X_Pisa' config.General.workArea = 'SUSYGluGluToHToTauTau_M160' config.JobType.pluginName = 'Analysis' config.JobType.psetName = '../python/miniAOD_skim_Sync.py' +config.JobType.pyCfgParams = ['isData=False','sampleType=Fall15MC','computeHT=False'] config.Data.inputDataset = '/SUSYGluGluToHToTauTau_M-160_TuneCUETP8M1_13TeV-pythia8/RunIIFall15MiniAODv2-PU25nsData2015v1_76X_mcRun2_asymptotic_v12-v1/MINIAODSIM' config.Data.inputDBS = 'global' config.Data.splitting = 'EventAwareLumiBased' config.Data.unitsPerJob = 5000 -config.Data.outLFNDirBase = '/store/user/ccaputo/HHbbtautau/Run2/160206_Sync_76x_v1/' # or '/store/group/' +#config.Data.outLFNDirBase = '/store/user/ccaputo/HHbbtautau/Run2/160215_Sync_76x_v1/' # or '/store/group/' +config.Data.outLFNDirBase = '/store/user/ccaputo/' # or '/store/group/' config.Data.publication = False -config.Site.storageSite = 'T2_IT_Bari' +config.Site.storageSite = 'T2_IT_Pisa' diff --git a/microAODProduction/interface/SyncTree.h b/microAODProduction/interface/SyncTree.h index 196fe250..51f0c09a 100755 --- a/microAODProduction/interface/SyncTree.h +++ b/microAODProduction/interface/SyncTree.h @@ -64,6 +64,8 @@ SIMPLE_VAR(Float_t, d0_2) /* d0 with respect to primary vertex */ \ SIMPLE_VAR(Float_t, dZ_2) /* dZ with respect to primary vertex */ \ SIMPLE_VAR(Float_t, mt_2) /* mT of first lepton wrt to PF met */ \ + SIMPLE_VAR(Float_t, pfmt_2) /* mT of first lepton wrt to PF met */ \ + SIMPLE_VAR(Float_t, puppimt_2) /* mT of first lepton wrt to PF met */ \ SIMPLE_VAR(Float_t, iso_2) /* MVA iso for hadronic Tau, Delta Beta for muon and electron */ \ SIMPLE_VAR(Int_t, gen_match_2 ) /*Generator matching, see Htautau Twiki*/\ SIMPLE_VAR(Float_t, againstElectronLooseMVA6_2) /* MVA iso for hadronic Tau, Delta Beta for muon */ \ @@ -118,7 +120,6 @@ VECTOR_VAR(Float_t, rawf_jets) /* factor to be applied to the jet p4 to obtain its uncorrected p4 */ \ VECTOR_VAR(Float_t, mva_jets) /* Jet MVA id value */ \ VECTOR_VAR(Float_t, csv_jets) /* Jet CSV value */ \ - VECTOR_VAR(Float_t, energy_jets) /* Jet mass value */ \ /* Second Jet : 2nd leading jet (in pt) afer applying Jet energy corrections (excluding Tau) */ \ /* SIMPLE_VAR(Float_t, jpt_2) Jet Pt after corrections */ \ /* SIMPLE_VAR(Float_t, jeta_2) Jet Eta */ \ @@ -135,7 +136,6 @@ VECTOR_VAR(Float_t, rawf_bjets) /* Btag factor to be applied to the jet p4 to obtain its uncorrected p4 */ \ VECTOR_VAR(Float_t, mva_bjets) /* Btag mva */ \ VECTOR_VAR(Float_t, csv_bjets) /* Btag CSV */ \ - VECTOR_VAR(Float_t, energy_bjets) /* Btag mass */ \ /* Candidate B Jets : subleading jet (in CSV ordering) passing (pt > 20 + eta < 2.4) */ \ /* SIMPLE_VAR(Float_t, bpt_2) Corrected BTag Pt */ \ /* SIMPLE_VAR(Float_t, beta_2) Btag Eta */ \ diff --git a/microAODProduction/plugins/SyncTreeProducer.cc b/microAODProduction/plugins/SyncTreeProducer.cc index 69110ba6..6e91fd86 100755 --- a/microAODProduction/plugins/SyncTreeProducer.cc +++ b/microAODProduction/plugins/SyncTreeProducer.cc @@ -562,6 +562,7 @@ SyncTreeProducer::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetu tau.tauID("decayModeFinding") > tauID::decayModeFinding && fabs(packedLeadTauCand->dz()) < tauID::dz )) continue; + if(!(fabs(tau.charge())==1)) continue; const CandidateV2Ptr tau_candidate(new CandidateV2(tau)); tmp_tau.eta = tau.eta(); @@ -887,7 +888,7 @@ CandidateV2Ptr SyncTreeProducer::SelectSemiLeptonicHiggs(CandidateV2PtrVector& h } bool muon = (iso_mu1 < iso_mu2) || ((iso_mu1 == iso_mu2) ? first_muon.pt() >= second_muon.pt() : false); - bool tau = (iso_tau1 < iso_tau2) || + bool tau = (iso_tau1 > iso_tau2) || ((iso_tau1 == iso_tau2) ? first_tau.pt() >= second_tau.pt() : false); // if ( &first_muon==&second_muon ){ @@ -1064,7 +1065,7 @@ void SyncTreeProducer::FillSyncTree(const edm::Event& iEvent) syncTree.eta_1() = selection.GetLeg(1)->GetMomentum().Eta(); syncTree.m_1() = selection.GetLeg(1)->GetMomentum().M(); syncTree.q_1() = selection.GetLeg(1)->GetCharge(); - syncTree.mt_1() = Calculate_MT(selection.GetLeg(1)->GetMomentum(), selection.pfMET->Pt(), selection.pfMET->Phi()); + syncTree.pfmt_1() = Calculate_MT(selection.GetLeg(1)->GetMomentum(), selection.pfMET->Pt(), selection.pfMET->Phi()); syncTree.d0_1() = Calculate_dxy(selection.GetLeg(1)->GetVertexPosition(), primaryVertex->GetPosition(), selection.GetLeg(1)->GetMomentum()); syncTree.dZ_1() = selection.GetLeg(1)->GetVertexPosition().Z() - primaryVertex->GetPosition().Z(); @@ -1084,26 +1085,26 @@ void SyncTreeProducer::FillSyncTree(const edm::Event& iEvent) syncTree.eta_2() = selection.GetLeg(2)->GetMomentum().Eta(); syncTree.m_2() = selection.GetLeg(2)->GetMomentum().M(); syncTree.q_2() = selection.GetLeg(2)->GetCharge(); - syncTree.mt_2() = Calculate_MT(selection.GetLeg(2)->GetMomentum(), selection.pfMET->Pt(), selection.pfMET->Phi()); + syncTree.pfmt_2() = Calculate_MT(selection.GetLeg(2)->GetMomentum(), selection.pfMET->Pt(), selection.pfMET->Phi()); syncTree.d0_2() = Calculate_dxy(selection.GetLeg(2)->GetVertexPosition(), primaryVertex->GetPosition(), selection.GetLeg(2)->GetMomentum()); syncTree.dZ_2() = selection.GetLeg(2)->GetVertexPosition().Z() - primaryVertex->GetPosition().Z(); - + syncTree.iso_2() = patTau.tauID("byIsolationMVArun2v1DBoldDMwLTraw"); syncTree.id_e_mva_nt_loose_1() = Run2::DefaultFillValueForSyncTree(); syncTree.gen_match_2() = true; - syncTree.againstElectronLooseMVA5_2() = patTau.tauID("againstElectronLooseMVA5"); - syncTree.againstElectronMediumMVA5_2() = patTau.tauID("againstElectronMediumMVA5"); - syncTree.againstElectronTightMVA5_2() = patTau.tauID("againstElectronTightMVA5"); - syncTree.againstElectronVLooseMVA5_2() = patTau.tauID("againstElectronVLooseMVA5"); - syncTree.againstElectronVTightMVA5_2() = patTau.tauID("againstElectronVTightMVA5"); + syncTree.againstElectronLooseMVA6_2() = patTau.tauID("againstElectronLooseMVA6"); + syncTree.againstElectronMediumMVA6_2() = patTau.tauID("againstElectronMediumMVA6"); + syncTree.againstElectronTightMVA6_2() = patTau.tauID("againstElectronTightMVA6"); + syncTree.againstElectronVLooseMVA6_2() = patTau.tauID("againstElectronVLooseMVA6"); + syncTree.againstElectronVTightMVA6_2() = patTau.tauID("againstElectronVTightMVA6"); syncTree.againstMuonLoose3_2() = patTau.tauID("againstMuonLoose3"); syncTree.againstMuonTight3_2() = patTau.tauID("againstMuonTight3"); syncTree.byCombinedIsolationDeltaBetaCorrRaw3Hits_2() = patTau.tauID("byCombinedIsolationDeltaBetaCorrRaw3Hits"); - syncTree.byIsolationMVA3newDMwLTraw_2() = patTau.tauID("byIsolationMVA3newDMwLTraw"); - syncTree.byIsolationMVA3oldDMwLTraw_2() = patTau.tauID("byIsolationMVA3oldDMwLTraw"); + syncTree.byIsolationMVA3newDMwLTraw_2() = patTau.tauID("byIsolationMVArun2v1DBnewDMwLTraw"); + syncTree.byIsolationMVA3oldDMwLTraw_2() = patTau.tauID("byIsolationMVArun2v1DBoldDMwLTraw"); syncTree.byIsolationMVA3newDMwoLTraw_2() = Run2::DefaultFillValueForSyncTree(); syncTree.byIsolationMVA3oldDMwoLTraw_2() = Run2::DefaultFillValueForSyncTree(); diff --git a/microAODProduction/python/miniAOD_skim_Sync.py b/microAODProduction/python/miniAOD_skim_Sync.py index 4221d4d2..e216aa5d 100755 --- a/microAODProduction/python/miniAOD_skim_Sync.py +++ b/microAODProduction/python/miniAOD_skim_Sync.py @@ -62,12 +62,13 @@ DYSample = cms.untracked.vstring("/store/user/ccaputo/HHbbtautau/Run2/DYSample_forHT.root") Diboson = cms.untracked.vstring('root://xrootd.unl.edu//store/mc/RunIISpring15MiniAODv2/VVTo2L2Nu_13TeV_amcatnloFXFX_madspin_pythia8/MINIAODSIM/74X_mcRun2_asymptotic_v2-v1/10000/1A826380-CB6D-E511-BCFA-0025901D4D6E.root') +SyncSignal = cms.untracked.vstring('root://xrootd.unl.edu//store/mc/RunIIFall15MiniAODv2/SUSYGluGluToHToTauTau_M-160_TuneCUETP8M1_13TeV-pythia8/MINIAODSIM/PU25nsData2015v1_76X_mcRun2_asymptotic_v12-v1/50000/B2FF8F77-3DB8-E511-B743-001E6757F1D4.root') ##inputSignal_v2 = cms.untracked.vstring( ## '/store/mc/RunIISpring15MiniAODv2/SUSYGluGluToHToTauTau_M-160_TuneCUETP8M1_13TeV-pythia8/MINIAODSIM/74X_mcRun2_asymptotic_v2-v1/40000/10563B6E-D871-E511-9513-B499BAABD280.root') ## Input files process.source = cms.Source("PoolSource", - fileNames = Diboson + fileNames = SyncSignal ) ## Output file @@ -84,7 +85,7 @@ if options.isData: skimmedBranches = cms.untracked.vstring(BaseDATABranches) -allBranches = cms.untracked.vstring(['keep *']) +allBranches = cms.untracked.vstring(['drop *']) process.load("RecoMET.METProducers.METSignificance_cfi") process.load("RecoMET.METProducers.METSignificanceParams_cfi") @@ -136,11 +137,13 @@ muonSrc = cms.InputTag("slimmedMuons"), vtxSrc = cms.InputTag("offlineSlimmedPrimaryVertices"), jetSrc = cms.InputTag("slimmedJets"), + PUInfo = cms.InputTag("slimmedAddPileupInfo"), ##pfMETSrc = cms.InputTag("slimmedMETsNoHF"), pfMETSrc = cms.InputTag("slimmedMETs"), bits = cms.InputTag("TriggerResults","","HLT"), prescales = cms.InputTag("patTrigger"), objects = cms.InputTag("selectedPatTrigger"), + metCov = cms.InputTag("METSignificance","METCovariance"), lheEventProducts = cms.InputTag("externalLHEProducer"), genEventInfoProduct = cms.InputTag("generator"), HTBinning = cms.bool(options.computeHT), @@ -162,9 +165,9 @@ eventAutoFlushCompressedSize = cms.untracked.int32(15728640), fileName = cms.untracked.string('microAOD.root'), SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring('p') ), - outputCommands = skimmedBranches, + #outputCommands = skimmedBranches, #outputCommands = HTBinBranches, - #outputCommands = allBranches, + outputCommands = allBranches, dropMetaData = cms.untracked.string('ALL'), fastCloning = cms.untracked.bool(False), overrideInputFileSplitLevels = cms.untracked.bool(True) diff --git a/microAODProduction/python/syncTreeProducer_cfg.py b/microAODProduction/python/syncTreeProducer_cfg.py index 5d67ef6e..8389ef14 100755 --- a/microAODProduction/python/syncTreeProducer_cfg.py +++ b/microAODProduction/python/syncTreeProducer_cfg.py @@ -101,8 +101,9 @@ #------------- # SyncTree Producer #------------- -from HHbbTauTau.microAODProduction.syncNtupler_cfi import syncNtupler +#from HHbbTauTau.microAODProduction.syncNtupler_cfi import syncNtupler +process.syncNtupler = cms.EDAnalyzer('SyncTreeProducer', genParticles = cms.InputTag("genParticles"), # # Objects specific to MiniAOD format