dqmAk4PFCHSL1FastL2L3Corrector) jetPreDQMTask = cms.Task(ak4CaloL2RelativeCorrector, ak4CaloL3AbsoluteCorrector, ak4PFL1FastjetCorrector, ak4PFL2RelativeCorrector, ak4PFL3AbsoluteCorrector, ak4PFCHSL1FastjetCorrector, ak4PFCHSL2RelativeCorrector, ak4PFCHSL3AbsoluteCorrector) jetPreDQMSeq = cms.Sequence(jetPreDQMTask) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1 = corrPfMetType1.clone( jetCorrLabel='dqmAk4PFCHSL1FastL2L3Corrector', jetCorrLabelRes='dqmAk4PFCHSL1FastL2L3Corrector') pfMETT1 = pfMetT1.clone(srcCorrections=('dqmCorrPfMetType1:type1', )) jetDQMAnalyzerAk4CaloUncleanedMC = jetDQMAnalyzerAk4CaloUncleaned.clone( JetCorrections="dqmAk4CaloL2L3Corrector") jetDQMAnalyzerAk4CaloCleanedMC = jetDQMAnalyzerAk4CaloCleaned.clone( JetCorrections="dqmAk4CaloL2L3Corrector") jetDQMAnalyzerAk4PFUncleanedMC = jetDQMAnalyzerAk4PFUncleaned.clone( JetCorrections="dqmAk4PFL1FastL2L3Corrector") jetDQMAnalyzerAk4PFCleanedMC = jetDQMAnalyzerAk4PFCleaned.clone( JetCorrections="dqmAk4PFL1FastL2L3Corrector") jetDQMAnalyzerAk4PFCHSCleanedMC = jetDQMAnalyzerAk4PFCHSCleaned.clone( JetCorrections="dqmAk4PFCHSL1FastL2L3Corrector") caloMetDQMAnalyzerMC = caloMetDQMAnalyzer.clone(
dqmAk4PFCHSL1FastL2L3Corrector) jetPreDQMTask = cms.Task(ak4CaloL2RelativeCorrector, ak4CaloL3AbsoluteCorrector, ak4PFL1FastjetCorrector, ak4PFL2RelativeCorrector, ak4PFL3AbsoluteCorrector, ak4PFCHSL1FastjetCorrector, ak4PFCHSL2RelativeCorrector, ak4PFCHSL3AbsoluteCorrector) jetPreDQMSeq = cms.Sequence(jetPreDQMTask) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1 = corrPfMetType1.clone( jetCorrLabel=cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector'), jetCorrLabelRes=cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector')) pfMETT1 = pfMetT1.clone( srcCorrections=cms.VInputTag(cms.InputTag('dqmCorrPfMetType1', 'type1'))) jetDQMAnalyzerAk4CaloUncleanedMC = jetDQMAnalyzerAk4CaloUncleaned.clone( JetCorrections=cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4CaloCleanedMC = jetDQMAnalyzerAk4CaloCleaned.clone( JetCorrections=cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4PFUncleanedMC = jetDQMAnalyzerAk4PFUncleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCleanedMC = jetDQMAnalyzerAk4PFCleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCHSCleanedMC = jetDQMAnalyzerAk4PFCHSCleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFCHSL1FastL2L3Corrector"))
dqmAk4PFCHSL1FastL2L3Corrector = ak4PFCHSL1FastL2L3Corrector.clone() dqmAk4PFCHSL1FastL2L3CorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector dqmAk4PFCHSL1FastL2L3Corrector ) jetPreDQMSeq=cms.Sequence(ak4CaloL2RelativeCorrector*ak4CaloL3AbsoluteCorrector* ak4PFL1FastjetCorrector*ak4PFL2RelativeCorrector*ak4PFL3AbsoluteCorrector* ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1=corrPfMetType1.clone(jetCorrLabel = cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector'), jetCorrLabelRes = cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector') ) pfMETT1=pfMetT1.clone(srcCorrections = cms.VInputTag( cms.InputTag('dqmCorrPfMetType1', 'type1') )) jetDQMAnalyzerAk4CaloUncleanedMC=jetDQMAnalyzerAk4CaloUncleaned.clone(JetCorrections = cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4CaloCleanedMC=jetDQMAnalyzerAk4CaloCleaned.clone(JetCorrections = cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4PFUncleanedMC=jetDQMAnalyzerAk4PFUncleaned.clone(JetCorrections = cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCleanedMC=jetDQMAnalyzerAk4PFCleaned.clone(JetCorrections = cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCHSCleanedMC=jetDQMAnalyzerAk4PFCHSCleaned.clone(JetCorrections = cms.InputTag("dqmAk4PFCHSL1FastL2L3Corrector")) caloMetDQMAnalyzerMC=caloMetDQMAnalyzer.clone(JetCorrections = cms.InputTag("dqmAk4CaloL2L3Corrector")) pfMetDQMAnalyzerMC=pfMetDQMAnalyzer.clone(JetCorrections = cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) pfMetT1DQMAnalyzerMC=pfMetT1DQMAnalyzer.clone(JetCorrections = cms.InputTag("dqmAk4PFCHSL1FastL2L3Corrector"))
#ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector*ak4PFCHSResidualCorrector dqmAk4PFCHSL1FastL2L3ResidualCorrector) jetPreDQMSeq = cms.Sequence( ak4CaloL2RelativeCorrector * ak4CaloL3AbsoluteCorrector * ak4CaloResidualCorrector * ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector * ak4PFResidualCorrector * ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector * ak4PFCHSResidualCorrector) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1 = corrPfMetType1.clone( jetCorrLabel=cms.InputTag('dqmAk4PFL1FastL2L3ResidualCorrector')) pfMETT1 = pfMetT1.clone( srcCorrections=cms.VInputTag(cms.InputTag('dqmCorrPfMetType1', 'type1'))) jetMETDQMOfflineSource = cms.Sequence( HBHENoiseFilterResultProducer * goodOfflinePrimaryVerticesDQM * AnalyzeSUSYDQM * QGTagger * pileupJetIdCalculatorCHSDQM * pileupJetIdEvaluatorCHSDQM * pileupJetIdCalculatorDQM * pileupJetIdEvaluatorDQM * jetPreDQMSeq * dqmAk4CaloL2L3ResidualCorrectorChain * dqmAk4PFL1FastL2L3ResidualCorrectorChain * dqmAk4PFCHSL1FastL2L3ResidualCorrectorChain * dqmCorrPfMetType1 * pfMETT1 * jetDQMAnalyzerSequence * METDQMAnalyzerSequence) jetMETDQMOfflineSourceMiniAOD = cms.Sequence( goodOfflinePrimaryVerticesDQMforMiniAOD * jetDQMAnalyzerSequenceMiniAOD * METDQMAnalyzerSequenceMiniAOD)
def setup_jets_mets_(process, isData, bTagDiscriminators): """ Create a new jets collection and a new MET collection with new JECs applied Return a tuple of newly created collections (jet, met) """ # Jets add_ak4_chs_jets_(process, isData, bTagDiscriminators) # b-tagging information. From # https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_X/PhysicsTools/PatAlgos/python/slimming/miniAOD_tools.py#L130 process.patJetsAK4PFCHS.userData.userFunctions = cms.vstring( '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.M):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).numberOfSourceCandidatePtrs):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").flightDistance(0).value):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").flightDistance(0).significance):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.x):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.y):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.z):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.x):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.y):(0)', '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.z):(0)', ) process.patJetsAK4PFCHS.userData.userFunctionLabels = cms.vstring('vtxMass','vtxNtracks','vtx3DVal','vtx3DSig','vtxPx','vtxPy','vtxPz','vtxPosX','vtxPosY','vtxPosZ') process.patJetsAK4PFCHS.tagInfoSources = cms.VInputTag(cms.InputTag("pfSecondaryVertexTagInfosAK4PFCHS")) process.patJetsAK4PFCHS.addTagInfos = cms.bool(True) # Pile-up jet id process.load('RecoJets.JetProducers.PileupJetID_cfi') process.pileupJetId.applyJec = False process.pileupJetId.vertexes = cms.InputTag('offlineSlimmedPrimaryVertices') process.patJetsAK4PFCHS.userData.userFloats.src = [ cms.InputTag("pileupJetId:fullDiscriminant"), ] # MET from PhysicsTools.PatAlgos.tools.metTools import addMETCollection ## Gen MET if not isData: process.genMetExtractor = cms.EDProducer("GenMETExtractor", metSource = cms.InputTag("slimmedMETs", "" , cms.InputTag.skipCurrentProcess()) ) # MET is done from all PF candidates, and Type-I corrections are computed from CHS ak4 PF jets # https://twiki.cern.ch/twiki/bin/viewauth/CMS/MissingETRun2Corrections#type_1_PF_MET_recommended ## Raw PF METs process.load('RecoMET.METProducers.PFMET_cfi') process.pfMet.src = cms.InputTag('packedPFCandidates') addMETCollection(process, labelName='patPFMet', metSource='pfMet') # RAW MET process.patPFMet.addGenMET = False ## Type 1 corrections process.load('JetMETCorrections.Configuration.JetCorrectors_cff') from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 process.corrPfMetType1 = corrPfMetType1.clone( src = 'ak4PFJetsCHS', jetCorrLabel = 'ak4PFCHSL1FastL2L3Corrector' if not isData else 'ak4PFCHSL1FastL2L3ResidualCorrector', offsetCorrLabel = 'ak4PFCHSL1FastjetCorrector', type1JetPtThreshold = cms.double(15.0) ) process.pfMetT1 = pfMetT1.clone( src = 'pfMet', srcCorrections = [cms.InputTag("corrPfMetType1", "type1")] ) addMETCollection(process, labelName='patMET', metSource='pfMetT1') # T1 MET process.patMET.addGenMET = False ## Slimmed METs from PhysicsTools.PatAlgos.slimming.slimmedMETs_cfi import slimmedMETs #### CaloMET is not available in MiniAOD del slimmedMETs.caloMET process.slimmedMETs = slimmedMETs.clone() process.patMET.addGenMET = not isData if not isData: process.patMET.genMETSource = cms.InputTag("genMetExtractor") process.slimmedMETs.src = cms.InputTag("patMET") process.slimmedMETs.rawVariation = cms.InputTag("patPFMet") # only central value # Only central values are available configure_slimmedmet_(process.slimmedMETs) process.slimmedJetsNewJEC = process.selectedPatJetsAK4PFCHS.clone() process.slimmedMETsNewJEC = process.slimmedMETs.clone() return ('slimmedJetsNewJEC', 'slimmedMETsNewJEC')
from JetMETCorrections.Configuration.JetCorrectors_cff import ak4PFCHSL1FastL2L3ResidualCorrectorChain,ak4PFCHSL1FastL2L3ResidualCorrector,ak4PFCHSResidualCorrector,ak4PFCHSL3AbsoluteCorrector,ak4PFCHSL2RelativeCorrector,ak4PFCHSL1FastjetCorrector dqmAk4PFCHSL1FastL2L3ResidualCorrector = ak4PFCHSL1FastL2L3ResidualCorrector.clone() dqmAk4PFCHSL1FastL2L3ResidualCorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector*ak4PFCHSResidualCorrector dqmAk4PFCHSL1FastL2L3ResidualCorrector ) jetPreDQMSeq=cms.Sequence(ak4CaloL2RelativeCorrector*ak4CaloL3AbsoluteCorrector*ak4CaloResidualCorrector* ak4PFL1FastjetCorrector*ak4PFL2RelativeCorrector*ak4PFL3AbsoluteCorrector*ak4PFResidualCorrector* ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector*ak4PFCHSResidualCorrector) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1=corrPfMetType1.clone(jetCorrLabel = cms.InputTag('dqmAk4PFL1FastL2L3ResidualCorrector')) pfMETT1=pfMetT1.clone(srcCorrections = cms.VInputTag( cms.InputTag('dqmCorrPfMetType1', 'type1') )) jetMETDQMOfflineSource = cms.Sequence(HBHENoiseFilterResultProducer*goodOfflinePrimaryVerticesDQM*AnalyzeSUSYDQM*QGTagger* pileupJetIdCalculatorCHSDQM*pileupJetIdEvaluatorCHSDQM* pileupJetIdCalculatorDQM*pileupJetIdEvaluatorDQM* jetPreDQMSeq* dqmAk4CaloL2L3ResidualCorrectorChain*dqmAk4PFL1FastL2L3ResidualCorrectorChain*dqmAk4PFCHSL1FastL2L3ResidualCorrectorChain* dqmCorrPfMetType1*pfMETT1* jetDQMAnalyzerSequence*METDQMAnalyzerSequence) jetMETDQMOfflineSourceMiniAOD = cms.Sequence(goodOfflinePrimaryVerticesDQMforMiniAOD*jetDQMAnalyzerSequenceMiniAOD*METDQMAnalyzerSequenceMiniAOD)
def setup_nohf_met_(process, isData): from PhysicsTools.PatAlgos.tools.metTools import addMETCollection process.noHFCands = cms.EDFilter("CandPtrSelector", src=cms.InputTag("packedPFCandidates"), cut=cms.string("abs(pdgId)!=1 && abs(pdgId)!=2 && abs(eta)<3.0") ) if not isData and not hasattr(process, 'genMetExtractor'): process.genMetExtractor = cms.EDProducer("GenMETExtractor", metSource = cms.InputTag("slimmedMETs", "" , cms.InputTag.skipCurrentProcess()) ) if not hasattr(process, 'pfMet'): from RecoMET.METProducers.PFMET_cfi import pfMet process.pfMetNoHF = pfMet.clone() else: process.pfMetNoHF = process.pfMet.clone() process.pfMetNoHF.calculateSignificance = False process.pfMetNoHF.src = cms.InputTag('noHFCands') addMETCollection(process, labelName='patPFMetNoHF', metSource='pfMetNoHF') # RAW MET process.patPFMetNoHF.addGenMET = False ## Type 1 corrections if not hasattr(process, 'ak4PFCHSL1FastL2L3Corrector'): process.load('JetMETCorrections.Configuration.JetCorrectors_cff') from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 if not hasattr(process, 'ak4PFJetsCHS'): print("WARNING: No AK4 CHS jets produced. Type 1 corrections for MET are not available.") else: if not hasattr(process, 'corrPfMetType1'): process.corrPfMetType1 = corrPfMetType1.clone( src = 'ak4PFJetsCHS', jetCorrLabel = 'ak4PFCHSL1FastL2L3Corrector' if not isData else 'ak4PFCHSL1FastL2L3ResidualCorrector', offsetCorrLabel = 'ak4PFCHSL1FastjetCorrector' ) process.pfMetT1NoHF = pfMetT1.clone( src = 'pfMetNoHF', srcCorrections = [cms.InputTag("corrPfMetType1", "type1")] ) addMETCollection(process, labelName='patMETNoHF', metSource='pfMetT1NoHF') # T1 MET process.patMETNoHF.addGenMET = False ## Slimmed METs from PhysicsTools.PatAlgos.slimming.slimmedMETs_cfi import slimmedMETs #### CaloMET is not available in MiniAOD if hasattr(slimmedMETs, 'caloMET'): del slimmedMETs.caloMET process.slimmedMETsNoHF = slimmedMETs.clone() if hasattr(process, "patMETNoHF"): # Create MET from Type 1 PF collection process.patMETNoHF.addGenMET = not isData if not isData: process.patMETNoHF.genMETSource = cms.InputTag("genMetExtractor") process.slimmedMETsNoHF.src = cms.InputTag("patMETNoHF") process.slimmedMETsNoHF.rawUncertainties = cms.InputTag("patPFMetNoHF") # only central value else: # Create MET from RAW PF collection process.patPFMetNoHF.addGenMET = not isData if not isData: process.patPFMetNoHF.genMETSource = cms.InputTag("genMetExtractor") process.slimmedMETsNoHF.src = cms.InputTag("patPFMetNoHF") del process.slimmedMETsNoHF.rawUncertainties # not available del process.slimmedMETsNoHF.type1Uncertainties # not available del process.slimmedMETsNoHF.type1p2Uncertainties # not available
def setup_met_(process, isData): from PhysicsTools.PatAlgos.tools.metTools import addMETCollection ## Gen MET if not isData: process.genMetExtractor = cms.EDProducer("GenMETExtractor", metSource = cms.InputTag("slimmedMETs", "" , cms.InputTag.skipCurrentProcess()) ) # MET is done from all PF candidates, and Type-I corrections are computed from CHS ak4 PF jets # https://twiki.cern.ch/twiki/bin/viewauth/CMS/MissingETRun2Corrections#type_1_PF_MET_recommended ## Raw PF METs process.load('RecoMET.METProducers.PFMET_cfi') process.pfMet.src = cms.InputTag('packedPFCandidates') addMETCollection(process, labelName='patPFMet', metSource='pfMet') # RAW MET process.patPFMet.addGenMET = False ## Type 1 corrections process.load('JetMETCorrections.Configuration.JetCorrectors_cff') from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 if not hasattr(process, 'ak4PFJetsCHS'): print("WARNING: No AK4 CHS jets produced. Type 1 corrections for MET are not available.") else: process.corrPfMetType1 = corrPfMetType1.clone( src = 'ak4PFJetsCHS', jetCorrLabel = 'ak4PFCHSL1FastL2L3Corrector' if not isData else 'ak4PFCHSL1FastL2L3ResidualCorrector', offsetCorrLabel = 'ak4PFCHSL1FastjetCorrector' ) process.pfMetT1 = pfMetT1.clone( src = 'pfMet', srcCorrections = [cms.InputTag("corrPfMetType1", "type1")] ) addMETCollection(process, labelName='patMET', metSource='pfMetT1') # T1 MET process.patMET.addGenMET = False ## Slimmed METs from PhysicsTools.PatAlgos.slimming.slimmedMETs_cfi import slimmedMETs #### CaloMET is not available in MiniAOD del slimmedMETs.caloMET process.slimmedMETs = slimmedMETs.clone() if hasattr(process, "patMET"): # Create MET from Type 1 PF collection process.patMET.addGenMET = not isData if not isData: process.patMET.genMETSource = cms.InputTag("genMetExtractor") process.slimmedMETs.src = cms.InputTag("patMET") process.slimmedMETs.rawUncertainties = cms.InputTag("patPFMet") # only central value else: # Create MET from RAW PF collection process.patPFMet.addGenMET = not isData if not isData: process.patPFMet.genMETSource = cms.InputTag("genMetExtractor") process.slimmedMETs.src = cms.InputTag("patPFMet") del process.slimmedMETs.rawUncertainties # not available del process.slimmedMETs.type1Uncertainties # not available del process.slimmedMETs.type1p2Uncertainties # not available
from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT0pc,pfMetT0pcT1,pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 from JetMETCorrections.Configuration.JetCorrectors_cff import ak4PFL1FastL2L3CorrectorChain,ak4PFL1FastL2L3Corrector,ak4PFL3AbsoluteCorrector,ak4PFL2RelativeCorrector,ak4PFL1FastjetCorrector newAK4PFL1FastL2L3Corrector = ak4PFL1FastL2L3Corrector.clone() newAK4PFL1FastL2L3CorrectorChain = cms.Sequence( #ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector * newAK4PFL1FastL2L3Corrector ) metPreValidSeq=cms.Sequence(ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector) valCorrPfMetType1=corrPfMetType1.clone(jetCorrLabel = cms.InputTag('newAK4PFL1FastL2L3Corrector')) PfMetT1=pfMetT1.clone(srcCorrections = cms.VInputTag( cms.InputTag('valCorrPfMetType1', 'type1') )) PfMetT0pcT1=pfMetT0pcT1.clone( srcCorrections = cms.VInputTag( cms.InputTag('corrPfMetType0PfCand'), cms.InputTag('valCorrPfMetType1', 'type1') ) ) METRelValSequence = cms.Sequence( metAnalyzer* pfMetAnalyzer* genMetTrueAnalyzer*
from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT0pc,pfMetT0pcT1,pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 from JetMETCorrections.Configuration.JetCorrectors_cff import ak4PFL1FastL2L3CorrectorChain,ak4PFL1FastL2L3Corrector,ak4PFL3AbsoluteCorrector,ak4PFL2RelativeCorrector,ak4PFL1FastjetCorrector newAK4PFL1FastL2L3Corrector = ak4PFL1FastL2L3Corrector.clone() newAK4PFL1FastL2L3CorrectorChain = cms.Sequence( #ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector * newAK4PFL1FastL2L3Corrector ) metPreValidSeq=cms.Sequence(ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector) valCorrPfMetType1=corrPfMetType1.clone(jetCorrLabel = cms.InputTag('newAK4PFL1FastL2L3Corrector')) PfMetT1=pfMetT1.clone(srcCorrections = cms.VInputTag( cms.InputTag('valCorrPfMetType1', 'type1') )) PfMetT0pcT1=pfMetT0pcT1.clone( srcCorrections = cms.VInputTag( cms.InputTag('corrPfMetType0PfCand'), cms.InputTag('valCorrPfMetType1', 'type1') ) ) METRelValSequence = cms.Sequence( metAnalyzer* #metHOAnalyzer*
newAK4PFCHSL1FastL2L3Corrector = ak4PFCHSL1FastL2L3Corrector.clone() newAK4PFCHSL1FastL2L3CorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector * newAK4PFCHSL1FastL2L3Corrector ) newAK4PFCHSL1FastL2L3ResidualCorrector = ak4PFCHSL1FastL2L3ResidualCorrector.clone() newAK4PFCHSL1FastL2L3ResidualCorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector * newAK4PFCHSL1FastL2L3ResidualCorrector ) metPreValidSeq=cms.Sequence(ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector * ak4PFCHSResidualCorrector) valCorrPfMetType1=corrPfMetType1.clone(jetCorrLabel = cms.InputTag('newAK4PFCHSL1FastL2L3Corrector'), jetCorrLabelRes = cms.InputTag('newAK4PFCHSL1FastL2L3ResidualCorrector') ) PfMetT1=pfMetT1.clone(srcCorrections = cms.VInputTag( cms.InputTag('valCorrPfMetType1', 'type1') )) PfMetT0pcT1=pfMetT0pcT1.clone( srcCorrections = cms.VInputTag( cms.InputTag('corrPfMetType0PfCand'), cms.InputTag('valCorrPfMetType1', 'type1') ) ) METRelValSequence = cms.Sequence( metAnalyzer*
newAK4PFCHSL1FastL2L3Corrector) newAK4PFCHSL1FastL2L3ResidualCorrector = ak4PFCHSL1FastL2L3ResidualCorrector.clone( ) newAK4PFCHSL1FastL2L3ResidualCorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector * newAK4PFCHSL1FastL2L3ResidualCorrector) metPreValidSeqTask = cms.Task(ak4PFCHSL1FastjetCorrector, ak4PFCHSL2RelativeCorrector, ak4PFCHSL3AbsoluteCorrector, ak4PFCHSResidualCorrector) metPreValidSeq = cms.Sequence(metPreValidSeqTask) valCorrPfMetType1 = corrPfMetType1.clone( jetCorrLabel='newAK4PFCHSL1FastL2L3Corrector', jetCorrLabelRes='newAK4PFCHSL1FastL2L3ResidualCorrector') PfMetT1 = pfMetT1.clone( srcCorrections=cms.VInputTag('valCorrPfMetType1:type1')) PfMetT0pcT1 = pfMetT0pcT1.clone(srcCorrections=cms.VInputTag( 'corrPfMetType0PfCand', 'valCorrPfMetType1:type1')) METRelValSequence = cms.Sequence( metAnalyzer * pfMetAnalyzer * genMetTrueAnalyzer * correctionTermsPfMetType0PFCandidateForValidation * newAK4PFCHSL1FastL2L3CorrectorChain * newAK4PFCHSL1FastL2L3ResidualCorrectorChain * valCorrPfMetType1 * pfMetT0pc * PfMetT1 * PfMetT0pcT1 * pfType0CorrectedMetAnalyzer * pfType1CorrectedMetAnalyzer * pfType01CorrectedMetAnalyzer)
dqmAk4PFCHSL1FastL2L3CorrectorChain = cms.Sequence( #ak4PFCHSL1FastjetCorrector*ak4PFCHSL2RelativeCorrector*ak4PFCHSL3AbsoluteCorrector dqmAk4PFCHSL1FastL2L3Corrector) jetPreDQMSeq = cms.Sequence( ak4CaloL2RelativeCorrector * ak4CaloL3AbsoluteCorrector * ak4PFL1FastjetCorrector * ak4PFL2RelativeCorrector * ak4PFL3AbsoluteCorrector * ak4PFCHSL1FastjetCorrector * ak4PFCHSL2RelativeCorrector * ak4PFCHSL3AbsoluteCorrector) from JetMETCorrections.Type1MET.correctedMet_cff import pfMetT1 from JetMETCorrections.Type1MET.correctionTermsPfMetType0PFCandidate_cff import * from JetMETCorrections.Type1MET.correctionTermsPfMetType1Type2_cff import corrPfMetType1 dqmCorrPfMetType1 = corrPfMetType1.clone( jetCorrLabel=cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector'), jetCorrLabelRes=cms.InputTag('dqmAk4PFCHSL1FastL2L3Corrector' )) #residuals not used for simulation anyway pfMETT1 = pfMetT1.clone( srcCorrections=cms.VInputTag(cms.InputTag('dqmCorrPfMetType1', 'type1'))) jetDQMAnalyzerAk4CaloUncleanedMC = jetDQMAnalyzerAk4CaloUncleaned.clone( JetCorrections=cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4CaloCleanedMC = jetDQMAnalyzerAk4CaloCleaned.clone( JetCorrections=cms.InputTag("dqmAk4CaloL2L3Corrector")) jetDQMAnalyzerAk4PFUncleanedMC = jetDQMAnalyzerAk4PFUncleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCleanedMC = jetDQMAnalyzerAk4PFCleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFL1FastL2L3Corrector")) jetDQMAnalyzerAk4PFCHSCleanedMC = jetDQMAnalyzerAk4PFCHSCleaned.clone( JetCorrections=cms.InputTag("dqmAk4PFCHSL1FastL2L3Corrector"))