Fork me on GitHub

source: git/cards/FCC/FCChh_PileUpVtx.tcl@ c7e90d8

Timing
Last change on this file since c7e90d8 was 4ac0049, checked in by Kaan Yüksel Oyulmaz <kaanyukseloyulmaz@…>, 5 years ago

VertexFinderDA4D.cc module is cleaned from graphs, FCChh_PileUpVtx.tcl card, PileUpSubtractor4D.cc and TimeSmearing.cc were updated in meeting

  • Property mode set to 100644
File size: 27.1 KB
Line 
1#
2# Official Delphes card prepared by FCC-hh collaboration
3#
4# Main authors: Michele Selvaggi (CERN)
5#
6# Released on: Dec. 1st, 2017
7#
8# Configuration: FCC-hh baseline detector
9#
10#######################################
11# Order of execution of various modules
12#######################################
13
14set MaxEvents 1000
15set RandomSeed 123
16
17set ExecutionPath {
18
19 PileUpMerger
20 ParticlePropagator
21
22 ChargedHadronTrackingEfficiency
23 ElectronTrackingEfficiency
24 MuonTrackingEfficiency
25
26 ChargedHadronMomentumSmearing
27 ElectronMomentumSmearing
28 MuonMomentumSmearing
29
30 EnergyLoss
31
32 TrackMerger
33
34 TrackSmearing
35
36 ECal
37 HCal
38
39 Calorimeter
40 EFlowMerger
41 EFlowFilter
42
43 TimeSmearingMIP
44 TimeSmearingPhotons
45 TimeSmearingNH
46
47 VertexFinderDA4D
48 PileUpSubtractor4D
49
50 HighMassVertexRecover
51
52 PhotonEfficiency
53 PhotonIsolation
54
55 ElectronFilter
56 ElectronIsolation
57
58 ChargedHadronFilter
59
60 MuonIsolation
61
62 NeutrinoFilter
63
64 MissingET
65 GenMissingET
66
67 GenJetFinder04
68 FastJetFinder04
69 CaloJetFinder04
70 TrackJetFinder04
71
72 JetEnergyScale
73
74 JetFlavorAssociation
75
76 BTagging
77 CTagging
78 TauTagging
79
80 ScalarHT
81
82 UniqueObjectFinder
83
84 TreeWriter
85}
86
87###############
88# PileUp Merger
89###############
90
91module PileUpMerger PileUpMerger {
92 set InputArray Delphes/stableParticles
93
94 set ParticleOutputArray stableParticles
95 set VertexOutputArray vertices
96
97 # pre-generated minbias input file
98 set PileUpFile MinBias.pileup
99
100 # average expected pile up
101 set MeanPileUp 10
102
103 # 0-poisson, 1-uniform, 2-delta
104 set PileUpDistribution 2
105
106 # maximum spread in the beam direction in m
107 set ZVertexSpread 0.25
108
109 # maximum spread in time in s
110 set TVertexSpread 800E-12
111
112 # vertex smearing formula f(z,t) (z,t need to be respectively given in m,s)
113
114 #set VertexDistributionFormula {exp(-(t^2/(2*(0.063/2.99792458E8*exp(-(z^2/(2*(0.063)^2))))^2)))}
115 set VertexDistributionFormula {exp(-(t^2/160e-12^2/2))*exp(-(z^2/0.053^2/2))}
116
117 # taking 5.3 cm x 160 ps
118
119 #set VertexDistributionFormula { (abs(t) <= 160e-12) * (abs(z) <= 0.053) * (1.00) +
120 # (abs(t) > 160e-12) * (abs(z) <= 0.053) * (0.00) +
121 # (abs(t) <= 160e-12) * (abs(z) > 0.053) * (0.00) +
122 # (abs(t) > 160e-12) * (abs(z) > 0.053) * (0.00)}
123
124}
125
126#################################
127# Propagate particles in cylinder
128#################################
129
130module ParticlePropagator ParticlePropagator {
131 set InputArray PileUpMerger/stableParticles
132 set OutputArray stableParticles
133 set ChargedHadronOutputArray chargedHadrons
134 set ElectronOutputArray electrons
135 set MuonOutputArray muons
136
137 # radius of the magnetic field coverage, in m
138 set Radius 1.5
139 # half-length of the magnetic field coverage, in m
140 set HalfLength 5
141
142 # magnetic field
143 set Bz 4.0
144}
145
146
147####################################
148# Charged hadron tracking efficiency
149####################################
150
151module Efficiency ChargedHadronTrackingEfficiency {
152 set InputArray ParticlePropagator/chargedHadrons
153 set OutputArray chargedHadrons
154
155 # TBC (which eta_max ? which pT min?)
156
157 # tracking efficiency formula for charged hadrons
158
159 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
160(abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
161(abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
162(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
163(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
164(abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
165(abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
166(abs(eta) > 6.0) * (0.00)}
167
168}
169
170##############################
171# Electron tracking efficiency
172##############################
173
174module Efficiency ElectronTrackingEfficiency {
175 set InputArray ParticlePropagator/electrons
176 set OutputArray electrons
177
178# TBC (which eta_max ?)
179# putting same as charged hadrons for now...
180
181 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
182 (abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
183 (abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
184 (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
185 (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
186 (abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
187 (abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
188 (abs(eta) > 6.0) * (0.00)}
189
190}
191
192##########################
193# Muon tracking efficiency
194##########################
195
196module Efficiency MuonTrackingEfficiency {
197 set InputArray ParticlePropagator/muons
198 set OutputArray muons
199
200# TBC (which eta_max ? why eff = 0 for 4 < eta < 6 ? for now put the same as central)
201# what about high pT ?
202 # tracking efficiency formula for muons
203 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
204 (abs(eta) <= 6.0) * (pt > 0.5 && pt <= 1) * (0.90) + \
205 (abs(eta) <= 6.0) * (pt > 1) * (0.99) + \
206 (abs(eta) > 6.0) * (0.00)}
207
208}
209
210########################################
211# Momentum resolution for charged tracks
212########################################
213
214module MomentumSmearing ChargedHadronMomentumSmearing {
215 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
216 set OutputArray chargedHadrons
217
218 source momentumResolutionVsP.tcl
219}
220
221
222###################################
223# Momentum resolution for electrons
224###################################
225
226module MomentumSmearing ElectronMomentumSmearing {
227 set InputArray ElectronTrackingEfficiency/electrons
228 set OutputArray electrons
229
230 source momentumResolutionVsP.tcl
231}
232
233
234###############################
235# Momentum resolution for muons
236###############################
237
238module MomentumSmearing MuonMomentumSmearing {
239 set InputArray MuonTrackingEfficiency/muons
240 set OutputArray muons
241
242 # TBC for just putting tracker resolution/ need to add improvement at high pT
243
244 source muonMomentumResolutionVsP.tcl
245}
246
247#################################
248# Charged Energy Loss (dE/dx)
249#################################
250
251module EnergyLoss EnergyLoss {
252 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
253 add InputArray ElectronMomentumSmearing/electrons
254 add InputArray MuonMomentumSmearing/muons
255
256 set ActiveFraction 0.013
257 set ChargeCollectionEfficiency 0.75
258
259 # fixme: this number should probably be charge/energy dependent, or absolute number in MeV/cm?
260 set Resolution 0.15
261
262 # active material properties (cf. http://pdg.lbl.gov/2014/AtomicNuclearProperties/properties8.dat)
263 set Z 14.
264 set A 28.0855
265 set rho 2.329
266
267 # material polarisation correction parameters
268 set a 0.1492
269 set m 3.2546
270 set x0 0.2015
271 set x1 2.8716
272 set I 173.0
273 set c0 4.4355
274
275}
276
277##############
278# Track merger
279##############
280
281module Merger TrackMerger {
282# add InputArray InputArray
283 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
284 add InputArray ElectronMomentumSmearing/electrons
285 add InputArray MuonMomentumSmearing/muons
286 set OutputArray tracks
287}
288
289
290
291########################################
292# Smear tracks
293########################################
294
295module TrackSmearing TrackSmearing {
296 set InputArray TrackMerger/tracks
297 set OutputArray tracks
298 set ApplyToPileUp true
299
300 # from http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
301 source trackResolutionFCChh.tcl
302 # FIXME !!!! we need to add track resolution of FCC-hh baseline detector !!!!!
303}
304
305
306#############
307# ECAL
308#############
309
310# TBC : calos seems ok, check eta max value though.
311
312module SimpleCalorimeter ECal {
313 set ParticleInputArray ParticlePropagator/stableParticles
314 set TrackInputArray TimeSmearing/tracks
315
316 set TowerOutputArray ecalTowers
317 set EFlowTrackOutputArray eflowTracks
318 set EFlowTowerOutputArray eflowPhotons
319
320 set IsEcal true
321
322 set EnergyMin 0.5
323 set EnergySignificanceMin 2.0
324
325 set SmearTowerCenter true
326
327 set pi [expr {acos(-1)}]
328
329 # lists of the edges of each tower in eta and phi
330 # each list starts with the lower edge of the first tower
331 # the list ends with the higher edged of the last tower
332
333 # 0.012 rad towers up to eta = 2.5 (barrel)
334 set PhiBins {}
335 for {set i -256} {$i <= 256} {incr i} {
336 add PhiBins [expr {$i * $pi/256.0}]
337 }
338
339 # 0.01 unit in eta up to eta = 2.5 (barrel)
340 for {set i -249} {$i <= 250} {incr i} {
341 set eta [expr {$i * 0.01}]
342 add EtaPhiBins $eta $PhiBins
343 }
344
345 # 0.025 rad between 2.5 and 6.0
346 set PhiBins {}
347 for {set i -128} {$i <= 128} {incr i} {
348 add PhiBins [expr {$i * $pi/128.0}]
349 }
350
351 # 0.025 unit in eta between 2.5 and 6.0
352 for {set i 0} {$i <= 140} {incr i} {
353 set eta [expr { -6.00 + $i * 0.025}]
354 add EtaPhiBins $eta $PhiBins
355 }
356
357 for {set i 0} {$i <= 139} {incr i} {
358 set eta [expr { 2.525 + $i * 0.025}]
359 add EtaPhiBins $eta $PhiBins
360 }
361
362 # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
363
364 add EnergyFraction {0} {0.0}
365 # energy fractions for e, gamma and pi0
366 add EnergyFraction {11} {1.0}
367 add EnergyFraction {22} {1.0}
368 add EnergyFraction {111} {1.0}
369 # energy fractions for muon, neutrinos and neutralinos
370 add EnergyFraction {12} {0.0}
371 add EnergyFraction {13} {0.0}
372 add EnergyFraction {14} {0.0}
373 add EnergyFraction {16} {0.0}
374 add EnergyFraction {1000022} {0.0}
375 add EnergyFraction {1000023} {0.0}
376 add EnergyFraction {1000025} {0.0}
377 add EnergyFraction {1000035} {0.0}
378 add EnergyFraction {1000045} {0.0}
379 # energy fractions for K0short and Lambda
380 # add EnergyFraction {310} {0.3}
381 # add EnergyFraction {3122} {0.3}
382
383 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
384 set ResolutionFormula { (abs(eta) <= 4.0) * sqrt(energy^2*0.007^2 + energy*0.10^2) + \
385 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.035^2 + energy*0.30^2)}
386
387
388}
389
390#############
391# HCAL
392#############
393
394module SimpleCalorimeter HCal {
395 set ParticleInputArray ParticlePropagator/stableParticles
396 set TrackInputArray ECal/eflowTracks
397
398 set TowerOutputArray hcalTowers
399 set EFlowTrackOutputArray eflowTracks
400 set EFlowTowerOutputArray eflowNeutralHadrons
401
402 set IsEcal false
403
404 set EnergyMin 1.0
405 set EnergySignificanceMin 2.0
406
407 set SmearTowerCenter true
408
409 set pi [expr {acos(-1)}]
410
411 # lists of the edges of each tower in eta and phi
412 # each list starts with the lower edge of the first tower
413 # the list ends with the higher edged of the last tower
414
415 # 0.025 rad towers up to eta = 2.5 (barrel)
416 set PhiBins {}
417 for {set i -128} {$i <= 128} {incr i} {
418 add PhiBins [expr {$i * $pi/128.0}]
419 }
420
421 # 0.025 unit in eta up to eta = 2.5 (barrel)
422 for {set i -99} {$i <= 100} {incr i} {
423 set eta [expr {$i * 0.025}]
424 add EtaPhiBins $eta $PhiBins
425 }
426
427 # 0.05 rad between 2.5 and 6.0
428 set PhiBins {}
429 for {set i -64} {$i <= 64} {incr i} {
430 add PhiBins [expr {$i * $pi/64.0}]
431 }
432
433 # 0.05 unit in eta between 2.5 and 6.0
434 for {set i 0} {$i <= 70} {incr i} {
435 set eta [expr { -6.00 + $i * 0.05}]
436 add EtaPhiBins $eta $PhiBins
437 }
438
439 for {set i 0} {$i <= 69} {incr i} {
440 set eta [expr { 2.55 + $i * 0.05}]
441 add EtaPhiBins $eta $PhiBins
442 }
443
444
445 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
446 add EnergyFraction {0} {1.0}
447 # energy fractions for e, gamma and pi0
448 add EnergyFraction {11} {0.0}
449 add EnergyFraction {22} {0.0}
450 add EnergyFraction {111} {0.0}
451 # energy fractions for muon, neutrinos and neutralinos
452 add EnergyFraction {12} {0.0}
453 add EnergyFraction {13} {0.0}
454 add EnergyFraction {14} {0.0}
455 add EnergyFraction {16} {0.0}
456 add EnergyFraction {1000022} {0.0}
457 add EnergyFraction {1000023} {0.0}
458 add EnergyFraction {1000025} {0.0}
459 add EnergyFraction {1000035} {0.0}
460 add EnergyFraction {1000045} {0.0}
461 # energy fractions for K0short and Lambda
462 # add EnergyFraction {310} {0.7}
463 # add EnergyFraction {3122} {0.7}
464
465 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
466 set ResolutionFormula { (abs(eta) <= 1.7) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
467 (abs(eta) > 1.7 && abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.60^2) + \
468 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.10^2 + energy*1.00^2)}
469}
470
471#################
472# Electron filter
473#################
474
475module PdgCodeFilter ElectronFilter {
476 set InputArray HCal/eflowTracks
477 set OutputArray electrons
478 set Invert true
479 add PdgCode {11}
480 add PdgCode {-11}
481}
482
483
484######################
485# ChargedHadronFilter
486######################
487
488module PdgCodeFilter ChargedHadronFilter {
489 set InputArray HCal/eflowTracks
490 set OutputArray chargedHadrons
491
492 add PdgCode {11}
493 add PdgCode {-11}
494 add PdgCode {13}
495 add PdgCode {-13}
496}
497
498
499###################################################
500# Tower Merger (in case not using e-flow algorithm)
501###################################################
502
503module Merger Calorimeter {
504# add InputArray InputArray
505 add InputArray ECal/ecalTowers
506 add InputArray HCal/hcalTowers
507 add InputArray MuonMomentumSmearing/muons
508 set OutputArray towers
509}
510
511####################
512# Energy flow merger
513####################
514
515module Merger EFlowMerger {
516# add InputArray InputArray
517 add InputArray HCal/eflowTracks
518 add InputArray ECal/eflowPhotons
519 add InputArray HCal/eflowNeutralHadrons
520 set OutputArray eflow
521}
522
523######################
524# EFlowFilter
525######################
526
527module PdgCodeFilter EFlowFilter {
528 set InputArray EFlowMerger/eflow
529 set OutputArray eflow
530
531 add PdgCode {11}
532 add PdgCode {-11}
533 add PdgCode {13}
534 add PdgCode {-13}
535}
536
537########################################
538# Time Smearing Neutral MIP
539########################################
540
541module TimeSmearing TimeSmearingMIP {
542 set InputArray HCal/eflowTracks
543 set OutputArray tracks
544
545 # assume 30 ps resolution for now
546 set TimeResolution {30E-12}
547}
548
549########################################
550# Time Smearing Neutral Photons
551########################################
552
553module TimeSmearing TimeSmearingPhotons {
554 set InputArray ECal/eflowPhotons
555 set OutputArray photons
556 set TimeResolution {sqrt(20^2 + 150^2)/energy^2}
557}
558
559########################################
560# Time Smearing Neutral NeutralHadrons
561########################################
562#
563module TimeSmearing TimeSmearingNH {
564 set InputArray HCal/eflowNeutralHadrons
565 set OutputArray neutralhadrons
566
567 # assume 30 ps resolution for now
568 set TimeResolution {sqrt(20^2 + 150^2)/energy^2}
569}
570
571
572##################################
573# Primary vertex reconstruction
574##################################
575
576
577module VertexFinderDA4D VertexFinderDA4D {
578 set InputArray TimeSmearingMIP/tracks
579
580 set OutputArray tracks
581 set VertexOutputArray vertices
582
583 set Verbose 0
584 set MinPT 1.0
585
586 # in mm
587 set VertexSpaceSize 0.5
588
589 # in s
590 set VertexTimeSize 10E-12
591
592 set UseTc 1
593 set BetaMax 0.1
594 set BetaStop 1.0
595 set CoolingFactor 0.8
596 set MaxIterations 100
597
598 # in mm
599 set DzCutOff 40
600 set D0CutOff 30
601
602}
603
604##########################
605# Track pile-up subtractor
606##########################
607
608module PileUpSubtractor4D PileUpSubtractor4D {
609# add InputArray InputArray OutputArray
610
611 add InputArray TimeSmearingMIP/tracks
612 add InputArray TimeSmearingPhotons/photons
613 add InputArray TimeSmearingNH/neutralhadrons
614
615 set VertexInputArray VertexFinderDA4D/vertices
616
617 set fChargedMinSignificance {3}
618 set fNeutralMinSignificance {3}
619}
620
621######################################
622# Heavy(slow) particles vertex recover
623######################################
624
625module HighMassVertexRecover HighMassVertexRecover {
626
627 set TrackInputArray VertexFinderDA4D/tracks
628 set VertexInputArray VertexFinderDA4D/vertices
629
630 set TrackOutputArray tracks
631 set VertexOutputArray vertices
632
633 set Verbose 0
634
635}
636
637###################
638# Missing ET merger
639###################
640
641module Merger MissingET {
642# add InputArray InputArray
643 add InputArray EFlowMerger/eflow
644 set MomentumOutputArray momentum
645}
646
647
648
649##################
650# Scalar HT merger
651##################
652
653module Merger ScalarHT {
654# add InputArray InputArray
655 add InputArray EFlowMerger/eflow
656 set EnergyOutputArray energy
657}
658
659#################
660# Neutrino Filter
661#################
662
663module PdgCodeFilter NeutrinoFilter {
664
665 set InputArray Delphes/stableParticles
666 set OutputArray filteredParticles
667
668 set PTMin 0.0
669
670 add PdgCode {12}
671 add PdgCode {14}
672 add PdgCode {16}
673 add PdgCode {-12}
674 add PdgCode {-14}
675 add PdgCode {-16}
676
677}
678
679
680#########################
681# Gen Missing ET merger
682########################
683
684module Merger GenMissingET {
685
686# add InputArray InputArray
687 add InputArray NeutrinoFilter/filteredParticles
688 set MomentumOutputArray momentum
689}
690
691
692#####################
693# MC truth jet finder
694#####################
695
696# TBC: is jet radius fine?
697
698module FastJetFinder GenJetFinder04 {
699 set InputArray NeutrinoFilter/filteredParticles
700
701 set OutputArray jets
702
703 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
704 set JetAlgorithm 6
705 set ParameterR 0.4
706
707 set ComputeNsubjettiness 1
708 set Beta 1.0
709 set AxisMode 4
710
711 set ComputeSoftDrop 1
712 set BetaSoftDrop 0.0
713 set SymmetryCutSoftDrop 0.1
714 set R0SoftDrop 0.4
715
716 set JetPTMin 25.0
717}
718
719
720
721##################
722# Fast Jet finder
723##################
724
725module FastJetFinder FastJetFinder04 {
726 set InputArray EFlowMerger/eflow
727
728 set OutputArray jets
729
730 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
731 set JetAlgorithm 6
732 set ParameterR 0.4
733
734 set ComputeNsubjettiness 1
735 set Beta 1.0
736 set AxisMode 4
737
738 set ComputeSoftDrop 1
739 set BetaSoftDrop 0.0
740 set SymmetryCutSoftDrop 0.1
741 set R0SoftDrop 0.4
742
743 set JetPTMin 25.0
744}
745
746
747##################
748# Fast Jet finder
749##################
750
751module FastJetFinder CaloJetFinder04 {
752 set InputArray Calorimeter/towers
753
754 set OutputArray jets
755
756 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
757 set JetAlgorithm 6
758 set ParameterR 0.4
759
760 set ComputeNsubjettiness 1
761 set Beta 1.0
762 set AxisMode 4
763
764 set ComputeSoftDrop 1
765 set BetaSoftDrop 0.0
766 set SymmetryCutSoftDrop 0.1
767 set R0SoftDrop 0.4
768
769 set JetPTMin 25.0
770}
771
772##################
773# Fast Jet finder
774##################
775
776module FastJetFinder TrackJetFinder04 {
777 set InputArray TrackMerger/tracks
778
779 set OutputArray jets
780
781 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
782 set JetAlgorithm 6
783 set ParameterR 0.4
784
785 set ComputeNsubjettiness 1
786 set Beta 1.0
787 set AxisMode 4
788
789 set ComputeSoftDrop 1
790 set BetaSoftDrop 0.0
791 set SymmetryCutSoftDrop 0.1
792 set R0SoftDrop 0.4
793
794 set JetPTMin 25.0
795}
796
797
798##################
799# Jet Energy Scale
800##################
801
802module EnergyScale JetEnergyScale {
803 set InputArray FastJetFinder04/jets
804 set OutputArray jets
805
806 # scale formula for jets
807 set ScaleFormula {1.00}
808}
809
810
811########################
812# Jet Flavor Association
813########################
814
815module JetFlavorAssociation JetFlavorAssociation {
816
817 set PartonInputArray Delphes/partons
818 set ParticleInputArray Delphes/allParticles
819 set ParticleLHEFInputArray Delphes/allParticlesLHEF
820 set JetInputArray JetEnergyScale/jets
821
822 set DeltaR 0.5
823 set PartonPTMin 5.0
824 set PartonEtaMax 6.0
825
826}
827
828###################
829# Photon efficiency
830###################
831
832module Efficiency PhotonEfficiency {
833 set InputArray ECal/eflowPhotons
834 set OutputArray photons
835
836 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
837
838 set EfficiencyFormula {
839 (pt <= 1.0) * (0.00) + \
840 (abs(eta) <= 2.5) * (pt > 1.0 && pt < 5.0) * (0.70) +
841 (abs(eta) <= 2.5) * (pt > 5.0 && pt < 10.0) * (0.85) +
842 (abs(eta) <= 2.5) * (pt > 10.0) * (0.95) +
843
844 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt < 5.0) * (0.60) +
845 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 5.0 && pt < 10.0) * (0.80) +
846 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.90) +
847
848 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 1.0 && pt < 5.0) * (0.50) + \
849 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 5.0 && pt < 10.0) * (0.70) + \
850 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 10.0) * (0.80) + \
851 (abs(eta) > 6.0) * (0.00)}
852
853}
854
855##################
856# Photon isolation
857##################
858
859# TBC: check values for iso cuts
860
861module Isolation PhotonIsolation {
862 set CandidateInputArray PhotonEfficiency/photons
863 set IsolationInputArray EFlowFilter/eflow
864
865 set OutputArray photons
866
867 set DeltaRMax 0.3
868
869 set PTMin 0.5
870
871 set PTRatioMax 0.1
872}
873
874
875####################
876# Electron isolation
877####################
878
879# TBC: check values for iso cuts
880
881module Isolation ElectronIsolation {
882 set CandidateInputArray ElectronFilter/electrons
883 set IsolationInputArray EFlowFilter/eflow
884
885 set OutputArray electrons
886
887 set DeltaRMax 0.3
888
889 set PTMin 0.5
890
891 set PTRatioMax 0.1
892}
893
894
895################
896# Muon isolation
897################
898
899# TBC: check values for iso cuts
900
901module Isolation MuonIsolation {
902 set CandidateInputArray MuonMomentumSmearing/muons
903 set IsolationInputArray EFlowFilter/eflow
904
905 set OutputArray muons
906
907 set DeltaRMax 0.3
908
909 set PTMin 0.5
910
911 set PTRatioMax 0.2
912}
913
914
915
916###########
917# b-tagging
918###########
919
920module BTagging BTagging {
921 set JetInputArray JetEnergyScale/jets
922
923 set BitNumber 0
924
925 add EfficiencyFormula {0} {
926
927 (pt <= 10.0) * (0.00) +
928 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.01) + \
929 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.01)*(1.0 - pt/15000.) + \
930 (abs(eta) < 2.5) * (pt > 15000.0) * (0.00) + \
931 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.0075) + \
932 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.0075)*(1.0 - pt/15000.) + \
933 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
934 (abs(eta) > 4.0) * (0.00)}
935
936 add EfficiencyFormula {4} {
937
938 (pt <= 10.0) * (0.00) +
939 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.05) + \
940 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.05)*(1.0 - pt/15000.) + \
941 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) + \
942 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.03) + \
943 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.03)*(1.0 - pt/15000.) + \
944 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
945 (abs(eta) > 4.0) * (0.00)}
946
947 add EfficiencyFormula {5} {
948
949 (pt <= 10.0) * (0.00) +
950 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.85) +
951 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.85)*(1.0 - pt/15000.) +
952 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) +
953 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.64) +
954 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.64)*(1.0 - pt/15000.) +
955 (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) +
956 (abs(eta) >= 4.0) * (0.00)}
957
958}
959
960###########
961# c-tagging
962###########
963
964module BTagging CTagging {
965 set JetInputArray JetEnergyScale/jets
966
967 set BitNumber 1
968
969 add EfficiencyFormula {0} {
970
971 (pt <= 10.0) * (0.00) +
972 (abs(eta) < 4.0) * (pt > 10.0) * (0.01) + \
973 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
974
975 add EfficiencyFormula {4} {
976
977 (pt <= 10.0) * (0.00) +
978 (abs(eta) < 4.0) * (pt > 10.0) * (0.25) + \
979 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
980
981 add EfficiencyFormula {5} {
982
983 (pt <= 10.0) * (0.00) +
984 (abs(eta) < 4.0) * (pt > 10.0) * (0.03) + \
985 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
986
987}
988
989
990#############
991# tau-tagging
992#############
993
994
995module TauTagging TauTagging {
996 set ParticleInputArray Delphes/allParticles
997 set PartonInputArray Delphes/partons
998 set JetInputArray JetEnergyScale/jets
999
1000 set DeltaR 0.5
1001
1002 set TauPTMin 1.0
1003
1004 set TauEtaMax 4.0
1005
1006 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
1007 add EfficiencyFormula {0} {
1008
1009 (pt <= 10.0) * (0.00) +
1010 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.01) + \
1011 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.01) *(8./9. - pt/30000.) + \
1012 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
1013 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.0075) + \
1014 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.0075)*(8./9. - pt/30000.) + \
1015 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
1016 (abs(eta) > 4.0) * (0.00)}
1017
1018 add EfficiencyFormula {11} {
1019
1020 (pt <= 10.0) * (0.00) +
1021 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.005) + \
1022 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.005) *(8./9. - pt/30000.) + \
1023 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
1024 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.00375) + \
1025 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.00375)*(8./9. - pt/30000.) + \
1026 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
1027 (abs(eta) > 4.0) * (0.00)}
1028
1029 add EfficiencyFormula {15} {
1030
1031 (pt <= 10.0) * (0.00) +
1032 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.8) + \
1033 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.8) *(8./9. - pt/30000.) + \
1034 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
1035 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.65) + \
1036 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.65)*(8./9. - pt/30000.) + \
1037 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
1038 (abs(eta) > 4.0) * (0.00)}
1039
1040}
1041
1042#####################################################
1043# Find uniquely identified photons/electrons/tau/jets
1044#####################################################
1045
1046module UniqueObjectFinder UniqueObjectFinder {
1047# earlier arrays take precedence over later ones
1048# add InputArray InputArray OutputArray
1049 add InputArray PhotonIsolation/photons photons
1050 add InputArray ElectronIsolation/electrons electrons
1051 add InputArray MuonIsolation/muons muons
1052 add InputArray JetEnergyScale/jets jets
1053
1054}
1055
1056
1057##################
1058# ROOT tree writer
1059##################
1060
1061module TreeWriter TreeWriter {
1062# add Branch InputArray BranchName BranchClass
1063 add Branch Delphes/allParticles Particle GenParticle
1064
1065 add Branch GenMissingET/momentum GenMissingET MissingET
1066
1067 add Branch TimeSmearing/tracks Track Track
1068 add Branch Calorimeter/towers Tower Tower
1069
1070 add Branch HCal/eflowTracks EFlowTrack Track
1071 add Branch ECal/eflowPhotons EFlowPhoton Tower
1072 add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
1073
1074 add Branch UniqueObjectFinder/photons Photon Photon
1075 add Branch UniqueObjectFinder/electrons Electron Electron
1076 add Branch UniqueObjectFinder/muons Muon Muon
1077 add Branch UniqueObjectFinder/jets Jet Jet
1078
1079 add Branch GenJetFinder04/jets GenJet04 Jet
1080 add Branch FastJetFinder04/jets ParticleFlowJet04 Jet
1081 add Branch CaloJetFinder04/jets CaloJet04 Jet
1082 add Branch TrackJetFinder04/jets TrackJet04 Jet
1083
1084 add Branch MissingET/momentum MissingET MissingET
1085 add Branch ScalarHT/energy ScalarHT ScalarHT
1086 add Branch VertexFinderDA4D/vertices Vertex4D Vertex
1087
1088 add Branch HighMassVertexRecover/tracks Track Track
1089}
1090
Note: See TracBrowser for help on using the repository browser.