Fork me on GitHub

source: git/cards/delphes_card_ILD.tcl@ 7aea88d

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 7aea88d was 8b13e78, checked in by Michele Selvaggi <michele.selvaggi@…>, 9 years ago

added prototype for ILD-ILC detector card

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