Fork me on GitHub

source: git/cards/delphes_card_ILD.tcl@ 4cf7c25

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 4cf7c25 was 59d6164, checked in by Michele Selvaggi <michele.selvaggi@…>, 9 years ago

added GenMissingET to all cards

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