Fork me on GitHub

source: git/cards/delphes_card_IDEAtrkCov.tcl@ 7d790c1

ImprovedOutputFile
Last change on this file since 7d790c1 was 7d790c1, checked in by Michele Selvaggi <michele.selvaggi@…>, 5 years ago

added IDEA version of with TrackCovariance

  • Property mode set to 100644
File size: 17.4 KB
Line 
1#################################################################### l
2# FCC-ee IDEA detector model
3#
4# Authors: Elisa Fontanesi, Lorenzo Pezzotti, Massimiliano Antonello
5# email: efontane@bo.infn.it,
6# lorenzo.pezzotti01@universitadipavia.it,
7# m.antonello@uninsubria.it,
8#####################################################################
9#
10#######################################
11# Order of execution of various modules
12#######################################
13
14set ExecutionPath {
15 ParticlePropagator
16
17 ChargedHadronTrackingEfficiency
18 ElectronTrackingEfficiency
19 MuonTrackingEfficiency
20
21 TrackMergerPre
22 TrackSmearing
23
24 TrackMerger
25 Calorimeter
26 EFlowMerger
27
28 PhotonEfficiency
29 PhotonIsolation
30
31 ElectronFilter
32 ElectronEfficiency
33 ElectronIsolation
34
35 MuonEfficiency
36 MuonIsolation
37
38 MissingET
39
40 NeutrinoFilter
41 GenJetFinder
42 GenMissingET
43
44 FastJetFinder
45
46 JetEnergyScale
47
48 JetFlavorAssociation
49
50 BTagging
51 TauTagging
52
53 UniqueObjectFinder
54
55 ScalarHT
56 TreeWriter
57}
58
59
60#################################
61# Propagate particles in cylinder
62#################################
63
64module ParticlePropagator ParticlePropagator {
65 set InputArray Delphes/stableParticles
66
67 set OutputArray stableParticles
68 set ChargedHadronOutputArray chargedHadrons
69 set ElectronOutputArray electrons
70 set MuonOutputArray muons
71
72 # inner radius of the solenoid, in m
73 set Radius 2.25
74
75 # half-length: z of the solenoid, in m
76 set HalfLength 2.5
77
78 # magnetic field, in T
79 set Bz 2.0
80}
81
82####################################
83# Charged hadron tracking efficiency
84####################################
85
86module Efficiency ChargedHadronTrackingEfficiency {
87 set InputArray ParticlePropagator/chargedHadrons
88 set OutputArray chargedHadrons
89 # We use only one efficiency, we set only 0 effincency out of eta bounds:
90
91 set EfficiencyFormula {
92 (abs(eta) > 3.0) * (0.000) +
93 (energy >= 0.5) * (abs(eta) <= 3.0) * (0.997) +
94 (energy < 0.5 && energy >= 0.3) * (abs(eta) <= 3.0) * (0.65) +
95 (energy < 0.3) * (abs(eta) <= 3.0) * (0.06)
96 }
97}
98
99# (pt <= 0.1) * (0.00) +
100# (abs(eta) <= 3.0) * (pt > 0.1) * (1.00) +
101# (abs(eta) > 3) * (0.00)
102
103
104
105##############################
106# Electron tracking efficiency
107##############################
108
109module Efficiency ElectronTrackingEfficiency {
110 set InputArray ParticlePropagator/electrons
111 set OutputArray electrons
112
113
114 # Current full simulation with CLICdet provides for electrons:
115 set EfficiencyFormula {
116 (abs(eta) > 3.0) * (0.000) +
117 (energy >= 0.5) * (abs(eta) <= 3.0) * (0.997) +
118 (energy < 0.5 && energy >= 0.3) * (abs(eta) <= 3.0) * (0.65) +
119 (energy < 0.3) * (abs(eta) <= 3.0) * (0.06)
120 }
121}
122
123
124##########################
125# Muon tracking efficiency
126##########################
127
128module Efficiency MuonTrackingEfficiency {
129 set InputArray ParticlePropagator/muons
130 set OutputArray muons
131
132 # Current full simulation with CLICdet provides for muons:
133 set EfficiencyFormula {
134 (abs(eta) > 3.0) * (0.000) +
135 (energy >= 0.5) * (abs(eta) <= 3.0) * (0.997) +
136 (energy < 0.5 && energy >= 0.3) * (abs(eta) <= 3.0) * (0.65) +
137 (energy < 0.3) * (abs(eta) <= 3.0) * (0.06)
138 }
139}
140
141##############
142# Track merger
143##############
144
145module Merger TrackMergerPre {
146# add InputArray InputArray
147 add InputArray ChargedHadronTrackingEfficiency/chargedHadrons
148 add InputArray ElectronTrackingEfficiency/electrons
149 add InputArray MuonTrackingEfficiency/muons
150 set OutputArray tracks
151}
152
153
154########################################
155# Smearing for charged tracks
156########################################
157
158module TrackCovariance TrackSmearing {
159 set InputArray TrackMergerPre/tracks
160 set OutputArray tracks
161
162 set DetectorGeometry GeoIDEA_BASE.txt
163 set Bz 2.0
164
165}
166
167
168##############
169# Track merger
170##############
171
172module Merger TrackMerger {
173# add InputArray InputArray
174 add InputArray TrackCovariance/tracks
175 set OutputArray tracks
176}
177
178
179#############
180# Calorimeter
181#############
182module DualReadoutCalorimeter Calorimeter {
183 set ParticleInputArray ParticlePropagator/stableParticles
184 set TrackInputArray TrackMerger/tracks
185
186 set TowerOutputArray towers
187 set PhotonOutputArray photons
188
189 set EFlowTrackOutputArray eflowTracks
190 set EFlowPhotonOutputArray eflowPhotons
191 set EFlowNeutralHadronOutputArray eflowNeutralHadrons
192
193 set ECalEnergyMin 0.5
194 set HCalEnergyMin 0.5
195 set EnergyMin 0.5
196 set ECalEnergySignificanceMin 1.0
197 set HCalEnergySignificanceMin 1.0
198 set EnergySignificanceMin 1.0
199
200 set SmearTowerCenter true
201 set pi [expr {acos(-1)}]
202
203 # Lists of the edges of each tower in eta and phi;
204 # each list starts with the lower edge of the first tower;
205 # the list ends with the higher edged of the last tower.
206 # Barrel: deta=0.02 towers up to |eta| <= 0.88 ( up to 45°)
207 # Endcaps: deta=0.02 towers up to |eta| <= 3.0 (8.6° = 100 mrad)
208 # Cell size: about 6 cm x 6 cm
209
210 #barrel:
211 set PhiBins {}
212 for {set i -120} {$i <= 120} {incr i} {
213 add PhiBins [expr {$i * $pi/120}]
214 }
215 #deta=0.02 units for |eta| <= 0.88
216 for {set i -44} {$i < 45} {incr i} {
217 set eta [expr {$i * 0.02}]
218 add EtaPhiBins $eta $PhiBins
219 }
220
221 #endcaps:
222 set PhiBins {}
223 for {set i -120} {$i <= 120} {incr i} {
224 add PhiBins [expr {$i* $pi/120}]
225 }
226 #deta=0.02 units for 0.88 < |eta| <= 3.0
227 #first, from -3.0 to -0.88
228 for {set i 1} {$i <=106} {incr i} {
229 set eta [expr {-3.00 + $i * 0.02}]
230 add EtaPhiBins $eta $PhiBins
231 }
232 #same for 0.88 to 3.0
233 for {set i 1} {$i <=106} {incr i} {
234 set eta [expr {0.88 + $i * 0.02}]
235 add EtaPhiBins $eta $PhiBins
236 }
237
238 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
239 add EnergyFraction {0} {0.0 1.0}
240 # energy fractions for e, gamma and pi0
241 add EnergyFraction {11} {1.0 0.0}
242 add EnergyFraction {22} {1.0 0.0}
243 add EnergyFraction {111} {1.0 0.0}
244 # energy fractions for muon, neutrinos and neutralinos
245 add EnergyFraction {12} {0.0 0.0}
246 add EnergyFraction {13} {0.0 0.0}
247 add EnergyFraction {14} {0.0 0.0}
248 add EnergyFraction {16} {0.0 0.0}
249 add EnergyFraction {1000022} {0.0 0.0}
250 add EnergyFraction {1000023} {0.0 0.0}
251 add EnergyFraction {1000025} {0.0 0.0}
252 add EnergyFraction {1000035} {0.0 0.0}
253 add EnergyFraction {1000045} {0.0 0.0}
254 # energy fractions for K0short and Lambda
255 add EnergyFraction {310} {0.3 0.7}
256 add EnergyFraction {3122} {0.3 0.7}
257
258
259 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
260 set ECalResolutionFormula {
261 (abs(eta) <= 0.88 ) * sqrt(energy^2*0.01^2 + energy*0.11^2)+
262 (abs(eta) > 0.88 && abs(eta) <= 3.0) * sqrt(energy^2*0.01^2 + energy*0.11^2)
263 }
264
265 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
266 set HCalResolutionFormula {
267 (abs(eta) <= 0.88 ) * sqrt(energy^2*0.01^2 + energy*0.30^2)+
268 (abs(eta) > 0.88 && abs(eta) <= 3.0) * sqrt(energy^2*0.01^2 + energy*0.30^2)
269 }
270}
271
272####################
273# Energy flow merger
274####################
275
276module Merger EFlowMerger {
277# add InputArray InputArray
278 add InputArray Calorimeter/eflowTracks
279 add InputArray Calorimeter/eflowPhotons
280 add InputArray Calorimeter/eflowNeutralHadrons
281 set OutputArray eflow
282}
283
284###################
285# Photon efficiency
286###################
287
288module Efficiency PhotonEfficiency {
289 set InputArray Calorimeter/eflowPhotons
290 set OutputArray photons
291
292 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
293 # efficiency formula for photons
294 set EfficiencyFormula {
295 (energy < 2.0) * (0.000)+
296 (energy >= 2.0) * (abs(eta) <= 0.88) * (0.99) +
297 (energy >= 2.0) * (abs(eta) >0.88 && abs(eta) <= 3.0) * (0.99) +
298 (abs(eta) > 3.0) * (0.000)
299 }
300}
301
302##################
303# Photon isolation
304##################
305
306module Isolation PhotonIsolation {
307 set CandidateInputArray PhotonEfficiency/photons
308 set IsolationInputArray EFlowMerger/eflow
309
310 set OutputArray photons
311
312 set DeltaRMax 0.5
313
314 set PTMin 0.5
315
316 set PTRatioMax 999.
317}
318
319#################
320# Electron filter
321#################
322
323module PdgCodeFilter ElectronFilter {
324 set InputArray Calorimeter/eflowTracks
325 set OutputArray electrons
326 set Invert true
327 add PdgCode {11}
328 add PdgCode {-11}
329}
330
331#####################
332# Electron efficiency
333#####################
334
335module Efficiency ElectronEfficiency {
336 set InputArray ElectronFilter/electrons
337 set OutputArray electrons
338
339 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
340
341 # efficiency formula for electrons
342 set EfficiencyFormula {
343 (energy < 2.0) * (0.000)+
344 (energy >= 2.0) * (abs(eta) <= 0.88) * (0.99) +
345 (energy >= 2.0) * (abs(eta) >0.88 && abs(eta) <= 3.0) * (0.99) +
346 (abs(eta) > 3.0) * (0.000)
347 }
348}
349
350####################
351# Electron isolation
352####################
353
354module Isolation ElectronIsolation {
355 set CandidateInputArray ElectronEfficiency/electrons
356 set IsolationInputArray EFlowMerger/eflow
357
358 set OutputArray electrons
359
360 set DeltaRMax 0.5
361
362 set PTMin 0.5
363
364 set PTRatioMax 0.12
365}
366
367#################
368# Muon efficiency
369#################
370
371module Efficiency MuonEfficiency {
372 set InputArray MuonMomentumSmearing/muons
373 set OutputArray muons
374
375 # set EfficiencyFormula {efficiency as a function of eta and pt}
376
377 # efficiency formula for muons
378 set EfficiencyFormula {
379 (energy < 2.0) * (0.000)+
380 (energy >= 2.0) * (abs(eta) <= 0.88) * (0.99) +
381 (energy >= 2.0) * (abs(eta) >0.88 && abs(eta) <= 3.0) * (0.99) +
382 (abs(eta) > 3.0) * (0.000)
383 }
384}
385
386################
387# Muon isolation
388################
389
390module Isolation MuonIsolation {
391 set CandidateInputArray MuonEfficiency/muons
392 set IsolationInputArray EFlowMerger/eflow
393
394 set OutputArray muons
395
396 set DeltaRMax 0.5
397
398 set PTMin 0.5
399
400 set PTRatioMax 0.25
401}
402
403###################
404# Missing ET merger
405###################
406
407module Merger MissingET {
408# add InputArray InputArray
409 add InputArray EFlowMerger/eflow
410 set MomentumOutputArray momentum
411}
412
413##################
414# Scalar HT merger
415##################
416
417module Merger ScalarHT {
418# add InputArray InputArray
419 add InputArray UniqueObjectFinder/jets
420 add InputArray UniqueObjectFinder/electrons
421 add InputArray UniqueObjectFinder/photons
422 add InputArray UniqueObjectFinder/muons
423 set EnergyOutputArray energy
424}
425
426#####################
427# Neutrino Filter
428#####################
429
430module PdgCodeFilter NeutrinoFilter {
431
432 set InputArray Delphes/stableParticles
433 set OutputArray filteredParticles
434
435 set PTMin 0.0
436
437 add PdgCode {12}
438 add PdgCode {14}
439 add PdgCode {16}
440 add PdgCode {-12}
441 add PdgCode {-14}
442 add PdgCode {-16}
443}
444
445
446#####################
447# MC truth jet finder
448#####################
449
450module FastJetFinder GenJetFinder {
451 set InputArray NeutrinoFilter/filteredParticles
452
453 set OutputArray jets
454
455 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
456 set JetAlgorithm 6
457 set ParameterR 0.4
458 set JetPTMin 1.0
459}
460
461
462#########################
463# Gen Missing ET merger
464########################
465
466module Merger GenMissingET {
467# add InputArray InputArray
468 add InputArray NeutrinoFilter/filteredParticles
469 set MomentumOutputArray momentum
470}
471
472############
473# Jet finder
474############
475
476module FastJetFinder FastJetFinder {
477# set InputArray Calorimeter/towers
478 set InputArray EFlowMerger/eflow
479
480 set OutputArray jets
481
482 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
483 set JetAlgorithm 6
484 set ParameterR 0.4
485 set JetPTMin 1.0
486}
487
488##################
489# Jet Energy Scale
490##################
491
492module EnergyScale JetEnergyScale {
493 set InputArray FastJetFinder/jets
494 set OutputArray jets
495
496 # scale formula for jets
497 set ScaleFormula {1.08}
498}
499
500########################
501# Jet Flavor Association
502########################
503
504module JetFlavorAssociation JetFlavorAssociation {
505
506 set PartonInputArray Delphes/partons
507 set ParticleInputArray Delphes/allParticles
508 set ParticleLHEFInputArray Delphes/allParticlesLHEF
509 set JetInputArray JetEnergyScale/jets
510
511 set DeltaR 0.5
512 set PartonPTMin 1.0
513 set PartonEtaMax 3.0
514}
515
516###########
517# b-tagging
518###########
519
520module BTagging BTagging {
521 set JetInputArray JetEnergyScale/jets
522
523 set BitNumber 0
524
525 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
526
527 # default efficiency formula (misidentification rate)
528 add EfficiencyFormula {0} {0.01}
529
530 # efficiency formula for c-jets (misidentification rate)
531 add EfficiencyFormula {4} {0.10}
532
533 # efficiency formula for b-jets
534 add EfficiencyFormula {5} {0.80}
535}
536
537#############
538# tau-tagging
539#############
540
541module TauTagging TauTagging {
542 set ParticleInputArray Delphes/allParticles
543 set PartonInputArray Delphes/partons
544 set JetInputArray JetEnergyScale/jets
545
546 set DeltaR 0.5
547 set TauPTMin 1.0
548 set TauEtaMax 3.0
549
550 # default efficiency formula (misidentification rate)
551 add EfficiencyFormula {0} {0.001}
552 # efficiency formula for tau-jets
553 add EfficiencyFormula {15} {0.6}
554}
555
556
557#####################################################
558# Find uniquely identified photons/electrons/tau/jets
559#####################################################
560
561module UniqueObjectFinder UniqueObjectFinder {
562# earlier arrays take precedence over later ones
563# add InputArray InputArray OutputArray
564 add InputArray PhotonIsolation/photons photons
565 add InputArray ElectronIsolation/electrons electrons
566 add InputArray MuonIsolation/muons muons
567 add InputArray JetEnergyScale/jets jets
568}
569
570
571
572##################
573# ROOT tree writer
574##################
575
576# Tracks, towers and eflow objects are not stored by default in the output.
577# If needed (for jet constituent or other studies), uncomment the relevant
578# "add Branch ..." lines.
579
580module TreeWriter TreeWriter {
581 # add Branch InputArray BranchName BranchClass
582
583 add Branch Delphes/allParticles Particle GenParticle
584
585 add Branch TrackMerger/tracks Track Track
586 add Branch Calorimeter/towers Tower Tower
587
588 add Branch Calorimeter/eflowTracks EFlowTrack Track
589 add Branch Calorimeter/eflowPhotons EFlowPhoton Tower
590 add Branch Calorimeter/eflowNeutralHadrons EFlowNeutralHadron Tower
591
592 add Branch Calorimeter/photons CaloPhoton Photon
593 add Branch PhotonEfficiency/photons PhotonEff Photon
594 add Branch PhotonIsolation/photons PhotonIso Photon
595
596 add Branch GenJetFinder/jets GenJet Jet
597 add Branch GenMissingET/momentum GenMissingET MissingET
598
599 add Branch UniqueObjectFinder/jets Jet Jet
600 add Branch UniqueObjectFinder/electrons Electron Electron
601 add Branch UniqueObjectFinder/photons Photon Photon
602 add Branch UniqueObjectFinder/muons Muon Muon
603
604 add Branch JetEnergyScale/jets AntiKtJet Jet
605
606 add Branch MissingET/momentum MissingET MissingET
607 add Branch ScalarHT/energy ScalarHT ScalarHT
608}
609
Note: See TracBrowser for help on using the repository browser.