File indexing completed on 2025-03-14 23:36:34
0001 import FWCore.ParameterSet.Config as cms
0002 from PhysicsTools.NanoAOD.common_cff import *
0003 from PhysicsTools.NanoAOD.simplePATMETFlatTableProducer_cfi import simplePATMETFlatTableProducer
0004
0005 simpleSingletonPATMETFlatTableProducer = simplePATMETFlatTableProducer.clone(
0006 singleton = cms.bool(True),
0007 cut = None,
0008 lazyEval = None
0009 )
0010
0011
0012 pfmetTable = simpleSingletonPATMETFlatTableProducer.clone(
0013 src = cms.InputTag("slimmedMETs"),
0014 name = cms.string("PFMET"),
0015 doc = cms.string("slimmedMET, type-1 corrected PF MET"),
0016 variables = cms.PSet(PTVars,
0017 covXX = Var("getSignificanceMatrix().At(0,0)",float,doc="xx element of met covariance matrix", precision=8),
0018 covXY = Var("getSignificanceMatrix().At(0,1)",float,doc="xy element of met covariance matrix", precision=8),
0019 covYY = Var("getSignificanceMatrix().At(1,1)",float,doc="yy element of met covariance matrix", precision=8),
0020 significance = Var("metSignificance()", float, doc="MET significance",precision=10),
0021 sumEt = Var("sumEt()", float, doc="scalar sum of Et",precision=10),
0022 sumPtUnclustered = Var("metSumPtUnclustered()", float, doc="sumPt used for MET significance",precision=10),
0023 ptUnclusteredUp = Var("shiftedPt('UnclusteredEnUp')", float, doc="Unclustered up pt",precision=10),
0024 ptUnclusteredDown = Var("shiftedPt('UnclusteredEnDown')", float, doc="Unclustered down pt",precision=10),
0025 phiUnclusteredUp = Var("shiftedPhi('UnclusteredEnUp')", float, doc="Unclustered up phi",precision=10),
0026 phiUnclusteredDown = Var("shiftedPhi('UnclusteredEnDown')", float, doc="Unclustered down phi",precision=10),
0027 ),
0028 )
0029
0030
0031 rawMetTable = simpleSingletonPATMETFlatTableProducer.clone(
0032 src = pfmetTable.src,
0033 name = cms.string("RawPFMET"),
0034 doc = cms.string("raw PF MET"),
0035 variables = cms.PSet(
0036 pt = Var("uncorPt", float, doc="pt", precision=-1),
0037 phi = Var("uncorPhi", float, doc="phi", precision=12),
0038 sumEt = Var("uncorSumEt", float, doc="scalar sum of Et", precision=12),
0039 ),
0040 )
0041
0042
0043 caloMetTable = simpleSingletonPATMETFlatTableProducer.clone(
0044 src = pfmetTable.src,
0045 name = cms.string("CaloMET"),
0046 doc = cms.string("Offline CaloMET (muon corrected)"),
0047 variables = cms.PSet(
0048 pt = Var("caloMETPt", float, doc="pt", precision=10),
0049 phi = Var("caloMETPhi", float, doc="phi", precision=10),
0050 sumEt = Var("caloMETSumEt", float, doc="scalar sum of Et", precision=10),
0051 ),
0052 )
0053
0054 puppiMetTable = simpleSingletonPATMETFlatTableProducer.clone(
0055 src = cms.InputTag("slimmedMETsPuppi"),
0056 name = cms.string("PuppiMET"),
0057 doc = cms.string("PUPPI MET"),
0058 variables = cms.PSet(PTVars,
0059 covXX = Var("getSignificanceMatrix().At(0,0)",float,doc="xx element of met covariance matrix", precision=8),
0060 covXY = Var("getSignificanceMatrix().At(0,1)",float,doc="xy element of met covariance matrix", precision=8),
0061 covYY = Var("getSignificanceMatrix().At(1,1)",float,doc="yy element of met covariance matrix", precision=8),
0062 significance = Var("metSignificance()", float, doc="MET significance",precision=10),
0063 sumEt = Var("sumEt()", float, doc="scalar sum of Et",precision=10),
0064 sumPtUnclustered = Var("metSumPtUnclustered()", float, doc="sumPt used for MET significance",precision=10),
0065 ptUnclusteredUp = Var("shiftedPt('UnclusteredEnUp')", float, doc="Unclustered up pt",precision=10),
0066 ptUnclusteredDown = Var("shiftedPt('UnclusteredEnDown')", float, doc="Unclustered down pt",precision=10),
0067 phiUnclusteredUp = Var("shiftedPhi('UnclusteredEnUp')", float, doc="Unclustered up phi",precision=10),
0068 phiUnclusteredDown = Var("shiftedPhi('UnclusteredEnDown')", float, doc="Unclustered down phi",precision=10),
0069 ),
0070 )
0071
0072 rawPuppiMetTable = simpleSingletonPATMETFlatTableProducer.clone(
0073 src = puppiMetTable.src,
0074 name = cms.string("RawPuppiMET"),
0075 doc = cms.string("raw Puppi MET"),
0076 variables = cms.PSet(
0077 pt = Var("uncorPt", float, doc="pt", precision=-1),
0078 phi = Var("uncorPhi", float, doc="phi", precision=12),
0079 sumEt = Var("uncorSumEt", float, doc="scalar sum of Et", precision=12),
0080 ),
0081 )
0082
0083 trkMetTable = simpleSingletonPATMETFlatTableProducer.clone(
0084 src = pfmetTable.src,
0085 name = cms.string("TrkMET"),
0086 doc = cms.string("Track MET computed with tracks from PV0 ( pvAssociationQuality()>=4 ) "),
0087 variables = cms.PSet(
0088 pt = Var("corPt('RawTrk')", float, doc="raw track MET pt",precision=10),
0089 phi = Var("corPhi('RawTrk')", float, doc="raw track MET phi",precision=10),
0090 sumEt = Var("corSumEt('RawTrk')", float, doc="raw track scalar sum of Et",precision=10),
0091 ),
0092 )
0093
0094 deepMetResolutionTuneTable = simpleSingletonPATMETFlatTableProducer.clone(
0095
0096
0097 src = pfmetTable.src,
0098 name = cms.string("DeepMETResolutionTune"),
0099 doc = cms.string("Deep MET trained with resolution tune"),
0100 variables = cms.PSet(
0101 pt = Var("corPt('RawDeepResolutionTune')", float, doc="DeepMET ResolutionTune pt",precision=-1),
0102 phi = Var("corPhi('RawDeepResolutionTune')", float, doc="DeepmET ResolutionTune phi",precision=12),
0103 ),
0104 )
0105
0106 deepMetResponseTuneTable = simpleSingletonPATMETFlatTableProducer.clone(
0107 src = pfmetTable.src,
0108 name = cms.string("DeepMETResponseTune"),
0109 doc = cms.string("Deep MET trained with extra response tune"),
0110 variables = cms.PSet(
0111 pt = Var("corPt('RawDeepResponseTune')", float, doc="DeepMET ResponseTune pt",precision=-1),
0112 phi = Var("corPhi('RawDeepResponseTune')", float, doc="DeepMET ResponseTune phi",precision=12),
0113 ),
0114 )
0115
0116 metMCTable = simpleSingletonPATMETFlatTableProducer.clone(
0117 src = pfmetTable.src,
0118 name = cms.string("GenMET"),
0119 doc = cms.string("Gen MET"),
0120 variables = cms.PSet(
0121 pt = Var("genMET.pt", float, doc="pt", precision=10),
0122 phi = Var("genMET.phi", float, doc="phi", precision=10),
0123 ),
0124 )
0125
0126
0127 metTablesTask = cms.Task(pfmetTable, rawMetTable, caloMetTable, puppiMetTable, rawPuppiMetTable, trkMetTable,
0128 deepMetResolutionTuneTable, deepMetResponseTuneTable )
0129 metMCTask = cms.Task( metMCTable )