Fork me on GitHub

source: git/cards/FCC/FCChh_PileUpVtx.tcl@ 03b9c0f

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

New Time Smearing Module for Neutral Particles and FCC-hh Detector Card Update

  • Property mode set to 100644
File size: 26.6 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 TimeSmearingMIP
39 TimeSmearingPhotons
40 TimeSmearingNH
41
42 Calorimeter
43 EFlowMerger
44 EFlowFilter
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# Time Smearing Neutral MIP
454########################################
455
456module TimeSmearingNeutral TimeSmearingMIP {
457 set InputArray HCal/eflowTracks
458 set OutputArray timeSmearingMIP
459
460 # assume 20 ps resolution for now
461 set TimeResolution {30E-12}
462}
463
464########################################
465# Time Smearing Neutral Photons
466########################################
467
468module TimeSmearingNeutral TimeSmearingPhotons {
469 set InputArray HCal/eflowTracks
470 set OutputArray timeSmearingPhotons
471}
472
473########################################
474# Time Smearing Neutral NeutralHadrons
475########################################
476
477module TimeSmearingNeutral TimeSmearingNH {
478 set InputArray HCal/eflowTracks
479 set OutputArray timeSmearingNH
480
481 # assume 20 ps resolution for now
482 set TimeResolution {30E-12}
483}
484
485
486#################
487# Electron filter
488#################
489
490module PdgCodeFilter ElectronFilter {
491 set InputArray HCal/eflowTracks
492 set OutputArray electrons
493 set Invert true
494 add PdgCode {11}
495 add PdgCode {-11}
496}
497
498
499######################
500# ChargedHadronFilter
501######################
502
503module PdgCodeFilter ChargedHadronFilter {
504 set InputArray HCal/eflowTracks
505 set OutputArray chargedHadrons
506
507 add PdgCode {11}
508 add PdgCode {-11}
509 add PdgCode {13}
510 add PdgCode {-13}
511}
512
513
514###################################################
515# Tower Merger (in case not using e-flow algorithm)
516###################################################
517
518module Merger Calorimeter {
519# add InputArray InputArray
520 add InputArray ECal/ecalTowers
521 add InputArray HCal/hcalTowers
522 add InputArray MuonMomentumSmearing/muons
523 set OutputArray towers
524}
525
526####################
527# Energy flow merger
528####################
529
530module Merger EFlowMerger {
531# add InputArray InputArray
532 add InputArray HCal/eflowTracks
533 add InputArray ECal/eflowPhotons
534 add InputArray HCal/eflowNeutralHadrons
535 set OutputArray eflow
536}
537
538######################
539# EFlowFilter
540######################
541
542module PdgCodeFilter EFlowFilter {
543 set InputArray EFlowMerger/eflow
544 set OutputArray eflow
545
546 add PdgCode {11}
547 add PdgCode {-11}
548 add PdgCode {13}
549 add PdgCode {-13}
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 ChargedHadronMomentumSmearing/chargedHadrons
592 add InputArray ElectronMomentumSmearing/electrons
593 add InputArray MuonMomentumSmearing/muons
594 add InputArray EFlowMerger/eflow
595
596 set VertexInputArray VertexFinderDA4D/vertices
597
598 set ZVertexResolution {3}
599 set TVertexResolution {3}
600}
601
602######################################
603# Heavy(slow) particles vertex recover
604######################################
605
606module HighMassVertexRecover HighMassVertexRecover {
607 set TrackInputArray VertexFinderDA4D/tracks
608 set VertexInputArray VertexFinderDA4D/vertices
609
610 set TrackOutputArray tracks
611 set VertexOutputArray vertices
612
613 set Verbose 0
614
615}
616
617###################
618# Missing ET merger
619###################
620
621module Merger MissingET {
622# add InputArray InputArray
623 add InputArray EFlowMerger/eflow
624 set MomentumOutputArray momentum
625}
626
627
628
629##################
630# Scalar HT merger
631##################
632
633module Merger ScalarHT {
634# add InputArray InputArray
635 add InputArray EFlowMerger/eflow
636 set EnergyOutputArray energy
637}
638
639#################
640# Neutrino Filter
641#################
642
643module PdgCodeFilter NeutrinoFilter {
644
645 set InputArray Delphes/stableParticles
646 set OutputArray filteredParticles
647
648 set PTMin 0.0
649
650 add PdgCode {12}
651 add PdgCode {14}
652 add PdgCode {16}
653 add PdgCode {-12}
654 add PdgCode {-14}
655 add PdgCode {-16}
656
657}
658
659
660#########################
661# Gen Missing ET merger
662########################
663
664module Merger GenMissingET {
665
666# add InputArray InputArray
667 add InputArray NeutrinoFilter/filteredParticles
668 set MomentumOutputArray momentum
669}
670
671
672#####################
673# MC truth jet finder
674#####################
675
676# TBC: is jet radius fine?
677
678module FastJetFinder GenJetFinder04 {
679 set InputArray NeutrinoFilter/filteredParticles
680
681 set OutputArray jets
682
683 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
684 set JetAlgorithm 6
685 set ParameterR 0.4
686
687 set ComputeNsubjettiness 1
688 set Beta 1.0
689 set AxisMode 4
690
691 set ComputeSoftDrop 1
692 set BetaSoftDrop 0.0
693 set SymmetryCutSoftDrop 0.1
694 set R0SoftDrop 0.4
695
696 set JetPTMin 25.0
697}
698
699
700
701##################
702# Fast Jet finder
703##################
704
705module FastJetFinder FastJetFinder04 {
706 set InputArray EFlowMerger/eflow
707
708 set OutputArray jets
709
710 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
711 set JetAlgorithm 6
712 set ParameterR 0.4
713
714 set ComputeNsubjettiness 1
715 set Beta 1.0
716 set AxisMode 4
717
718 set ComputeSoftDrop 1
719 set BetaSoftDrop 0.0
720 set SymmetryCutSoftDrop 0.1
721 set R0SoftDrop 0.4
722
723 set JetPTMin 25.0
724}
725
726
727##################
728# Fast Jet finder
729##################
730
731module FastJetFinder CaloJetFinder04 {
732 set InputArray Calorimeter/towers
733
734 set OutputArray jets
735
736 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
737 set JetAlgorithm 6
738 set ParameterR 0.4
739
740 set ComputeNsubjettiness 1
741 set Beta 1.0
742 set AxisMode 4
743
744 set ComputeSoftDrop 1
745 set BetaSoftDrop 0.0
746 set SymmetryCutSoftDrop 0.1
747 set R0SoftDrop 0.4
748
749 set JetPTMin 25.0
750}
751
752##################
753# Fast Jet finder
754##################
755
756module FastJetFinder TrackJetFinder04 {
757 set InputArray TrackMerger/tracks
758
759 set OutputArray jets
760
761 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
762 set JetAlgorithm 6
763 set ParameterR 0.4
764
765 set ComputeNsubjettiness 1
766 set Beta 1.0
767 set AxisMode 4
768
769 set ComputeSoftDrop 1
770 set BetaSoftDrop 0.0
771 set SymmetryCutSoftDrop 0.1
772 set R0SoftDrop 0.4
773
774 set JetPTMin 25.0
775}
776
777
778##################
779# Jet Energy Scale
780##################
781
782module EnergyScale JetEnergyScale {
783 set InputArray FastJetFinder04/jets
784 set OutputArray jets
785
786 # scale formula for jets
787 set ScaleFormula {1.00}
788}
789
790
791########################
792# Jet Flavor Association
793########################
794
795module JetFlavorAssociation JetFlavorAssociation {
796
797 set PartonInputArray Delphes/partons
798 set ParticleInputArray Delphes/allParticles
799 set ParticleLHEFInputArray Delphes/allParticlesLHEF
800 set JetInputArray JetEnergyScale/jets
801
802 set DeltaR 0.5
803 set PartonPTMin 5.0
804 set PartonEtaMax 6.0
805
806}
807
808###################
809# Photon efficiency
810###################
811
812module Efficiency PhotonEfficiency {
813 set InputArray ECal/eflowPhotons
814 set OutputArray photons
815
816 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
817
818 set EfficiencyFormula {
819 (pt <= 1.0) * (0.00) + \
820 (abs(eta) <= 2.5) * (pt > 1.0 && pt < 5.0) * (0.70) +
821 (abs(eta) <= 2.5) * (pt > 5.0 && pt < 10.0) * (0.85) +
822 (abs(eta) <= 2.5) * (pt > 10.0) * (0.95) +
823
824 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt < 5.0) * (0.60) +
825 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 5.0 && pt < 10.0) * (0.80) +
826 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.90) +
827
828 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 1.0 && pt < 5.0) * (0.50) + \
829 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 5.0 && pt < 10.0) * (0.70) + \
830 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 10.0) * (0.80) + \
831 (abs(eta) > 6.0) * (0.00)}
832
833}
834
835##################
836# Photon isolation
837##################
838
839# TBC: check values for iso cuts
840
841module Isolation PhotonIsolation {
842 set CandidateInputArray PhotonEfficiency/photons
843 set IsolationInputArray EFlowFilter/eflow
844
845 set OutputArray photons
846
847 set DeltaRMax 0.3
848
849 set PTMin 0.5
850
851 set PTRatioMax 0.1
852}
853
854
855####################
856# Electron isolation
857####################
858
859# TBC: check values for iso cuts
860
861module Isolation ElectronIsolation {
862 set CandidateInputArray ElectronFilter/electrons
863 set IsolationInputArray EFlowFilter/eflow
864
865 set OutputArray electrons
866
867 set DeltaRMax 0.3
868
869 set PTMin 0.5
870
871 set PTRatioMax 0.1
872}
873
874
875################
876# Muon isolation
877################
878
879# TBC: check values for iso cuts
880
881module Isolation MuonIsolation {
882 set CandidateInputArray MuonMomentumSmearing/muons
883 set IsolationInputArray EFlowFilter/eflow
884
885 set OutputArray muons
886
887 set DeltaRMax 0.3
888
889 set PTMin 0.5
890
891 set PTRatioMax 0.2
892}
893
894
895
896###########
897# b-tagging
898###########
899
900module BTagging BTagging {
901 set JetInputArray JetEnergyScale/jets
902
903 set BitNumber 0
904
905 add EfficiencyFormula {0} {
906
907 (pt <= 10.0) * (0.00) +
908 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.01) + \
909 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.01)*(1.0 - pt/15000.) + \
910 (abs(eta) < 2.5) * (pt > 15000.0) * (0.00) + \
911 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.0075) + \
912 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.0075)*(1.0 - pt/15000.) + \
913 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
914 (abs(eta) > 4.0) * (0.00)}
915
916 add EfficiencyFormula {4} {
917
918 (pt <= 10.0) * (0.00) +
919 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.05) + \
920 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.05)*(1.0 - pt/15000.) + \
921 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) + \
922 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.03) + \
923 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.03)*(1.0 - pt/15000.) + \
924 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
925 (abs(eta) > 4.0) * (0.00)}
926
927 add EfficiencyFormula {5} {
928
929 (pt <= 10.0) * (0.00) +
930 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.85) +
931 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.85)*(1.0 - pt/15000.) +
932 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) +
933 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.64) +
934 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.64)*(1.0 - pt/15000.) +
935 (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) +
936 (abs(eta) >= 4.0) * (0.00)}
937
938}
939
940###########
941# c-tagging
942###########
943
944module BTagging CTagging {
945 set JetInputArray JetEnergyScale/jets
946
947 set BitNumber 1
948
949 add EfficiencyFormula {0} {
950
951 (pt <= 10.0) * (0.00) +
952 (abs(eta) < 4.0) * (pt > 10.0) * (0.01) + \
953 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
954
955 add EfficiencyFormula {4} {
956
957 (pt <= 10.0) * (0.00) +
958 (abs(eta) < 4.0) * (pt > 10.0) * (0.25) + \
959 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
960
961 add EfficiencyFormula {5} {
962
963 (pt <= 10.0) * (0.00) +
964 (abs(eta) < 4.0) * (pt > 10.0) * (0.03) + \
965 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
966
967}
968
969
970#############
971# tau-tagging
972#############
973
974
975module TauTagging TauTagging {
976 set ParticleInputArray Delphes/allParticles
977 set PartonInputArray Delphes/partons
978 set JetInputArray JetEnergyScale/jets
979
980 set DeltaR 0.5
981
982 set TauPTMin 1.0
983
984 set TauEtaMax 4.0
985
986 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
987 add EfficiencyFormula {0} {
988
989 (pt <= 10.0) * (0.00) +
990 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.01) + \
991 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.01) *(8./9. - pt/30000.) + \
992 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
993 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.0075) + \
994 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.0075)*(8./9. - pt/30000.) + \
995 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
996 (abs(eta) > 4.0) * (0.00)}
997
998 add EfficiencyFormula {11} {
999
1000 (pt <= 10.0) * (0.00) +
1001 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.005) + \
1002 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.005) *(8./9. - pt/30000.) + \
1003 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
1004 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.00375) + \
1005 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.00375)*(8./9. - pt/30000.) + \
1006 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
1007 (abs(eta) > 4.0) * (0.00)}
1008
1009 add EfficiencyFormula {15} {
1010
1011 (pt <= 10.0) * (0.00) +
1012 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.8) + \
1013 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.8) *(8./9. - pt/30000.) + \
1014 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
1015 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.65) + \
1016 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.65)*(8./9. - pt/30000.) + \
1017 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
1018 (abs(eta) > 4.0) * (0.00)}
1019
1020}
1021
1022#####################################################
1023# Find uniquely identified photons/electrons/tau/jets
1024#####################################################
1025
1026module UniqueObjectFinder UniqueObjectFinder {
1027# earlier arrays take precedence over later ones
1028# add InputArray InputArray OutputArray
1029 add InputArray PhotonIsolation/photons photons
1030 add InputArray ElectronIsolation/electrons electrons
1031 add InputArray MuonIsolation/muons muons
1032 add InputArray JetEnergyScale/jets jets
1033
1034}
1035
1036
1037##################
1038# ROOT tree writer
1039##################
1040
1041module TreeWriter TreeWriter {
1042# add Branch InputArray BranchName BranchClass
1043 add Branch Delphes/allParticles Particle GenParticle
1044
1045 add Branch GenMissingET/momentum GenMissingET MissingET
1046
1047 add Branch TimeSmearing/tracks Track Track
1048 add Branch Calorimeter/towers Tower Tower
1049
1050 add Branch HCal/eflowTracks EFlowTrack Track
1051 add Branch ECal/eflowPhotons EFlowPhoton Tower
1052 add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
1053
1054 add Branch UniqueObjectFinder/photons Photon Photon
1055 add Branch UniqueObjectFinder/electrons Electron Electron
1056 add Branch UniqueObjectFinder/muons Muon Muon
1057 add Branch UniqueObjectFinder/jets Jet Jet
1058
1059 add Branch GenJetFinder04/jets GenJet04 Jet
1060 add Branch FastJetFinder04/jets ParticleFlowJet04 Jet
1061 add Branch CaloJetFinder04/jets CaloJet04 Jet
1062 add Branch TrackJetFinder04/jets TrackJet04 Jet
1063
1064 add Branch MissingET/momentum MissingET MissingET
1065 add Branch ScalarHT/energy ScalarHT ScalarHT
1066 add Branch VertexFinderDA4D/vertices Vertex4D Vertex
1067
1068 add Branch HighMassVertexRecover/tracks Track Track
1069}
1070
Note: See TracBrowser for help on using the repository browser.