Fork me on GitHub

Ticket #362: delphes_card_CMS_LHCO.tcl

File delphes_card_CMS_LHCO.tcl, 17.1 KB (added by Keith Pedersen, 10 years ago)

KDP's Delphes card

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