Fork me on GitHub

source: git/cards/FCC/FCChh_PileUpVtx.tcl@ 9c52415

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

Merging

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