Fork me on GitHub

source: svn/trunk/examples/delphes_card_FCC_basic.tcl @ 1397

Last change on this file since 1397 was 1397, checked in by mselvaggi, 6 years ago

added Set RandomSeed? 0 to all data cards

File size: 16.5 KB
Line 
1set RandomSeed 0
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  ImpactParameterSmearing
20 
21  Ecal
22  Hcal
23 
24  TowerMerger
25  EFlowMerger
26
27  MissingET
28
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 5.00
56  # half-length of the magnetic field coverage, in m
57  set HalfLength 12.00
58
59  # magnetic field
60  set Bz 5.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.99) + \
77                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1   && pt <= 1.0)   * (0.70) + \
78                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0)                  * (0.98) + \
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   && pt <= 1.0)   * (0.02) + \
133                                           (abs(eta) <= 1.5) * (pt > 1.0   && pt <= 1.0e1) * (0.01) + \
134                                           (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
135                                           (abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05) + \
136                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1   && pt <= 1.0)   * (0.03) + \
137                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0   && pt <= 1.0e1) * (0.02) + \
138                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
139                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 2.0e2)                * (0.05)}
140}
141
142#################################
143# Energy resolution for electrons
144#################################
145
146module EnergySmearing ElectronEnergySmearing {
147  set InputArray ElectronTrackingEfficiency/electrons
148  set OutputArray electrons
149
150  # set ResolutionFormula {resolution formula as a function of eta and energy}
151
152  # resolution formula for electrons
153  set ResolutionFormula {                  (abs(eta) <= 4.0) * (energy > 0.1   && energy <= 2.0e1) * (energy*0.007) + \
154                                           (abs(eta) <= 4.0) * (energy > 2.0e1)                    * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
155                                           (abs(eta) > 4.0 && abs(eta) <= 6.0)                     * sqrt(energy^2*0.05^2 + energy*1.00^2)}
156
157}
158
159###############################
160# Momentum resolution for muons
161###############################
162
163module MomentumSmearing MuonMomentumSmearing {
164  set InputArray MuonTrackingEfficiency/muons
165  set OutputArray muons
166
167  # set ResolutionFormula {resolution formula as a function of eta and pt}
168
169  # resolution formula for muons
170  set ResolutionFormula {                  (abs(eta) <= 0.5) * (pt > 0.1   && pt <= 5.0)   * (0.02) + \
171                                           (abs(eta) <= 0.5) * (pt > 5.0   && pt <= 1.0e2) * (0.015) + \
172                                           (abs(eta) <= 0.5) * (pt > 1.0e2 && pt <= 2.0e2) * (0.03) + \
173                                           (abs(eta) <= 0.5) * (pt > 2.0e2)                * (0.05 + pt*1.e-4) + \
174                         (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1   && pt <= 5.0)   * (0.03) + \
175                         (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 5.0   && pt <= 1.0e2) * (0.02) + \
176                         (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 1.0e2 && pt <= 2.0e2) * (0.04) + \
177                         (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 2.0e2)                * (0.05 + pt*1.e-4) + \
178                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1   && pt <= 5.0)   * (0.04) + \
179                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 5.0   && pt <= 1.0e2) * (0.035) + \
180                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0e2 && pt <= 2.0e2) * (0.05) + \
181                         (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 2.0e2)                * (0.05 + pt*1.e-4)}
182}
183
184##############
185# Track merger
186##############
187
188module Merger TrackMerger {
189# add InputArray InputArray
190  add InputArray ChargedHadronMomentumSmearing/chargedHadrons
191  add InputArray ElectronEnergySmearing/electrons
192  add InputArray MuonMomentumSmearing/muons
193  set OutputArray tracks
194}
195
196################################
197# Track impact parameter smearing
198################################
199
200module ImpactParameterSmearing ImpactParameterSmearing {
201  set InputArray TrackMerger/tracks
202  set OutputArray tracks
203
204
205# absolute impact parameter smearing formula (in mm) as a function of pt and eta
206set ResolutionFormula {(pt > 0.1  && pt <= 5.0)   * (0.010) + \
207                       (pt > 5.0)                 * (0.005)}
208
209}
210
211#############
212#   ECAL
213#############
214
215module SimpleCalorimeter Ecal {
216  set ParticleInputArray ParticlePropagator/stableParticles
217  set TrackInputArray ImpactParameterSmearing/tracks
218
219  set TowerOutputArray ecalTowers
220  set EFlowTowerOutputArray eflowPhotons
221 
222  set pi [expr {acos(-1)}]
223
224  # lists of the edges of each tower in eta and phi
225  # each list starts with the lower edge of the first tower
226  # the list ends with the higher edged of the last tower
227
228  # 5 degrees towers
229  set PhiBins {}
230  for {set i -36} {$i <= 36} {incr i} {
231    add PhiBins [expr {$i * $pi/36.0}]
232  }
233  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
234    add EtaPhiBins $eta $PhiBins
235  }
236
237  # 10 degrees towers
238  set PhiBins {}
239  for {set i -18} {$i <= 18} {incr i} {
240    add PhiBins [expr {$i * $pi/18.0}]
241  }
242  foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
243    add EtaPhiBins $eta $PhiBins
244  }
245
246  # 20 degrees towers
247  set PhiBins {}
248  for {set i -9} {$i <= 9} {incr i} {
249    add PhiBins [expr {$i * $pi/9.0}]
250  }
251  foreach eta {6 -5.6 -5.3 -5 -4.7 -4.525 4.7 5 5.3 5.6 6} {
252    add EtaPhiBins $eta $PhiBins
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  set ResolutionFormula {                     (abs(eta) <= 4.0) * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
277                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2  + energy*1.00^2)}
278
279 
280}
281
282#############
283#   HCAL
284#############
285
286module SimpleCalorimeter Hcal {
287  set ParticleInputArray ParticlePropagator/stableParticles
288  set TrackInputArray ImpactParameterSmearing/tracks
289
290  set TowerOutputArray hcalTowers
291  set EFlowTowerOutputArray eflowNeutralHadrons
292 
293  set pi [expr {acos(-1)}]
294
295  # lists of the edges of each tower in eta and phi
296  # each list starts with the lower edge of the first tower
297  # the list ends with the higher edged of the last tower
298
299  # 5 degrees towers
300  set PhiBins {}
301  for {set i -36} {$i <= 36} {incr i} {
302    add PhiBins [expr {$i * $pi/36.0}]
303  }
304  foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
305    add EtaPhiBins $eta $PhiBins
306  }
307
308  # 10 degrees towers
309  set PhiBins {}
310  for {set i -18} {$i <= 18} {incr i} {
311    add PhiBins [expr {$i * $pi/18.0}]
312  }
313  foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
314    add EtaPhiBins $eta $PhiBins
315  }
316
317  # 20 degrees towers
318  set PhiBins {}
319  for {set i -9} {$i <= 9} {incr i} {
320    add PhiBins [expr {$i * $pi/9.0}]
321  }
322  foreach eta {6 -5.6 -5.3 -5 -4.7 -4.525 4.7 5 5.3 5.6 6} {
323    add EtaPhiBins $eta $PhiBins
324  }
325 
326  # default energy fractions {abs(PDG code)} {Fecal Fhcal}
327  add EnergyFraction {0} {1.0}
328  # energy fractions for e, gamma and pi0
329  add EnergyFraction {11} {0.0}
330  add EnergyFraction {22} {0.0}
331  add EnergyFraction {111} {0.0}
332  # energy fractions for muon, neutrinos and neutralinos
333  add EnergyFraction {12} {0.0}
334  add EnergyFraction {13} {0.0}
335  add EnergyFraction {14} {0.0}
336  add EnergyFraction {16} {0.0}
337  add EnergyFraction {1000022} {0.0}
338  add EnergyFraction {1000023} {0.0}
339  add EnergyFraction {1000025} {0.0}
340  add EnergyFraction {1000035} {0.0}
341  add EnergyFraction {1000045} {0.0}
342  # energy fractions for K0short and Lambda
343  add EnergyFraction {310} {0.7}
344  add EnergyFraction {3122} {0.7}
345
346   # set HCalResolutionFormula {resolution formula as a function of eta and energy}
347  set ResolutionFormula {                     (abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
348                            (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2 + energy*1.00^2)}
349}
350
351
352####################
353# Tower Merger (in case not using e-flow algorithm)
354####################
355
356module Merger TowerMerger {
357# add InputArray InputArray
358  add InputArray Ecal/ecalTowers
359  add InputArray Hcal/hcalTowers
360  set OutputArray towers
361}
362
363####################
364# Energy flow merger
365####################
366
367module Merger EFlowMerger {
368# add InputArray InputArray
369  add InputArray ImpactParameterSmearing/tracks
370  add InputArray Ecal/eflowPhotons
371  add InputArray Hcal/eflowNeutralHadrons
372  set OutputArray eflow
373}
374
375
376###################
377# Missing ET merger
378###################
379
380module Merger MissingET {
381# add InputArray InputArray
382  add InputArray EFlowMerger/eflow
383  set MomentumOutputArray momentum
384}
385                   
386
387##################
388# Scalar HT merger
389##################
390
391module Merger ScalarHT {
392# add InputArray InputArray
393  add InputArray EFlowMerger/eflow
394  set EnergyOutputArray energy
395}
396
397#####################
398# MC truth jet finder
399#####################
400
401module FastJetFinder GenJetFinder {
402  set InputArray Delphes/stableParticles
403
404  set OutputArray jets
405
406  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
407  set JetAlgorithm 6
408  set ParameterR 0.5
409
410  set JetPTMin 5.0
411}
412
413############
414# Jet finder
415############
416
417module FastJetFinder FastJetFinder {
418#  set InputArray Calorimeter/towers
419  set InputArray EFlowMerger/eflow
420
421  set OutputArray jets
422
423  # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
424  set JetAlgorithm 6
425  set ParameterR 0.5
426
427  set JetPTMin 5.0
428}
429
430##################
431# Jet Energy Scale
432##################
433
434module EnergyScale JetEnergyScale {
435  set InputArray FastJetFinder/jets
436  set OutputArray jets
437
438 # scale formula for jets
439  set ScaleFormula {1.00}
440}
441
442##########################
443# Track Counting b-tagging
444##########################
445
446module TrackCountingBTagging TrackCountingBTagging {
447  set TrackInputArray ImpactParameterSmearing/tracks
448  set JetInputArray JetEnergyScale/jets
449
450  set BitNumber 0
451
452  # maximum distance between jet and track
453  set DeltaR 0.3
454 
455  # minimum pt of tracks
456  set TrackPTMin 1.0
457 
458  # minimum transverse impact parameter (in mm)
459  set TrackIPMax 2.0
460 
461  # minimum ip significance for the track to be counted
462  set SigMin 6.5
463 
464  # minimum number of tracks (high efficiency n=2, high purity n=3)
465  set Ntracks 3
466}
467
468
469##########################
470# tau-tagging
471##########################
472
473
474module TauTagging TauTagging {
475  set ParticleInputArray Delphes/allParticles
476  set PartonInputArray Delphes/partons
477  set JetInputArray JetEnergyScale/jets
478
479  set DeltaR 0.5
480
481  set TauPTMin 1.0
482
483  set TauEtaMax 4.0
484
485  # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
486
487  # default efficiency formula (misidentification rate)
488  add EfficiencyFormula {0} {0.001}
489  # efficiency formula for tau-jets
490  add EfficiencyFormula {15} {0.4}
491}
492
493##################
494# ROOT tree writer
495##################
496
497module TreeWriter TreeWriter {
498# add Branch InputArray BranchName BranchClass
499  add Branch Delphes/allParticles Particle GenParticle
500  add Branch GenJetFinder/jets GenJet Jet
501 
502  add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
503  add Branch Hcal/eflowNeutralHadrons NeutralHadron Tower
504  add Branch Ecal/eflowPhotons Photon Photon
505
506  add Branch ElectronEnergySmearing/electrons Electron Electron
507  add Branch MuonMomentumSmearing/muons Muon Muon
508  add Branch JetEnergyScale/jets Jet Jet
509  add Branch MissingET/momentum MissingET MissingET
510  add Branch ScalarHT/energy ScalarHT ScalarHT
511}
512 
Note: See TracBrowser for help on using the repository browser.