Fork me on GitHub

source: git/cards/delphes_card_FCC_basic.tcl@ 20dc57b

Last change on this file since 20dc57b was a2983ec, checked in by Pavel Demin <pavel.demin@…>, 10 years ago

add parameter SmearTowerCenter to all cards

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