Fork me on GitHub

source: svn/trunk/examples/delphes_card_FCC_basic.tcl

Last change on this file was 1397, checked in by Michele Selvaggi, 10 years ago

added Set RandomSeed 0 to all data cards

File size: 16.5 KB
RevLine 
[1397]1set RandomSeed 0
2
[1370]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
[1378]502 add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
[1370]503 add Branch Hcal/eflowNeutralHadrons NeutralHadron Tower
504 add Branch Ecal/eflowPhotons Photon Photon
[1378]505
[1370]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.