1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
import FWCore.ParameterSet.Config as cms
from HLTriggerOffline.Btag.hltBtagJetMCTools_cff import *
#denominator trigger
hltBtagTriggerSelection = cms.EDFilter( "TriggerResultsFilter",
triggerConditions = cms.vstring(
"HLT_PFMET120_PFMHT120_IDTight_v* OR HLT_PFHT330PT30_QuadPFJet_75_60_45_40_v* OR HLT_PFHT400_SixPFJet32_PNet2BTag* OR HLT_IsoMu24_eta2p1_v*"),
hltResults = cms.InputTag( "TriggerResults", "", "HLT" ),
# l1tResults = cms.InputTag( "simGtDigis" ),
l1tResults = cms.InputTag( "" ),
throw = cms.bool( False )
)
#correct the jet used for the matching
hltBtagJetsbyRef.jets = cms.InputTag("ak4GenJetsNoNu")
#define HltVertexValidationVertices for the vertex DQM validation
from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
HltVertexValidationVertices= DQMEDAnalyzer('HLTVertexPerformanceAnalyzer',
SimVertexCollection = cms.InputTag("g4SimHits"),
TriggerResults = cms.InputTag('TriggerResults','',"HLT"),
mainFolder = cms.string("HLT/BTV/Validation"),
HLTPathNames =cms.vstring(
'HLT_PFMET120_PFMHT120_IDTight_v',
'HLT_PFHT330PT30_QuadPFJet_75_60_45_40_v',
'HLT_PFHT400_SixPFJet32_PNet2BTagMean0p50_v',
'HLT_PFHT450_SixPFJet36_PNetBTag0p35_v',
'HLT_Mu8_TrkIsoVVL_Ele23_CaloIdL_TrackIdL_IsoVL_DZ_PFDiJet30_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
),
Vertex = cms.VInputTag(
cms.InputTag("hltVerticesPF"),
)
)
#define bTagValidation for the b-tag DQM validation (distribution plot)
hltbTagValidation = DQMEDAnalyzer('HLTBTagPerformanceAnalyzer',
TriggerResults = cms.InputTag('TriggerResults','','HLT'),
mainFolder = cms.string("HLT/BTV/Validation"),
HLTPathNames =cms.vstring(
'HLT_PFMET120_PFMHT120_IDTight_v',
'HLT_PFHT330PT30_QuadPFJet_75_60_45_40_v',
'HLT_PFHT400_SixPFJet32_PNet2BTagMean0p50_v',
'HLT_PFHT450_SixPFJet36_PNetBTag0p35_v',
'HLT_Mu8_TrkIsoVVL_Ele23_CaloIdL_TrackIdL_IsoVL_DZ_PFDiJet30_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
'HLT_BTagMu_AK4DiJet20_Mu5_v',
),
JetTag = cms.VInputTag(
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltBSoftMuonDiJet20L1FastJetL25Jets"),
cms.InputTag("hltDeepJetDiscriminatorsJetTags", "BvsAll"),
cms.InputTag("hltParticleNetDiscriminatorsJetTags", "BvsAll"),
),
MinJetPT = cms.double(20),
mcFlavours = cms.PSet(
light = cms.vuint32(1, 2, 3, 21), # udsg
c = cms.vuint32(4),
b = cms.vuint32(5),
g = cms.vuint32(21),
uds = cms.vuint32(1, 2, 3)
),
mcPartons = cms.InputTag("hltBtagJetsbyValAlgo")
)
#put all in a path
hltbtagValidationSequence = cms.Sequence(
# remove noisy warnings
# hltBtagTriggerSelection +
hltBtagJetMCTools +
HltVertexValidationVertices +
hltbTagValidation
)
# fastsim customs
from Configuration.Eras.Modifier_fastSim_cff import fastSim
fastSim.toModify(HltVertexValidationVertices, SimVertexCollection = "fastSimProducer")
# are these customs actually needed?
#HltVertexValidationVertices.HLTPathNames =cms.vstring(
#'HLT_PFMET120_NoiseCleaned_BTagCSV07_v',
#'HLT_PFMET120_NoiseCleaned_BTagCSV07_v',
# 'HLT_CaloMHTNoPU90_PFMET90_PFMHT90_IDLoose_',
# 'HLT_CaloMHTNoPU90_PFMET90_PFMHT90_IDLoose_',
# 'HLT_QuadPFJet_VBF',
# 'HLT_QuadPFJet_VBF',
# 'HLT_Ele32_eta2p1_',
# 'HLT_IsoMu24_eta2p1_')
#HltVertexValidationVertices.Vertex = cms.VInputTag(
# cms.InputTag("hltVerticesL3"),
# cms.InputTag("hltFastPVPixelVertices"),
# cms.InputTag("hltVerticesPF"),
#)
|