#process.dimuonsNoDptPt = process.dimuons.clone(src = 'allDimuonsN2')#N-2 delattr(process.dimuonsNoB2B, 'back_to_back_cos_angle_min') delattr(process.dimuonsNoVtxProb, 'vertex_chi2_max') delattr(process.dimuonsNoDptPt, 'dpt_over_pt_max') process.p *= process.allDimuons for dimu in ['dimuonsNoB2B', 'dimuonsNoVtxProb', 'dimuonsNoDptPt']: hists = HistosFromPAT.clone(dilepton_src=dimu, leptonsFromDileptons=True) setattr(process, dimu.replace('dimuons', ''), hists) process.p *= getattr(process, dimu) * hists # Special case to remove |dB| and B2B cuts simultaneously, as they can # be correlated (anti-cosmics). process.allDimuonsNoCosm = process.allDimuons.clone( cut='daughter(0).pdgId() + daughter(1).pdgId() == 0', loose_cut=loose_cut.replace(' && abs(dB) < 0.2', '')) #process.allDimuonsNoCosm = process.allDimuons.clone(loose_cut = loose_cut.replace(' && abs(dB) < 0.2', ''), tight_cut = tight_cut.replace(trigger_match, '')) #N-2 process.dimuonsNoCosm = process.dimuons.clone(src='allDimuonsNoCosm') delattr(process.dimuonsNoCosm, 'back_to_back_cos_angle_min') process.NoCosm = HistosFromPAT.clone(dilepton_src='dimuonsNoCosm', leptonsFromDileptons=True) process.p *= process.allDimuonsNoCosm * process.dimuonsNoCosm * process.NoCosm f = file('outfile', 'w') f.write(process.dumpPython()) f.close() if __name__ == '__main__' and 'submit' in sys.argv: crab_cfg = ''' from CRABClient.UserUtilities import config config = config() config.General.requestName = 'ana_nminus1_%(name)s'
jetCorrections = ('AK4PF', cms.vstring(['L1FastJet', 'L2Relative','L3Absolute']), 'Type-1'), btagDiscriminators = ['jetBProbabilityBJetTags', 'jetProbabilityBJetTags', 'trackCountingHighPurBJetTags', 'trackCountingHighEffBJetTags', 'simpleSecondaryVertexHighEffBJetTags', 'simpleSecondaryVertexHighPurBJetTags', 'combinedSecondaryVertexV2BJetTags'], getJetMCFlavour = False, ) # Make a collection of muons with our final selection applied so that # the muon-jet cleaning will use only muons passing those cuts. This # muon collection is not saved in the output. from SUSYBSMAnalysis.Zprime2muAnalysis.OurSelectionDec2012_cff import loose_cut process.muonsForJetCleaning = process.selectedPatMuons.clone(cut = loose_cut.replace('pt > 45', 'pt > 30')) process.patDefaultSequence.replace(process.selectedPatMuons, process.selectedPatMuons * process.muonsForJetCleaning) process.cleanPatJets.checkOverlaps.muons.src = 'muonsForJetCleaning' process.cleanPatJets.checkOverlaps.muons.deltaR = 0.2 process.cleanPatJets.checkOverlaps.muons.requireNoOverlaps = True process.cleanPatJets.finalCut = 'pt > 30.0' # Met filters process.load("PhysicsTools.PatAlgos.slimming.metFilterPaths_cff") process.goodDataHBHENoiseFilter = cms.Path(process.HBHENoiseFilter) process.goodDataHBHEIsoNoiseFilter = cms.Path(process.HBHENoiseIsoFilter) process.goodDataCSCTightHaloFilter = cms.Path(process.globalTightHalo2016Filter) process.goodDataEcalTPFilter = cms.Path(process.EcalDeadCellTriggerPrimitiveFilter) process.goodDataEeBadScFilter = cms.Path(process.eeBadScFilter) ##if you want to filter the event: define a sequence and include it in the pocess.p
from PhysicsTools.PatAlgos.tools.metTools import addPfMET, addTcMET addPfMET(process) addTcMET(process) from PhysicsTools.PatAlgos.tools.jetTools import switchJetCollection switchJetCollection( process, cms.InputTag("ak5PFJets"), doJTA=True, doBTagging=True, jetCorrLabel=("AK5PF", ["L1FastJet", "L2Relative", "L3Absolute"]), doType1MET=False, genJetCollection=cms.InputTag("ak5GenJets"), doJetID=False, jetIdLabel="ak5", ) # Make a collection of muons with our final selection applied so that # the muon-jet cleaning will use only muons passing those cuts. This # muon collection is not saved in the output. from SUSYBSMAnalysis.Zprime2muAnalysis.OurSelectionDec2012_cff import loose_cut process.muonsForJetCleaning = process.selectedPatMuons.clone(cut=loose_cut.replace("pt > 45", "pt > 30")) process.patDefaultSequence.replace(process.selectedPatMuons, process.selectedPatMuons * process.muonsForJetCleaning) process.cleanPatJets.checkOverlaps.muons.src = "muonsForJetCleaning" process.cleanPatJets.checkOverlaps.muons.deltaR = 0.2 process.cleanPatJets.checkOverlaps.muons.requireNoOverlaps = True process.cleanPatJets.finalCut = "pt > 30.0"
# Zprime2muCompositeCandidatePicker level. process.dimuonsNoB2B = process.dimuons.clone() process.dimuonsNoVtxProb = process.dimuons.clone() process.dimuonsNoDptPt = process.dimuons.clone() delattr(process.dimuonsNoB2B, 'back_to_back_cos_angle_min') delattr(process.dimuonsNoVtxProb, 'vertex_chi2_max') delattr(process.dimuonsNoDptPt, 'dpt_over_pt_max') process.p *= process.allDimuons for dimu in ['dimuonsNoB2B', 'dimuonsNoVtxProb', 'dimuonsNoDptPt']: hists = HistosFromPAT.clone(dilepton_src = dimu, leptonsFromDileptons = True) setattr(process, dimu.replace('dimuons', ''), hists) process.p *= getattr(process, dimu) * hists # Special case to remove |dB| and B2B cuts simultaneously, as they can # be correlated (anti-cosmics). process.allDimuonsNoCosm = process.allDimuons.clone(loose_cut = loose_cut.replace(' && abs(dB) < 0.2', '')) process.dimuonsNoCosm = process.dimuons.clone(src = 'allDimuonsNoCosm') delattr(process.dimuonsNoCosm, 'back_to_back_cos_angle_min') process.NoCosm = HistosFromPAT.clone(dilepton_src = 'dimuonsNoCosm', leptonsFromDileptons = True) process.p *= process.allDimuonsNoCosm * process.dimuonsNoCosm * process.NoCosm if __name__ == '__main__' and 'submit' in sys.argv: crab_cfg = ''' [CRAB] jobtype = cmssw scheduler = condor [CMSSW] datasetpath = %(ana_dataset)s dbs_url = https://cmsdbsprod.cern.ch:8443/cms_dbs_ph_analysis_02_writer/servlet/DBSServlet pset = nminus1effs.py