Fork me on GitHub

source: svn/trunk/examples/delphes_card_CMS_NoVFC.tcl@ 1307

Last change on this file since 1307 was 1302, checked in by Pavel Demin, 11 years ago

synchronize delphes_card_CMS_NoVFC.tcl with other CMS cards

File size: 17.3 KB
RevLine 
[1074]1#######################################
2# Order of execution of various modules
3#######################################
4
5set ExecutionPath {
6 ParticlePropagator
7
8 ChargedHadronTrackingEfficiency
9 ElectronTrackingEfficiency
10 MuonTrackingEfficiency
11
12 ChargedHadronMomentumSmearing
13 ElectronEnergySmearing
14 MuonMomentumSmearing
15
16 TrackMerger
17 Calorimeter
18 EFlowMerger
19
20 PhotonEfficiency
21 PhotonIsolation
22
23 ElectronEfficiency
24 ElectronIsolation
25
26 MuonEfficiency
27 MuonIsolation
28
29 MissingET
30
31 GenJetFinder
32 FastJetFinder
33
[1302]34 JetEnergyScale
[1074]35
36 BTagging
37 TauTagging
38
39 UniqueObjectFinder
40
41 ScalarHT
42
43 TreeWriter
44}
45
46#################################
47# Propagate particles in cylinder
48#################################
49
50module ParticlePropagator ParticlePropagator {
51 set InputArray Delphes/stableParticles
52
53 set OutputArray stableParticles
54 set ChargedHadronOutputArray chargedHadrons
55 set ElectronOutputArray electrons
56 set MuonOutputArray muons
57
58 # radius of the magnetic field coverage, in m
59 set Radius 1.29
60 # half-length of the magnetic field coverage, in m
61 set HalfLength 3.00
62
63 # magnetic field
64 set Bz 3.8
65}
66
67####################################
68# Charged hadron tracking efficiency
69####################################
70
71module Efficiency ChargedHadronTrackingEfficiency {
72 set InputArray ParticlePropagator/chargedHadrons
73 set OutputArray chargedHadrons
74
75 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
76
77 # tracking efficiency formula for charged hadrons
78 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
79 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
80 (abs(eta) <= 1.5) * (pt > 1.0) * (0.95) + \
81 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.60) + \
82 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.85) + \
83 (abs(eta) > 2.5) * (0.00)}
84}
85
86##############################
87# Electron tracking efficiency
88##############################
89
90module Efficiency ElectronTrackingEfficiency {
91 set InputArray ParticlePropagator/electrons
92 set OutputArray electrons
93
94 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
95
96 # tracking efficiency formula for electrons
97 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
98 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.73) + \
99 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e2) * (0.95) + \
100 (abs(eta) <= 1.5) * (pt > 1.0e2) * (0.99) + \
101 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.50) + \
102 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e2) * (0.83) + \
103 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.90) + \
104 (abs(eta) > 2.5) * (0.00)}
105}
106
107##########################
108# Muon tracking efficiency
109##########################
110
111module Efficiency MuonTrackingEfficiency {
112 set InputArray ParticlePropagator/muons
113 set OutputArray muons
114
115 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
116
117 # tracking efficiency formula for muons
118 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
119 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) + \
120 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) + \
121 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
122 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.98) + \
123 (abs(eta) > 2.5) * (0.00)}
124}
125
126########################################
127# Momentum resolution for charged tracks
128########################################
129
130module MomentumSmearing ChargedHadronMomentumSmearing {
131 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
132 set OutputArray chargedHadrons
133
134 # set ResolutionFormula {resolution formula as a function of eta and pt}
135
136 # resolution formula for charged hadrons
137 set ResolutionFormula { (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.02) + \
138 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e1) * (0.01) + \
139 (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
140 (abs(eta) <= 1.5) * (pt > 2.0e2) * (0.05) + \
141 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.03) + \
142 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e1) * (0.02) + \
143 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
144 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2) * (0.05)}
145}
146
147#################################
148# Energy resolution for electrons
149#################################
150
151module EnergySmearing ElectronEnergySmearing {
152 set InputArray ElectronTrackingEfficiency/electrons
153 set OutputArray electrons
154
155 # set ResolutionFormula {resolution formula as a function of eta and energy}
156
[1302]157 # resolution formula for electrons
158 set ResolutionFormula { (abs(eta) <= 2.5) * (energy > 0.1 && energy <= 2.0e1) * (energy*0.0225) + \
159 (abs(eta) <= 2.5) * (energy > 2.0e1) * sqrt(energy^2*0.007^2 + energy*0.07^2 + 0.35^2) + \
160 (abs(eta) > 2.5 && abs(eta) <= 3.0) * sqrt(energy^2*0.007^2 + energy*0.07^2 + 0.35^2)}
[1074]161
162}
163
164###############################
165# Momentum resolution for muons
166###############################
167
168module MomentumSmearing MuonMomentumSmearing {
169 set InputArray MuonTrackingEfficiency/muons
170 set OutputArray muons
171
172 # set ResolutionFormula {resolution formula as a function of eta and pt}
173
174 # resolution formula for muons
[1302]175 set ResolutionFormula { (abs(eta) <= 0.5) * (pt > 0.1 && pt <= 5.0) * (0.02) + \
176 (abs(eta) <= 0.5) * (pt > 5.0 && pt <= 1.0e2) * (0.015) + \
177 (abs(eta) <= 0.5) * (pt > 1.0e2) * (0.03) + \
178 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1 && pt <= 5.0) * (0.03) + \
179 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 5.0 && pt <= 1.0e2) * (0.02) + \
180 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 1.0e2) * (0.04) + \
181 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 5.0) * (0.04) + \
182 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 5.0 && pt <= 1.0e2) * (0.035) + \
183 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.05)}
[1074]184}
185
186##############
187# Track merger
188##############
189
190module Merger TrackMerger {
191# add InputArray InputArray
192 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
193 add InputArray ElectronEnergySmearing/electrons
[1302]194 add InputArray MuonMomentumSmearing/muons
[1074]195 set OutputArray tracks
196}
197
198#############
199# Calorimeter
200#############
201
202module Calorimeter Calorimeter {
203 set ParticleInputArray ParticlePropagator/stableParticles
204 set TrackInputArray TrackMerger/tracks
205
206 set TowerOutputArray towers
207 set PhotonOutputArray photons
208
209 set EFlowTrackOutputArray eflowTracks
210 set EFlowTowerOutputArray eflowTowers
211
212 set pi [expr {acos(-1)}]
213
214 # lists of the edges of each tower in eta and phi
215 # each list starts with the lower edge of the first tower
216 # the list ends with the higher edged of the last tower
217
218 # 5 degrees towers
219 set PhiBins {}
220 for {set i -36} {$i <= 36} {incr i} {
221 add PhiBins [expr {$i * $pi/36.0}]
222 }
223 foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
224 add EtaPhiBins $eta $PhiBins
225 }
226
227 # 10 degrees towers
228 set PhiBins {}
229 for {set i -18} {$i <= 18} {incr i} {
230 add PhiBins [expr {$i * $pi/18.0}]
231 }
232 foreach eta {-3.0 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 3.0} {
233 add EtaPhiBins $eta $PhiBins
234 }
235
236 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
237 add EnergyFraction {0} {0.0 1.0}
238 # energy fractions for e, gamma and pi0
239 add EnergyFraction {11} {1.0 0.0}
240 add EnergyFraction {22} {1.0 0.0}
241 add EnergyFraction {111} {1.0 0.0}
[1076]242 # energy fractions for muon, neutrinos and neutralinos
[1074]243 add EnergyFraction {12} {0.0 0.0}
244 add EnergyFraction {13} {0.0 0.0}
245 add EnergyFraction {14} {0.0 0.0}
246 add EnergyFraction {16} {0.0 0.0}
[1076]247 add EnergyFraction {1000022} {0.0 0.0}
248 add EnergyFraction {1000023} {0.0 0.0}
249 add EnergyFraction {1000025} {0.0 0.0}
250 add EnergyFraction {1000035} {0.0 0.0}
251 add EnergyFraction {1000045} {0.0 0.0}
[1074]252 # energy fractions for K0short and Lambda
253 add EnergyFraction {310} {0.3 0.7}
254 add EnergyFraction {3122} {0.3 0.7}
255
256 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
[1302]257 set ECalResolutionFormula {sqrt(energy^2*0.007^2 + energy*0.07^2 + 0.35^2)}
[1074]258
259 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
260 set HCalResolutionFormula {sqrt(energy^2*0.050^2 + energy*1.50^2)}
261}
262
263####################
264# Energy flow merger
265####################
266
267module Merger EFlowMerger {
268# add InputArray InputArray
269 add InputArray Calorimeter/eflowTracks
270 add InputArray Calorimeter/eflowTowers
271 set OutputArray eflow
272}
273
274###################
275# Photon efficiency
276###################
277
278module Efficiency PhotonEfficiency {
279 set InputArray Calorimeter/photons
280 set OutputArray photons
281
282 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
283
284 # efficiency formula for photons
285 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
286 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
287 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) + \
288 (abs(eta) > 2.5) * (0.00)}
289}
290
291##################
292# Photon isolation
293##################
294
295module Isolation PhotonIsolation {
296 set CandidateInputArray PhotonEfficiency/photons
297 set IsolationInputArray EFlowMerger/eflow
298
299 set OutputArray photons
300
301 set DeltaRMax 0.5
302
303 set PTMin 0.5
304
305 set PTRatioMax 0.1
306}
307
308#####################
309# Electron efficiency
310#####################
311
312module Efficiency ElectronEfficiency {
313 set InputArray ElectronEnergySmearing/electrons
314 set OutputArray electrons
315
316 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
317
318 # efficiency formula for electrons
319 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
320 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
321 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) + \
322 (abs(eta) > 2.5) * (0.00)}
323}
324
325####################
326# Electron isolation
327####################
328
329module Isolation ElectronIsolation {
330 set CandidateInputArray ElectronEfficiency/electrons
331 set IsolationInputArray EFlowMerger/eflow
332
333 set OutputArray electrons
334
335 set DeltaRMax 0.5
336
337 set PTMin 0.5
338
339 set PTRatioMax 0.1
340}
341
342#################
343# Muon efficiency
344#################
345
346module Efficiency MuonEfficiency {
347 set InputArray MuonMomentumSmearing/muons
348 set OutputArray muons
349
350 # set EfficiencyFormula {efficiency as a function of eta and pt}
351
352 # efficiency formula for muons
353 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
354 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
355 (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0) * (0.85) + \
356 (abs(eta) > 2.4) * (0.00)}
357}
358
359################
360# Muon isolation
361################
362
363module Isolation MuonIsolation {
364 set CandidateInputArray MuonEfficiency/muons
365 set IsolationInputArray EFlowMerger/eflow
366
367 set OutputArray muons
368
369 set DeltaRMax 0.5
370
371 set PTMin 0.5
372
373 set PTRatioMax 0.1
374}
375
376###################
377# Missing ET merger
378###################
379
380module Merger MissingET {
381# add InputArray InputArray
[1302]382 add InputArray Calorimeter/eflowTracks
383 add InputArray Calorimeter/eflowTowers
[1074]384 set MomentumOutputArray momentum
385}
386
387##################
388# Scalar HT merger
389##################
390
391module Merger ScalarHT {
392# add InputArray InputArray
393 add InputArray UniqueObjectFinder/jets
394 add InputArray UniqueObjectFinder/electrons
395 add InputArray UniqueObjectFinder/photons
[1302]396 add InputArray UniqueObjectFinder/muons
[1074]397 set EnergyOutputArray energy
398}
399
400#####################
401# MC truth jet finder
402#####################
403
404module FastJetFinder GenJetFinder {
405 set InputArray Delphes/stableParticles
406
407 set OutputArray jets
408
409 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
410 set JetAlgorithm 6
[1302]411 set ParameterR 0.5
[1074]412
413 set JetPTMin 20.0
414}
415
416############
417# Jet finder
418############
419
420module FastJetFinder FastJetFinder {
421# set InputArray Calorimeter/towers
422 set InputArray EFlowMerger/eflow
423
424 set OutputArray jets
425
426 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
427 set JetAlgorithm 6
[1302]428 set ParameterR 0.5
[1074]429
430 set JetPTMin 20.0
431}
432
[1302]433##################
434# Jet Energy Scale
435##################
[1074]436
[1302]437module EnergyScale JetEnergyScale {
438 set InputArray FastJetFinder/jets
439 set OutputArray jets
[1074]440
[1302]441 # scale formula for jets
442 set ScaleFormula {1.08}
[1074]443}
444
445###########
446# b-tagging
447###########
448
449module BTagging BTagging {
450 set PartonInputArray Delphes/partons
[1302]451 set JetInputArray JetEnergyScale/jets
[1074]452
[1099]453 set BitNumber 0
454
[1074]455 set DeltaR 0.5
456
457 set PartonPTMin 1.0
458
459 set PartonEtaMax 2.5
460
461 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
462 # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
463 # gluon's PDG code has the lowest priority
464
465 # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
466 # default efficiency formula (misidentification rate)
467 add EfficiencyFormula {0} {0.001}
468
469 # efficiency formula for c-jets (misidentification rate)
470 add EfficiencyFormula {4} { (pt <= 15.0) * (0.000) + \
471 (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
472 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
473 (abs(eta) > 2.5) * (0.000)}
474
475 # efficiency formula for b-jets
476 add EfficiencyFormula {5} { (pt <= 15.0) * (0.000) + \
477 (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
478 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
479 (abs(eta) > 2.5) * (0.000)}
480}
481
482module TauTagging TauTagging {
483 set ParticleInputArray Delphes/allParticles
484 set PartonInputArray Delphes/partons
[1302]485 set JetInputArray JetEnergyScale/jets
[1074]486
487 set DeltaR 0.5
488
489 set TauPTMin 1.0
490
491 set TauEtaMax 2.5
492
493 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
494
495 # default efficiency formula (misidentification rate)
496 add EfficiencyFormula {0} {0.001}
497 # efficiency formula for tau-jets
498 add EfficiencyFormula {15} {0.4}
499}
500
501#####################################################
502# Find uniquely identified photons/electrons/tau/jets
503#####################################################
504
505module UniqueObjectFinder UniqueObjectFinder {
506# earlier arrays take precedence over later ones
507# add InputArray InputArray OutputArray
508 add InputArray PhotonIsolation/photons photons
509 add InputArray ElectronIsolation/electrons electrons
[1302]510 add InputArray MuonIsolation/muons muons
511 add InputArray JetEnergyScale/jets jets
[1074]512}
513
514##################
515# ROOT tree writer
516##################
517
518module TreeWriter TreeWriter {
519# add Branch InputArray BranchName BranchClass
520 add Branch Delphes/allParticles Particle GenParticle
521 add Branch TrackMerger/tracks Track Track
522 add Branch Calorimeter/towers Tower Tower
[1302]523 add Branch Calorimeter/eflowTracks EFlowTrack Track
524 add Branch Calorimeter/eflowTowers EFlowTower Tower
[1074]525 add Branch GenJetFinder/jets GenJet Jet
526 add Branch UniqueObjectFinder/jets Jet Jet
527 add Branch UniqueObjectFinder/electrons Electron Electron
528 add Branch UniqueObjectFinder/photons Photon Photon
[1302]529 add Branch UniqueObjectFinder/muons Muon Muon
[1074]530 add Branch MissingET/momentum MissingET MissingET
531 add Branch ScalarHT/energy ScalarHT ScalarHT
532}
533
Note: See TracBrowser for help on using the repository browser.