Fork me on GitHub

source: git/cards/delphes_card_ILD.tcl@ df636c74

ImprovedOutputFile Timing dual_readout llp
Last change on this file since df636c74 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: 13.3 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 AngularSmearing
20 ImpactParameterSmearing
21
22 ECal
23 HCal
24
25 ElectronFilter
26
27 TowerMerger
28 EFlowMerger
29
30 MissingET
31
32 NeutrinoFilter
33 GenJetFinder
34 FastJetFinder
35
36 JetEnergyScale
37
38 TrackCountingBTagging
39 TauTagging
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.8
60 # half-length of the magnetic field coverage, in m
61 set HalfLength 2.4
62
63 # magnetic field
64 set Bz 3.5
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) <= 2.4) * (pt > 0.1) * (0.99) +
80 (abs(eta) > 2.4) * (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) <= 2.4) * (pt > 0.1) * (0.99) +
96 (abs(eta) > 2.4) * (0.00)}
97}
98
99##########################
100# Muon tracking efficiency
101##########################
102
103module Efficiency MuonTrackingEfficiency {
104 set InputArray ParticlePropagator/muons
105 set OutputArray muons
106
107 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
108
109 # tracking efficiency formula for muons
110 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
111 (abs(eta) <= 2.4) * (pt > 0.1) * (0.99) +
112 (abs(eta) > 2.4) * (0.00)}
113}
114
115########################################
116# Momentum resolution for charged tracks
117########################################
118
119module MomentumSmearing ChargedHadronMomentumSmearing {
120 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
121 set OutputArray chargedHadrons
122
123 # set ResolutionFormula {resolution formula as a function of eta and pt}
124
125 # resolution formula for charged hadrons
126 set ResolutionFormula { (abs(eta) <= 1.0) * (0.001 + pt*1.e-5) +
127 (abs(eta) > 1.0 && abs(eta) <= 2.4) * (0.01 + pt*1.e-4)}
128
129
130}
131
132###################################
133# Momentum resolution for electrons
134###################################
135
136module MomentumSmearing ElectronMomentumSmearing {
137 set InputArray ElectronTrackingEfficiency/electrons
138 set OutputArray electrons
139
140 # set ResolutionFormula {resolution formula as a function of eta and energy}
141
142 # resolution formula for electrons (we keep nominal tracking reso since ECAL can't beat this, even at high E)
143 set ResolutionFormula { (abs(eta) <= 1.0) * (0.001 + pt*1.e-5) +
144 (abs(eta) > 1.0 && abs(eta) <= 2.4) * (0.01 + pt*1.e-4)}
145}
146
147###############################
148# Momentum resolution for muons
149###############################
150
151module MomentumSmearing MuonMomentumSmearing {
152 set InputArray MuonTrackingEfficiency/muons
153 set OutputArray muons
154
155 # set ResolutionFormula {resolution formula as a function of eta and pt}
156
157 # resolution formula for muons
158 set ResolutionFormula { (abs(eta) <= 1.0) * (0.001 + pt*1.e-5) +
159 (abs(eta) > 1.0 && abs(eta) <= 2.4) * (0.01 + pt*1.e-4)}
160
161
162}
163
164##############
165# Track merger
166##############
167
168module Merger TrackMerger {
169# add InputArray InputArray
170 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
171 add InputArray ElectronMomentumSmearing/electrons
172 add InputArray MuonMomentumSmearing/muons
173 set OutputArray tracks
174}
175
176
177########################
178# Track angular smearing
179########################
180
181module AngularSmearing AngularSmearing {
182 set InputArray TrackMerger/tracks
183 set OutputArray tracks
184
185
186 # angular smearing in eta formula as a function of pt and eta
187 set EtaResolutionFormula { 0.001 }
188
189 # angular smearing in phi formula as a function of pt and eta
190 set PhiResolutionFormula { 0.001 }
191
192}
193
194#################################
195# Track impact parameter smearing
196#################################
197
198module ImpactParameterSmearing ImpactParameterSmearing {
199 set InputArray AngularSmearing/tracks
200 set OutputArray tracks
201
202
203 # absolute impact parameter smearing formula (in mm) as a function of pt and eta
204 set ResolutionFormula {(pt > 0.1 && pt <= 5.0) * (0.010) +
205 (pt > 5.0) * (0.005)}
206
207}
208
209#############
210# ECAL
211#############
212
213module SimpleCalorimeter ECal {
214 set ParticleInputArray ParticlePropagator/stableParticles
215 set TrackInputArray ImpactParameterSmearing/tracks
216
217 set TowerOutputArray ecalTowers
218 set EFlowTrackOutputArray eflowTracks
219 set EFlowTowerOutputArray eflowPhotons
220
221 set IsEcal true
222
223 set EnergyMin 0.5
224 set EnergySignificanceMin 1.0
225
226 set SmearTowerCenter true
227
228 set pi [expr {acos(-1)}]
229
230 # lists of the edges of each tower in eta and phi
231 # each list starts with the lower edge of the first tower
232 # the list ends with the higher edged of the last tower
233
234 # 0.5 degree towers (5x5 mm^2)
235 set PhiBins {}
236 for {set i -360} {$i <= 360} {incr i} {
237 add PhiBins [expr {$i * $pi/360.0}]
238 }
239
240 # 0.01 unit in eta up to eta = 2.5
241 for {set i -500} {$i <= 500} {incr i} {
242 set eta [expr {$i * 0.005}]
243 add EtaPhiBins $eta $PhiBins
244 }
245
246 # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
247
248 add EnergyFraction {0} {0.0}
249 # energy fractions for e, gamma and pi0
250 add EnergyFraction {11} {1.0}
251 add EnergyFraction {22} {1.0}
252 add EnergyFraction {111} {1.0}
253 # energy fractions for muon, neutrinos and neutralinos
254 add EnergyFraction {12} {0.0}
255 add EnergyFraction {13} {0.0}
256 add EnergyFraction {14} {0.0}
257 add EnergyFraction {16} {0.0}
258 add EnergyFraction {1000022} {0.0}
259 add EnergyFraction {1000023} {0.0}
260 add EnergyFraction {1000025} {0.0}
261 add EnergyFraction {1000035} {0.0}
262 add EnergyFraction {1000045} {0.0}
263 # energy fractions for K0short and Lambda
264 add EnergyFraction {310} {0.3}
265 add EnergyFraction {3122} {0.3}
266
267 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
268
269 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.01^2 + energy*0.15^2) }
270
271}
272
273#############
274# HCAL
275#############
276
277module SimpleCalorimeter HCal {
278 set ParticleInputArray ParticlePropagator/stableParticles
279 set TrackInputArray ECal/eflowTracks
280
281 set TowerOutputArray hcalTowers
282 set EFlowTrackOutputArray eflowTracks
283 set EFlowTowerOutputArray eflowNeutralHadrons
284
285 set IsEcal false
286
287 set EnergyMin 1.0
288 set EnergySignificanceMin 1.0
289
290 set SmearTowerCenter true
291
292 set pi [expr {acos(-1)}]
293
294 # lists of the edges of each tower in eta and phi
295 # each list starts with the lower edge of the first tower
296 # the list ends with the higher edged of the last tower
297
298
299 # 6 degree towers
300 set PhiBins {}
301 for {set i -60} {$i <= 60} {incr i} {
302 add PhiBins [expr {$i * $pi/60.0}]
303 }
304
305 # 0.5 unit in eta up to eta = 3
306 for {set i -60} {$i <= 60} {incr i} {
307 set eta [expr {$i * 0.05}]
308 add EtaPhiBins $eta $PhiBins
309 }
310
311
312 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
313 add EnergyFraction {0} {1.0}
314 # energy fractions for e, gamma and pi0
315 add EnergyFraction {11} {0.0}
316 add EnergyFraction {22} {0.0}
317 add EnergyFraction {111} {0.0}
318 # energy fractions for muon, neutrinos and neutralinos
319 add EnergyFraction {12} {0.0}
320 add EnergyFraction {13} {0.0}
321 add EnergyFraction {14} {0.0}
322 add EnergyFraction {16} {0.0}
323 add EnergyFraction {1000022} {0.0}
324 add EnergyFraction {1000023} {0.0}
325 add EnergyFraction {1000025} {0.0}
326 add EnergyFraction {1000035} {0.0}
327 add EnergyFraction {1000045} {0.0}
328 # energy fractions for K0short and Lambda
329 add EnergyFraction {310} {0.7}
330 add EnergyFraction {3122} {0.7}
331
332 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
333
334 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.015^2 + energy*0.50^2)}
335
336}
337
338#################
339# Electron filter
340#################
341
342module PdgCodeFilter ElectronFilter {
343 set InputArray Calorimeter/eflowTracks
344 set OutputArray electrons
345 set Invert true
346 add PdgCode {11}
347 add PdgCode {-11}
348}
349
350###################################################
351# Tower Merger (in case not using e-flow algorithm)
352###################################################
353
354module Merger TowerMerger {
355# add InputArray InputArray
356 add InputArray ECal/ecalTowers
357 add InputArray HCal/hcalTowers
358 set OutputArray towers
359}
360
361####################
362# Energy flow merger
363####################
364
365module Merger EFlowMerger {
366# add InputArray InputArray
367 add InputArray HCal/eflowTracks
368 add InputArray ECal/eflowPhotons
369 add InputArray HCal/eflowNeutralHadrons
370 set OutputArray eflow
371}
372
373
374###################
375# Missing ET merger
376###################
377
378module Merger MissingET {
379# add InputArray InputArray
380 add InputArray EFlowMerger/eflow
381 set MomentumOutputArray momentum
382}
383
384
385##################
386# Scalar HT merger
387##################
388
389module Merger ScalarHT {
390# add InputArray InputArray
391 add InputArray EFlowMerger/eflow
392 set EnergyOutputArray energy
393}
394
395#################
396# Neutrino Filter
397#################
398
399module PdgCodeFilter NeutrinoFilter {
400
401 set InputArray Delphes/stableParticles
402 set OutputArray filteredParticles
403
404 set PTMin 0.0
405
406 add PdgCode {12}
407 add PdgCode {14}
408 add PdgCode {16}
409 add PdgCode {-12}
410 add PdgCode {-14}
411 add PdgCode {-16}
412
413}
414
415
416#####################
417# MC truth jet finder
418#####################
419
420module FastJetFinder GenJetFinder {
421 set InputArray NeutrinoFilter/filteredParticles
422
423 set OutputArray jets
424
425 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
426 set JetAlgorithm 6
427 set ParameterR 0.5
428
429 set JetPTMin 20.0
430}
431
432############
433# Jet finder
434############
435
436module FastJetFinder FastJetFinder {
437# set InputArray TowerMerger/towers
438 set InputArray EFlowMerger/eflow
439
440 set OutputArray jets
441
442 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
443 set JetAlgorithm 6
444 set ParameterR 0.5
445
446 set JetPTMin 20.0
447}
448
449##################
450# Jet Energy Scale
451##################
452
453module EnergyScale JetEnergyScale {
454 set InputArray FastJetFinder/jets
455 set OutputArray jets
456
457 # scale formula for jets
458 set ScaleFormula {1.00}
459}
460
461##########################
462# Track Counting b-tagging
463##########################
464
465module TrackCountingBTagging TrackCountingBTagging {
466 set TrackInputArray ImpactParameterSmearing/tracks
467 set JetInputArray JetEnergyScale/jets
468
469 set BitNumber 0
470
471 # maximum distance between jet and track
472 set DeltaR 0.3
473
474 # minimum pt of tracks
475 set TrackPTMin 1.0
476
477 # minimum transverse impact parameter (in mm)
478 set TrackIPMax 2.0
479
480 # minimum ip significance for the track to be counted
481 set SigMin 6.5
482
483 # minimum number of tracks (high efficiency n=2, high purity n=3)
484 set Ntracks 3
485}
486
487
488#############
489# tau-tagging
490#############
491
492
493module TauTagging TauTagging {
494 set ParticleInputArray Delphes/allParticles
495 set PartonInputArray Delphes/partons
496 set JetInputArray JetEnergyScale/jets
497
498 set DeltaR 0.5
499
500 set TauPTMin 1.0
501
502 set TauEtaMax 4.0
503
504 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
505
506 # default efficiency formula (misidentification rate)
507 add EfficiencyFormula {0} {0.001}
508 # efficiency formula for tau-jets
509 add EfficiencyFormula {15} {0.4}
510}
511
512##################
513# ROOT tree writer
514##################
515
516module TreeWriter TreeWriter {
517# add Branch InputArray BranchName BranchClass
518 add Branch Delphes/allParticles Particle GenParticle
519 add Branch GenJetFinder/jets GenJet Jet
520
521 add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
522 add Branch HCal/eflowNeutralHadrons NeutralHadron Tower
523 add Branch ECal/eflowPhotons Photon Photon
524
525 add Branch ElectronFilter/electrons Electron Electron
526 add Branch MuonMomentumSmearing/muons Muon Muon
527 add Branch JetEnergyScale/jets Jet Jet
528 add Branch MissingET/momentum MissingET MissingET
529 add Branch ScalarHT/energy ScalarHT ScalarHT
530}
531
Note: See TracBrowser for help on using the repository browser.