Fork me on GitHub

source: git/cards/delphes_card_FCC_basic.tcl@ 9da65a5

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