Fork me on GitHub

source: git/cards/delphes_card_CMS.tcl@ d67b86b

ImprovedOutputFile Timing dual_readout llp
Last change on this file since d67b86b was 934d037, checked in by Pavel Demin <pavel.demin@…>, 9 years ago

replace ElectronEnergySmearing with ElectronMomentumSmearing and add ElectronFilter

  • Property mode set to 100644
File size: 18.4 KB
Line 
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 ElectronMomentumSmearing
14 MuonMomentumSmearing
15
16 TrackMerger
17 Calorimeter
18 EFlowMerger
19
20 PhotonEfficiency
21 PhotonIsolation
22
23 ElectronFilter
24 ElectronEfficiency
25 ElectronIsolation
26
27 MuonEfficiency
28 MuonIsolation
29
30 MissingET
31
32 NeutrinoFilter
33 GenJetFinder
34 FastJetFinder
35
36 JetEnergyScale
37
38 JetFlavorAssociation
39
40 BTagging
41 TauTagging
42
43 UniqueObjectFinder
44
45 ScalarHT
46
47 TreeWriter
48}
49
50#################################
51# Propagate particles in cylinder
52#################################
53
54module ParticlePropagator ParticlePropagator {
55 set InputArray Delphes/stableParticles
56
57 set OutputArray stableParticles
58 set ChargedHadronOutputArray chargedHadrons
59 set ElectronOutputArray electrons
60 set MuonOutputArray muons
61
62 # radius of the magnetic field coverage, in m
63 set Radius 1.29
64 # half-length of the magnetic field coverage, in m
65 set HalfLength 3.00
66
67 # magnetic field
68 set Bz 3.8
69}
70
71####################################
72# Charged hadron tracking efficiency
73####################################
74
75module Efficiency ChargedHadronTrackingEfficiency {
76 set InputArray ParticlePropagator/chargedHadrons
77 set OutputArray chargedHadrons
78
79 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
80
81 # tracking efficiency formula for charged hadrons
82 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
83 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.70) +
84 (abs(eta) <= 1.5) * (pt > 1.0) * (0.95) +
85 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.60) +
86 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.85) +
87 (abs(eta) > 2.5) * (0.00)}
88}
89
90##############################
91# Electron tracking efficiency
92##############################
93
94module Efficiency ElectronTrackingEfficiency {
95 set InputArray ParticlePropagator/electrons
96 set OutputArray electrons
97
98 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
99
100 # tracking efficiency formula for electrons
101 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
102 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.73) +
103 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e2) * (0.95) +
104 (abs(eta) <= 1.5) * (pt > 1.0e2) * (0.99) +
105 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.50) +
106 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e2) * (0.83) +
107 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.90) +
108 (abs(eta) > 2.5) * (0.00)}
109}
110
111##########################
112# Muon tracking efficiency
113##########################
114
115module Efficiency MuonTrackingEfficiency {
116 set InputArray ParticlePropagator/muons
117 set OutputArray muons
118
119 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
120
121 # tracking efficiency formula for muons
122 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
123 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) +
124 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) +
125 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.70) +
126 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.98) +
127 (abs(eta) > 2.5) * (0.00)}
128}
129
130########################################
131# Momentum resolution for charged tracks
132########################################
133
134module MomentumSmearing ChargedHadronMomentumSmearing {
135 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
136 set OutputArray chargedHadrons
137
138 # set ResolutionFormula {resolution formula as a function of eta and pt}
139
140 # resolution formula for charged hadrons
141 # based on arXiv:1405.6569
142 set ResolutionFormula { (abs(eta) <= 0.5) * (pt > 0.1) * sqrt(0.06^2 + pt^2*1.3e-3^2) +
143 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1) * sqrt(0.10^2 + pt^2*1.7e-3^2) +
144 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1) * sqrt(0.25^2 + pt^2*3.1e-3^2)}
145}
146
147###################################
148# Momentum resolution for electrons
149###################################
150
151module MomentumSmearing ElectronMomentumSmearing {
152 set InputArray ElectronTrackingEfficiency/electrons
153 set OutputArray electrons
154
155 # set ResolutionFormula {resolution formula as a function of eta and energy}
156
157 # resolution formula for electrons
158 # based on arXiv:1405.6569
159 set ResolutionFormula { (abs(eta) <= 0.5) * (pt > 0.1) * sqrt(0.06^2 + pt^2*1.3e-3^2) +
160 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1) * sqrt(0.10^2 + pt^2*1.7e-3^2) +
161 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1) * sqrt(0.25^2 + pt^2*3.1e-3^2)}
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
175 set ResolutionFormula { (abs(eta) <= 0.5) * (pt > 0.1) * sqrt(0.01^2 + pt^2*2.0e-4^2) +
176 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1) * sqrt(0.02^2 + pt^2*3.0e-4^2) +
177 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1) * sqrt(0.05^2 + pt^2*6.0e-4^2)}
178}
179
180##############
181# Track merger
182##############
183
184module Merger TrackMerger {
185# add InputArray InputArray
186 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
187 add InputArray ElectronMomentumSmearing/electrons
188 add InputArray MuonMomentumSmearing/muons
189 set OutputArray tracks
190}
191
192#############
193# Calorimeter
194#############
195
196module Calorimeter Calorimeter {
197 set ParticleInputArray ParticlePropagator/stableParticles
198 set TrackInputArray TrackMerger/tracks
199
200 set TowerOutputArray towers
201 set PhotonOutputArray photons
202
203 set EFlowTrackOutputArray eflowTracks
204 set EFlowPhotonOutputArray eflowPhotons
205 set EFlowNeutralHadronOutputArray eflowNeutralHadrons
206
207 set ECalEnergyMin 0.5
208 set HCalEnergyMin 1.0
209
210 set ECalEnergySignificanceMin 1.0
211 set HCalEnergySignificanceMin 1.0
212
213 set SmearTowerCenter true
214
215 set pi [expr {acos(-1)}]
216
217 # lists of the edges of each tower in eta and phi
218 # each list starts with the lower edge of the first tower
219 # the list ends with the higher edged of the last tower
220
221 # 5 degrees towers
222 set PhiBins {}
223 for {set i -36} {$i <= 36} {incr i} {
224 add PhiBins [expr {$i * $pi/36.0}]
225 }
226 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} {
227 add EtaPhiBins $eta $PhiBins
228 }
229
230 # 10 degrees towers
231 set PhiBins {}
232 for {set i -18} {$i <= 18} {incr i} {
233 add PhiBins [expr {$i * $pi/18.0}]
234 }
235 foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -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 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
236 add EtaPhiBins $eta $PhiBins
237 }
238
239 # 20 degrees towers
240 set PhiBins {}
241 for {set i -9} {$i <= 9} {incr i} {
242 add PhiBins [expr {$i * $pi/9.0}]
243 }
244 foreach eta {-5 -4.7 -4.525 4.7 5} {
245 add EtaPhiBins $eta $PhiBins
246 }
247
248 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
249 add EnergyFraction {0} {0.0 1.0}
250 # energy fractions for e, gamma and pi0
251 add EnergyFraction {11} {1.0 0.0}
252 add EnergyFraction {22} {1.0 0.0}
253 add EnergyFraction {111} {1.0 0.0}
254 # energy fractions for muon, neutrinos and neutralinos
255 add EnergyFraction {12} {0.0 0.0}
256 add EnergyFraction {13} {0.0 0.0}
257 add EnergyFraction {14} {0.0 0.0}
258 add EnergyFraction {16} {0.0 0.0}
259 add EnergyFraction {1000022} {0.0 0.0}
260 add EnergyFraction {1000023} {0.0 0.0}
261 add EnergyFraction {1000025} {0.0 0.0}
262 add EnergyFraction {1000035} {0.0 0.0}
263 add EnergyFraction {1000045} {0.0 0.0}
264 # energy fractions for K0short and Lambda
265 add EnergyFraction {310} {0.3 0.7}
266 add EnergyFraction {3122} {0.3 0.7}
267
268 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
269 set ECalResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.007^2 + energy*0.07^2 + 0.35^2) +
270 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.107^2 + energy*2.08^2)}
271
272 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
273 set HCalResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.050^2 + energy*1.50^2) +
274 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.130^2 + energy*2.70^2)}
275}
276
277####################
278# Energy flow merger
279####################
280
281module Merger EFlowMerger {
282# add InputArray InputArray
283 add InputArray Calorimeter/eflowTracks
284 add InputArray Calorimeter/eflowPhotons
285 add InputArray Calorimeter/eflowNeutralHadrons
286 set OutputArray eflow
287}
288
289###################
290# Photon efficiency
291###################
292
293module Efficiency PhotonEfficiency {
294 set InputArray Calorimeter/eflowPhotons
295 set OutputArray photons
296
297 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
298
299 # efficiency formula for photons
300 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
301 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) +
302 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) +
303 (abs(eta) > 2.5) * (0.00)}
304}
305
306##################
307# Photon isolation
308##################
309
310module Isolation PhotonIsolation {
311 set CandidateInputArray PhotonEfficiency/photons
312 set IsolationInputArray EFlowMerger/eflow
313
314 set OutputArray photons
315
316 set DeltaRMax 0.5
317
318 set PTMin 0.5
319
320 set PTRatioMax 0.1
321}
322
323#################
324# Electron filter
325#################
326
327module PdgCodeFilter ElectronFilter {
328 set InputArray Calorimeter/eflowTracks
329 set OutputArray electrons
330 set Invert true
331 add PdgCode {11}
332 add PdgCode {-11}
333}
334
335#####################
336# Electron efficiency
337#####################
338
339module Efficiency ElectronEfficiency {
340 set InputArray ElectronFilter/electrons
341 set OutputArray electrons
342
343 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
344
345 # efficiency formula for electrons
346 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
347 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) +
348 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) +
349 (abs(eta) > 2.5) * (0.00)}
350}
351
352####################
353# Electron isolation
354####################
355
356module Isolation ElectronIsolation {
357 set CandidateInputArray ElectronEfficiency/electrons
358 set IsolationInputArray EFlowMerger/eflow
359
360 set OutputArray electrons
361
362 set DeltaRMax 0.5
363
364 set PTMin 0.5
365
366 set PTRatioMax 0.1
367}
368
369#################
370# Muon efficiency
371#################
372
373module Efficiency MuonEfficiency {
374 set InputArray MuonMomentumSmearing/muons
375 set OutputArray muons
376
377 # set EfficiencyFormula {efficiency as a function of eta and pt}
378
379 # efficiency formula for muons
380 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
381 (abs(eta) <= 1.5) * (pt > 10.0 && pt <= 1.0e3) * (0.95) +
382 (abs(eta) <= 1.5) * (pt > 1.0e3) * (0.95 * exp(0.5 - pt*5.0e-4)) +
383 (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0 && pt <= 1.0e3) * (0.95) +
384 (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 1.0e3) * (0.95 * exp(0.5 - pt*5.0e-4)) +
385 (abs(eta) > 2.4) * (0.00)}
386}
387
388################
389# Muon isolation
390################
391
392module Isolation MuonIsolation {
393 set CandidateInputArray MuonEfficiency/muons
394 set IsolationInputArray EFlowMerger/eflow
395
396 set OutputArray muons
397
398 set DeltaRMax 0.5
399
400 set PTMin 0.5
401
402 set PTRatioMax 0.1
403}
404
405###################
406# Missing ET merger
407###################
408
409module Merger MissingET {
410# add InputArray InputArray
411 add InputArray EFlowMerger/eflow
412 set MomentumOutputArray momentum
413}
414
415##################
416# Scalar HT merger
417##################
418
419module Merger ScalarHT {
420# add InputArray InputArray
421 add InputArray UniqueObjectFinder/jets
422 add InputArray UniqueObjectFinder/electrons
423 add InputArray UniqueObjectFinder/photons
424 add InputArray UniqueObjectFinder/muons
425 set EnergyOutputArray energy
426}
427
428
429#####################
430# Neutrino Filter
431#####################
432
433module PdgCodeFilter NeutrinoFilter {
434
435 set InputArray Delphes/stableParticles
436 set OutputArray filteredParticles
437
438 set PTMin 0.0
439
440 add PdgCode {12}
441 add PdgCode {14}
442 add PdgCode {16}
443 add PdgCode {-12}
444 add PdgCode {-14}
445 add PdgCode {-16}
446
447}
448
449
450#####################
451# MC truth jet finder
452#####################
453
454module FastJetFinder GenJetFinder {
455 set InputArray NeutrinoFilter/filteredParticles
456
457 set OutputArray jets
458
459 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
460 set JetAlgorithm 6
461 set ParameterR 0.5
462
463 set JetPTMin 20.0
464}
465
466
467############
468# Jet finder
469############
470
471module FastJetFinder FastJetFinder {
472# set InputArray Calorimeter/towers
473 set InputArray EFlowMerger/eflow
474
475 set OutputArray jets
476
477 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
478 set JetAlgorithm 6
479 set ParameterR 0.5
480
481 set JetPTMin 20.0
482}
483
484##################
485# Jet Energy Scale
486##################
487
488module EnergyScale JetEnergyScale {
489 set InputArray FastJetFinder/jets
490 set OutputArray jets
491
492 # scale formula for jets
493 set ScaleFormula {sqrt( (2.5 - 0.15*(abs(eta)))^2 / pt + 1.0 )}
494}
495
496########################
497# Jet Flavor Association
498########################
499
500module JetFlavorAssociation JetFlavorAssociation {
501
502 set PartonInputArray Delphes/partons
503 set ParticleInputArray Delphes/allParticles
504 set ParticleLHEFInputArray Delphes/allParticlesLHEF
505 set JetInputArray JetEnergyScale/jets
506
507 set DeltaR 0.5
508 set PartonPTMin 1.0
509 set PartonEtaMax 2.5
510
511}
512
513###########
514# b-tagging
515###########
516
517module BTagging BTagging {
518 set JetInputArray JetEnergyScale/jets
519
520 set BitNumber 0
521
522 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
523 # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
524 # gluon's PDG code has the lowest priority
525
526 # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
527 # default efficiency formula (misidentification rate)
528 add EfficiencyFormula {0} {0.001}
529
530 # efficiency formula for c-jets (misidentification rate)
531 add EfficiencyFormula {4} { (pt <= 15.0) * (0.000) +
532 (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) +
533 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) +
534 (abs(eta) > 2.5) * (0.000)}
535
536 # efficiency formula for b-jets
537 add EfficiencyFormula {5} { (pt <= 15.0) * (0.000) +
538 (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) +
539 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) +
540 (abs(eta) > 2.5) * (0.000)}
541}
542
543#############
544# tau-tagging
545#############
546
547module TauTagging TauTagging {
548 set ParticleInputArray Delphes/allParticles
549 set PartonInputArray Delphes/partons
550 set JetInputArray JetEnergyScale/jets
551
552 set DeltaR 0.5
553
554 set TauPTMin 1.0
555
556 set TauEtaMax 2.5
557
558 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
559
560 # default efficiency formula (misidentification rate)
561 add EfficiencyFormula {0} {0.001}
562 # efficiency formula for tau-jets
563 add EfficiencyFormula {15} {0.4}
564}
565
566#####################################################
567# Find uniquely identified photons/electrons/tau/jets
568#####################################################
569
570module UniqueObjectFinder UniqueObjectFinder {
571# earlier arrays take precedence over later ones
572# add InputArray InputArray OutputArray
573 add InputArray PhotonIsolation/photons photons
574 add InputArray ElectronIsolation/electrons electrons
575 add InputArray MuonIsolation/muons muons
576 add InputArray JetEnergyScale/jets jets
577}
578
579##################
580# ROOT tree writer
581##################
582
583# tracks, towers and eflow objects are not stored by default in the output.
584# if needed (for jet constituent or other studies), uncomment the relevant
585# "add Branch ..." lines.
586
587module TreeWriter TreeWriter {
588# add Branch InputArray BranchName BranchClass
589 add Branch Delphes/allParticles Particle GenParticle
590
591 add Branch TrackMerger/tracks Track Track
592 add Branch Calorimeter/towers Tower Tower
593
594 add Branch Calorimeter/eflowTracks EFlowTrack Track
595 add Branch Calorimeter/eflowPhotons EFlowPhoton Tower
596 add Branch Calorimeter/eflowNeutralHadrons EFlowNeutralHadron Tower
597
598 add Branch GenJetFinder/jets GenJet Jet
599 add Branch UniqueObjectFinder/jets Jet Jet
600 add Branch UniqueObjectFinder/electrons Electron Electron
601 add Branch UniqueObjectFinder/photons Photon Photon
602 add Branch UniqueObjectFinder/muons Muon Muon
603 add Branch MissingET/momentum MissingET MissingET
604 add Branch ScalarHT/energy ScalarHT ScalarHT
605}
Note: See TracBrowser for help on using the repository browser.