Fork me on GitHub

source: git/examples/delphes_card_FCC_basic.tcl@ 3d963d5

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 3d963d5 was edcf81a, checked in by Michele Selvaggi <michele.selvaggi@…>, 10 years ago

Added AngularSmearing module, and modified FCC card

  • Property mode set to 100644
File size: 14.5 KB
RevLine 
[ab16005]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
[edcf81a]17 AngularSmearing
[ab16005]18 ImpactParameterSmearing
19
20 Ecal
21 Hcal
22
23 TowerMerger
24 EFlowMerger
25
26 MissingET
[be2222c]27
28 NeutrinoFilter
[ab16005]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
[edcf81a]55 set Radius 2.60
[ab16005]56 # half-length of the magnetic field coverage, in m
[edcf81a]57 set HalfLength 6.00
[ab16005]58
59 # magnetic field
[edcf81a]60 set Bz 6.0
[ab16005]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) + \
[edcf81a]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) + \
[ab16005]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
[edcf81a]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
[ab16005]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
[edcf81a]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
[ab16005]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
[edcf81a]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
[ab16005]202################################
203# Track impact parameter smearing
204################################
205
206module ImpactParameterSmearing ImpactParameterSmearing {
[edcf81a]207 set InputArray AngularSmearing/tracks
[ab16005]208 set OutputArray tracks
209
210
[edcf81a]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)}
[ab16005]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
[edcf81a]228 set TowerMinEnergy 0.5
229 set TowerMinSignificance 1.0
230
[ab16005]231 set pi [expr {acos(-1)}]
232
233 # lists of the edges of each tower in eta and phi
234 # each list starts with the lower edge of the first tower
235 # the list ends with the higher edged of the last tower
[edcf81a]236
237 # 0.5 degree towers
[ab16005]238 set PhiBins {}
[edcf81a]239 for {set i -360} {$i <= 360} {incr i} {
240 add PhiBins [expr {$i * $pi/360.0}]
[ab16005]241 }
242
[edcf81a]243 # 0.01 unit in eta up to eta = 3
244 for {set i -300} {$i <= 300} {incr i} {
245 set eta [expr {$i * 0.01}]
[ab16005]246 add EtaPhiBins $eta $PhiBins
247 }
[edcf81a]248
[ab16005]249 # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
250
251 add EnergyFraction {0} {0.0}
252 # energy fractions for e, gamma and pi0
253 add EnergyFraction {11} {1.0}
254 add EnergyFraction {22} {1.0}
255 add EnergyFraction {111} {1.0}
256 # energy fractions for muon, neutrinos and neutralinos
257 add EnergyFraction {12} {0.0}
258 add EnergyFraction {13} {0.0}
259 add EnergyFraction {14} {0.0}
260 add EnergyFraction {16} {0.0}
261 add EnergyFraction {1000022} {0.0}
262 add EnergyFraction {1000023} {0.0}
263 add EnergyFraction {1000025} {0.0}
264 add EnergyFraction {1000035} {0.0}
265 add EnergyFraction {1000045} {0.0}
266 # energy fractions for K0short and Lambda
267 add EnergyFraction {310} {0.3}
268 add EnergyFraction {3122} {0.3}
269
270 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
[edcf81a]271
272 # This is the CMS ECAL resolution, extended up eta = 6.0
273 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.003^2 + energy*0.029^2 + 0.125^2) + \
274 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.107^2 + energy*2.08^2)}
[ab16005]275
276
277}
278
279#############
280# HCAL
281#############
282
283module SimpleCalorimeter Hcal {
284 set ParticleInputArray ParticlePropagator/stableParticles
285 set TrackInputArray ImpactParameterSmearing/tracks
286
287 set TowerOutputArray hcalTowers
288 set EFlowTowerOutputArray eflowNeutralHadrons
289
[edcf81a]290 set TowerMinEnergy 1.0
291 set TowerMinSignificance 1.0
292
[ab16005]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
[edcf81a]298
299
300 # 5 degree towers
[ab16005]301 set PhiBins {}
[edcf81a]302 for {set i -72} {$i <= 72} {incr i} {
303 add PhiBins [expr {$i * $pi/75.0}]
[ab16005]304 }
305
[edcf81a]306 # 0.05 unit in eta up to eta = 3
307 for {set i -60} {$i <= 60} {incr i} {
308 set eta [expr {$i * 0.05}]
[ab16005]309 add EtaPhiBins $eta $PhiBins
310 }
[edcf81a]311
312
[ab16005]313 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
314 add EnergyFraction {0} {1.0}
315 # energy fractions for e, gamma and pi0
316 add EnergyFraction {11} {0.0}
317 add EnergyFraction {22} {0.0}
318 add EnergyFraction {111} {0.0}
319 # energy fractions for muon, neutrinos and neutralinos
320 add EnergyFraction {12} {0.0}
321 add EnergyFraction {13} {0.0}
322 add EnergyFraction {14} {0.0}
323 add EnergyFraction {16} {0.0}
324 add EnergyFraction {1000022} {0.0}
325 add EnergyFraction {1000023} {0.0}
326 add EnergyFraction {1000025} {0.0}
327 add EnergyFraction {1000035} {0.0}
328 add EnergyFraction {1000045} {0.0}
329 # energy fractions for K0short and Lambda
330 add EnergyFraction {310} {0.7}
331 add EnergyFraction {3122} {0.7}
332
[edcf81a]333 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
334
335 # This is the ATLAS HCAL resolution, extended up eta = 6.0
336 set HCalResolutionFormula { (abs(eta) <= 1.7) * sqrt(energy^2*0.0302^2 + energy*0.5205^2 + 1.59^2) + \
337 (abs(eta) > 1.7 && abs(eta) <= 3.2) * sqrt(energy^2*0.0500^2 + energy*0.706^2) + \
338 (abs(eta) > 3.2 && abs(eta) <= 6.0) * sqrt(energy^2*0.09420^2 + energy*1.00^2)}
[ab16005]339
[edcf81a]340}
[ab16005]341
342####################
343# Tower Merger (in case not using e-flow algorithm)
344####################
345
346module Merger TowerMerger {
347# add InputArray InputArray
348 add InputArray Ecal/ecalTowers
349 add InputArray Hcal/hcalTowers
350 set OutputArray towers
351}
352
353####################
354# Energy flow merger
355####################
356
357module Merger EFlowMerger {
358# add InputArray InputArray
359 add InputArray ImpactParameterSmearing/tracks
360 add InputArray Ecal/eflowPhotons
361 add InputArray Hcal/eflowNeutralHadrons
362 set OutputArray eflow
363}
364
365
366###################
367# Missing ET merger
368###################
369
370module Merger MissingET {
371# add InputArray InputArray
372 add InputArray EFlowMerger/eflow
373 set MomentumOutputArray momentum
374}
375
376
377##################
378# Scalar HT merger
379##################
380
381module Merger ScalarHT {
382# add InputArray InputArray
383 add InputArray EFlowMerger/eflow
384 set EnergyOutputArray energy
385}
386
[be2222c]387#####################
388# Neutrino Filter
389#####################
390
391module PdgCodeFilter NeutrinoFilter {
392
393 set InputArray Delphes/stableParticles
394 set OutputArray filteredParticles
395
396 set PTMin 0.0
397
398 add PdgCode {12}
399 add PdgCode {14}
400 add PdgCode {16}
401 add PdgCode {-12}
402 add PdgCode {-14}
403 add PdgCode {-16}
404
405}
406
407
[ab16005]408#####################
409# MC truth jet finder
410#####################
411
412module FastJetFinder GenJetFinder {
[be2222c]413 set InputArray NeutrinoFilter/filteredParticles
[ab16005]414
415 set OutputArray jets
416
417 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
418 set JetAlgorithm 6
419 set ParameterR 0.5
420
[edcf81a]421 set JetPTMin 100.0
[ab16005]422}
423
424############
425# Jet finder
426############
427
428module FastJetFinder FastJetFinder {
429# set InputArray Calorimeter/towers
430 set InputArray EFlowMerger/eflow
431
432 set OutputArray jets
433
434 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
435 set JetAlgorithm 6
436 set ParameterR 0.5
437
[edcf81a]438 set JetPTMin 100.0
[ab16005]439}
440
441##################
442# Jet Energy Scale
443##################
444
445module EnergyScale JetEnergyScale {
446 set InputArray FastJetFinder/jets
447 set OutputArray jets
448
449 # scale formula for jets
450 set ScaleFormula {1.00}
451}
452
453##########################
454# Track Counting b-tagging
455##########################
456
457module TrackCountingBTagging TrackCountingBTagging {
458 set TrackInputArray ImpactParameterSmearing/tracks
459 set JetInputArray JetEnergyScale/jets
460
461 set BitNumber 0
462
463 # maximum distance between jet and track
464 set DeltaR 0.3
465
466 # minimum pt of tracks
467 set TrackPTMin 1.0
468
469 # minimum transverse impact parameter (in mm)
470 set TrackIPMax 2.0
471
472 # minimum ip significance for the track to be counted
473 set SigMin 6.5
474
475 # minimum number of tracks (high efficiency n=2, high purity n=3)
476 set Ntracks 3
477}
478
479
480##########################
481# tau-tagging
482##########################
483
484
485module TauTagging TauTagging {
486 set ParticleInputArray Delphes/allParticles
487 set PartonInputArray Delphes/partons
488 set JetInputArray JetEnergyScale/jets
489
490 set DeltaR 0.5
491
492 set TauPTMin 1.0
493
494 set TauEtaMax 4.0
495
496 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
497
498 # default efficiency formula (misidentification rate)
499 add EfficiencyFormula {0} {0.001}
500 # efficiency formula for tau-jets
501 add EfficiencyFormula {15} {0.4}
502}
503
504##################
505# ROOT tree writer
506##################
507
508module TreeWriter TreeWriter {
509# add Branch InputArray BranchName BranchClass
510 add Branch Delphes/allParticles Particle GenParticle
511 add Branch GenJetFinder/jets GenJet Jet
512
[282f591]513 add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
[ab16005]514 add Branch Hcal/eflowNeutralHadrons NeutralHadron Tower
515 add Branch Ecal/eflowPhotons Photon Photon
[282f591]516
[ab16005]517 add Branch ElectronEnergySmearing/electrons Electron Electron
518 add Branch MuonMomentumSmearing/muons Muon Muon
519 add Branch JetEnergyScale/jets Jet Jet
520 add Branch MissingET/momentum MissingET MissingET
521 add Branch ScalarHT/energy ScalarHT ScalarHT
522}
523
Note: See TracBrowser for help on using the repository browser.