Fork me on GitHub

source: git/cards/FCC/FCChh.tcl@ e999d62

ImprovedOutputFile Timing dual_readout llp
Last change on this file since e999d62 was 6d1fff5, checked in by Michele Selvaggi <michele.selvaggi@…>, 7 years ago

fix subjet params for R=0.4 jets

  • Property mode set to 100644
File size: 23.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 ExecutionPath {
15
16 ParticlePropagator
17
18 ChargedHadronTrackingEfficiency
19 ElectronTrackingEfficiency
20 MuonTrackingEfficiency
21
22 ChargedHadronMomentumSmearing
23 ElectronMomentumSmearing
24 MuonMomentumSmearing
25
26 DenseProp
27 DenseMergeTracks
28 TrackMergerProp
29 TrackMerger
30
31 ECal
32 HCal
33
34 Calorimeter
35 EFlowMerger
36 EFlowFilter
37
38 PhotonEfficiency
39 PhotonIsolation
40
41 ElectronFilter
42 ElectronIsolation
43
44 ChargedHadronFilter
45
46 MuonIsolation
47
48 NeutrinoFilter
49
50 MissingET
51 GenMissingET
52
53 GenJetFinder
54 FastJetFinder
55 FatJetFinder
56
57 JetEnergyScale
58
59 JetFlavorAssociation
60
61 BTagging
62 CTagging
63 TauTagging
64
65 ScalarHT
66
67 UniqueObjectFinder
68
69 TreeWriter
70}
71
72#
73#################################
74# Propagate particles in cylinder
75#################################
76
77module ParticlePropagator ParticlePropagator {
78 set InputArray Delphes/stableParticles
79 set OutputArray stableParticles
80 set ChargedHadronOutputArray chargedHadrons
81 set ElectronOutputArray electrons
82 set MuonOutputArray muons
83
84 # radius of the magnetic field coverage, in m
85 set Radius 1.5
86 # half-length of the magnetic field coverage, in m
87 set HalfLength 5
88
89 # magnetic field
90 set Bz 4.0
91}
92
93####################################
94# Charged hadron tracking efficiency
95####################################
96
97module Efficiency ChargedHadronTrackingEfficiency {
98 set InputArray ParticlePropagator/chargedHadrons
99 set OutputArray chargedHadrons
100
101 # TBC (which eta_max ? which pT min?)
102
103 # tracking efficiency formula for charged hadrons
104
105 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
106(abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
107(abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
108(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
109(abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
110(abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
111(abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
112(abs(eta) > 6.0) * (0.00)}
113
114}
115
116##############################
117# Electron tracking efficiency
118##############################
119
120module Efficiency ElectronTrackingEfficiency {
121 set InputArray ParticlePropagator/electrons
122 set OutputArray electrons
123
124# TBC (which eta_max ?)
125# putting same as charged hadrons for now...
126
127 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
128 (abs(eta) <= 2.5) * (pt > 0.5 && pt <= 1) * (0.90) + \
129 (abs(eta) <= 2.5) * (pt > 1) * (0.95) + \
130 (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 0.5 && pt <= 1) * (0.85) + \
131 (abs(eta) > 2.5 && abs(eta) <= 4) * (pt > 1) * (0.90) + \
132 (abs(eta) > 4 && abs(eta) <= 6) * (pt > 0.5 && pt <= 1) * (0.80) + \
133 (abs(eta) > 4 && abs(eta) <= 6) * (pt > 1.0) * (0.85) + \
134 (abs(eta) > 6.0) * (0.00)}
135
136}
137##########################
138# Muon tracking efficiency
139##########################
140
141module Efficiency MuonTrackingEfficiency {
142 set InputArray ParticlePropagator/muons
143 set OutputArray muons
144
145# TBC (which eta_max ? why eff = 0 for 4 < eta < 6 ? for now put the same as central)
146# what about high pT ?
147 # tracking efficiency formula for muons
148 set EfficiencyFormula { (pt <= 0.5) * (0.00) + \
149 (abs(eta) <= 6.0) * (pt > 0.5 && pt <= 1) * (0.90) + \
150 (abs(eta) <= 6.0) * (pt > 1) * (0.99) + \
151 (abs(eta) > 6.0) * (0.00)}
152
153}
154
155########################################
156# Momentum resolution for charged tracks
157########################################
158
159module MomentumSmearing ChargedHadronMomentumSmearing {
160 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
161 set OutputArray chargedHadrons
162
163 source momentumResolutionVsP.tcl
164}
165
166
167###################################
168# Momentum resolution for electrons
169###################################
170
171module MomentumSmearing ElectronMomentumSmearing {
172 set InputArray ElectronTrackingEfficiency/electrons
173 set OutputArray electrons
174
175 source momentumResolutionVsP.tcl
176}
177
178
179###############################
180# Momentum resolution for muons
181###############################
182
183module MomentumSmearing MuonMomentumSmearing {
184 set InputArray MuonTrackingEfficiency/muons
185 set OutputArray muons
186
187 # TBC for just putting tracker resolution/ need to add improvement at high pT
188
189 source muonMomentumResolutionVsP.tcl
190}
191
192
193##############
194# Track merger
195##############
196
197module Merger TrackMergerProp {
198# add InputArray InputArray
199 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
200 add InputArray ElectronMomentumSmearing/electrons
201 add InputArray MuonMomentumSmearing/muons
202 set OutputArray tracks
203}
204
205
206#################################
207# Dense Track propagation
208#################################
209
210module ParticlePropagator DenseProp {
211 set InputArray Delphes/stableParticles
212
213 set OutputArray stableParticles
214 set NeutralOutputArray neutralParticles
215 set ChargedHadronOutputArray chargedHadrons
216 set ElectronOutputArray electrons
217 set MuonOutputArray muons
218
219 # radius of the magnetic field coverage, in m
220 set Radius 0.45
221 set RadiusMax 1.5
222 # half-length of the magnetic field coverage, in m
223 set HalfLength 0.8
224 set HalfLengthMax 5
225
226 # magnetic field
227 set Bz 4.0
228}
229
230####################
231# Dense Track merger
232###################
233
234module Merger DenseMergeTracks {
235# add InputArray InputArray
236 add InputArray DenseProp/chargedHadrons
237 add InputArray DenseProp/electrons
238 add InputArray DenseProp/muons
239 set OutputArray tracks
240}
241
242
243######################
244# Dense Track Filter
245######################
246
247module DenseTrackFilter TrackMerger {
248 set TrackInputArray TrackMergerProp/tracks
249 set DenseChargedInputArray DenseMergeTracks/tracks
250
251 set TrackOutputArray tracks
252
253 set EtaPhiRes 0.001
254 set EtaMax 6.0
255
256 set pi [expr {acos(-1)}]
257
258 set nbins_phi [expr {$pi/$EtaPhiRes} ]
259 set nbins_phi [expr {int($nbins_phi)} ]
260
261 set PhiBins {}
262 for {set i -$nbins_phi} {$i <= $nbins_phi} {incr i} {
263 add PhiBins [expr {$i * $pi/$nbins_phi}]
264 }
265
266 set nbins_eta [expr {$EtaMax/$EtaPhiRes} ]
267 set nbins_eta [expr {int($nbins_eta)} ]
268
269 for {set i -$nbins_eta} {$i <= $nbins_eta} {incr i} {
270 set eta [expr {$i * $EtaPhiRes}]
271 add EtaPhiBins $eta $PhiBins
272 }
273}
274
275
276
277#############
278# ECAL
279#############
280
281# TBC : calos seems ok, check eta max value though.
282
283module SimpleCalorimeter ECal {
284 set ParticleInputArray ParticlePropagator/stableParticles
285 set TrackInputArray TrackMerger/tracks
286
287 set TowerOutputArray ecalTowers
288 set EFlowTrackOutputArray eflowTracks
289 set EFlowTowerOutputArray eflowPhotons
290
291 set IsEcal true
292
293 set EnergyMin 0.5
294 set EnergySignificanceMin 2.0
295
296 set SmearTowerCenter true
297
298 set pi [expr {acos(-1)}]
299
300 # lists of the edges of each tower in eta and phi
301 # each list starts with the lower edge of the first tower
302 # the list ends with the higher edged of the last tower
303
304 # 0.012 rad towers up to eta = 2.5 (barrel)
305 set PhiBins {}
306 for {set i -256} {$i <= 256} {incr i} {
307 add PhiBins [expr {$i * $pi/256.0}]
308 }
309
310 # 0.01 unit in eta up to eta = 2.5 (barrel)
311 for {set i -249} {$i <= 250} {incr i} {
312 set eta [expr {$i * 0.01}]
313 add EtaPhiBins $eta $PhiBins
314 }
315
316 # 0.025 rad between 2.5 and 6.0
317 set PhiBins {}
318 for {set i -128} {$i <= 128} {incr i} {
319 add PhiBins [expr {$i * $pi/128.0}]
320 }
321
322 # 0.025 unit in eta between 2.5 and 6.0
323 for {set i 0} {$i <= 140} {incr i} {
324 set eta [expr { -6.00 + $i * 0.025}]
325 add EtaPhiBins $eta $PhiBins
326 }
327
328 for {set i 0} {$i <= 139} {incr i} {
329 set eta [expr { 2.525 + $i * 0.025}]
330 add EtaPhiBins $eta $PhiBins
331 }
332
333 # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
334
335 add EnergyFraction {0} {0.0}
336 # energy fractions for e, gamma and pi0
337 add EnergyFraction {11} {1.0}
338 add EnergyFraction {22} {1.0}
339 add EnergyFraction {111} {1.0}
340 # energy fractions for muon, neutrinos and neutralinos
341 add EnergyFraction {12} {0.0}
342 add EnergyFraction {13} {0.0}
343 add EnergyFraction {14} {0.0}
344 add EnergyFraction {16} {0.0}
345 add EnergyFraction {1000022} {0.0}
346 add EnergyFraction {1000023} {0.0}
347 add EnergyFraction {1000025} {0.0}
348 add EnergyFraction {1000035} {0.0}
349 add EnergyFraction {1000045} {0.0}
350 # energy fractions for K0short and Lambda
351 # add EnergyFraction {310} {0.3}
352 # add EnergyFraction {3122} {0.3}
353
354 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
355 set ResolutionFormula { (abs(eta) <= 4.0) * sqrt(energy^2*0.007^2 + energy*0.10^2) + \
356 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.035^2 + energy*0.30^2)}
357
358
359}
360
361#############
362# HCAL
363#############
364
365module SimpleCalorimeter HCal {
366 set ParticleInputArray ParticlePropagator/stableParticles
367 set TrackInputArray ECal/eflowTracks
368
369 set TowerOutputArray hcalTowers
370 set EFlowTrackOutputArray eflowTracks
371 set EFlowTowerOutputArray eflowNeutralHadrons
372
373 set IsEcal false
374
375 set EnergyMin 1.0
376 set EnergySignificanceMin 2.0
377
378 set SmearTowerCenter true
379
380 set pi [expr {acos(-1)}]
381
382 # lists of the edges of each tower in eta and phi
383 # each list starts with the lower edge of the first tower
384 # the list ends with the higher edged of the last tower
385
386 # 0.025 rad towers up to eta = 2.5 (barrel)
387 set PhiBins {}
388 for {set i -128} {$i <= 128} {incr i} {
389 add PhiBins [expr {$i * $pi/128.0}]
390 }
391
392 # 0.025 unit in eta up to eta = 2.5 (barrel)
393 for {set i -99} {$i <= 100} {incr i} {
394 set eta [expr {$i * 0.025}]
395 add EtaPhiBins $eta $PhiBins
396 }
397
398 # 0.05 rad between 2.5 and 6.0
399 set PhiBins {}
400 for {set i -64} {$i <= 64} {incr i} {
401 add PhiBins [expr {$i * $pi/64.0}]
402 }
403
404 # 0.05 unit in eta between 2.5 and 6.0
405 for {set i 0} {$i <= 70} {incr i} {
406 set eta [expr { -6.00 + $i * 0.05}]
407 add EtaPhiBins $eta $PhiBins
408 }
409
410 for {set i 0} {$i <= 69} {incr i} {
411 set eta [expr { 2.55 + $i * 0.05}]
412 add EtaPhiBins $eta $PhiBins
413 }
414
415
416 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
417 add EnergyFraction {0} {1.0}
418 # energy fractions for e, gamma and pi0
419 add EnergyFraction {11} {0.0}
420 add EnergyFraction {22} {0.0}
421 add EnergyFraction {111} {0.0}
422 # energy fractions for muon, neutrinos and neutralinos
423 add EnergyFraction {12} {0.0}
424 add EnergyFraction {13} {0.0}
425 add EnergyFraction {14} {0.0}
426 add EnergyFraction {16} {0.0}
427 add EnergyFraction {1000022} {0.0}
428 add EnergyFraction {1000023} {0.0}
429 add EnergyFraction {1000025} {0.0}
430 add EnergyFraction {1000035} {0.0}
431 add EnergyFraction {1000045} {0.0}
432 # energy fractions for K0short and Lambda
433 # add EnergyFraction {310} {0.7}
434 # add EnergyFraction {3122} {0.7}
435
436 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
437 set ResolutionFormula { (abs(eta) <= 1.7) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
438 (abs(eta) > 1.7 && abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.60^2) + \
439 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.10^2 + energy*1.00^2)}
440}
441
442#################
443# Electron filter
444#################
445
446module PdgCodeFilter ElectronFilter {
447 set InputArray HCal/eflowTracks
448 set OutputArray electrons
449 set Invert true
450 add PdgCode {11}
451 add PdgCode {-11}
452}
453
454
455######################
456# ChargedHadronFilter
457######################
458
459module PdgCodeFilter ChargedHadronFilter {
460 set InputArray HCal/eflowTracks
461 set OutputArray chargedHadrons
462
463 add PdgCode {11}
464 add PdgCode {-11}
465 add PdgCode {13}
466 add PdgCode {-13}
467}
468
469
470###################################################
471# Tower Merger (in case not using e-flow algorithm)
472###################################################
473
474module Merger Calorimeter {
475# add InputArray InputArray
476 add InputArray ECal/ecalTowers
477 add InputArray HCal/hcalTowers
478 set OutputArray towers
479}
480
481####################
482# Energy flow merger
483####################
484
485module Merger EFlowMerger {
486# add InputArray InputArray
487 add InputArray HCal/eflowTracks
488 add InputArray ECal/eflowPhotons
489 add InputArray HCal/eflowNeutralHadrons
490 set OutputArray eflow
491}
492
493######################
494# EFlowFilter
495######################
496
497module PdgCodeFilter EFlowFilter {
498 set InputArray EFlowMerger/eflow
499 set OutputArray eflow
500
501 add PdgCode {11}
502 add PdgCode {-11}
503 add PdgCode {13}
504 add PdgCode {-13}
505}
506
507
508###################
509# Missing ET merger
510###################
511
512module Merger MissingET {
513# add InputArray InputArray
514 add InputArray EFlowMerger/eflow
515 set MomentumOutputArray momentum
516}
517
518
519
520##################
521# Scalar HT merger
522##################
523
524module Merger ScalarHT {
525# add InputArray InputArray
526 add InputArray EFlowMerger/eflow
527 set EnergyOutputArray energy
528}
529
530#################
531# Neutrino Filter
532#################
533
534module PdgCodeFilter NeutrinoFilter {
535
536 set InputArray Delphes/stableParticles
537 set OutputArray filteredParticles
538
539 set PTMin 0.0
540
541 add PdgCode {12}
542 add PdgCode {14}
543 add PdgCode {16}
544 add PdgCode {-12}
545 add PdgCode {-14}
546 add PdgCode {-16}
547
548}
549
550
551#####################
552# MC truth jet finder
553#####################
554
555# TBC: is jet radius fine?
556
557module FastJetFinder GenJetFinder {
558# set InputArray NeutrinoFilter/filteredParticles
559 set InputArray Delphes/stableParticles
560
561 set OutputArray jets
562
563 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
564 set JetAlgorithm 6
565 set ParameterR 0.4
566
567 set JetPTMin 5.0
568}
569
570#########################
571# Gen Missing ET merger
572########################
573
574module Merger GenMissingET {
575
576# add InputArray InputArray
577 add InputArray NeutrinoFilter/filteredParticles
578 set MomentumOutputArray momentum
579}
580
581
582
583############
584# Jet finder
585############
586
587# TBC need to include jet substructure variables
588# TBC is jet radius fine?
589
590module FastJetFinder FastJetFinder {
591# set InputArray Calorimeter/towers
592 set InputArray EFlowMerger/eflow
593
594 set OutputArray jets
595
596 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
597 # 7: anti-kt with winner-take-all axis (for N-subjettiness), 8 N-jettiness
598
599 set JetAlgorithm 6
600 set ParameterR 0.4
601
602 set ComputeNsubjettiness 1
603 set Beta 1.0
604 set AxisMode 4
605
606 set ComputeTrimming 1
607 set RTrim 0.2
608 set PtFracTrim 0.05
609
610 set ComputePruning 1
611 set ZcutPrun 0.1
612 set RcutPrun 0.5
613 set RPrun 0.4
614
615 set ComputeSoftDrop 1
616 set BetaSoftDrop 0.0
617 set SymmetryCutSoftDrop 0.1
618 set R0SoftDrop 0.4
619
620 set JetPTMin 30.0
621}
622
623##################
624# Fat Jet finder
625##################
626
627module FastJetFinder FatJetFinder {
628 set InputArray EFlowMerger/eflow
629
630 set OutputArray jets
631
632 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
633 set JetAlgorithm 6
634 set ParameterR 0.8
635
636 set ComputeNsubjettiness 1
637 set Beta 1.0
638 set AxisMode 4
639
640 set ComputeTrimming 1
641 set RTrim 0.2
642 set PtFracTrim 0.05
643
644 set ComputePruning 1
645 set ZcutPrun 0.1
646 set RcutPrun 0.5
647 set RPrun 0.8
648
649 set ComputeSoftDrop 1
650 set BetaSoftDrop 0.0
651 set SymmetryCutSoftDrop 0.1
652 set R0SoftDrop 0.8
653
654 set JetPTMin 200.0
655}
656
657
658
659##################
660# Jet Energy Scale
661##################
662
663module EnergyScale JetEnergyScale {
664 set InputArray FastJetFinder/jets
665 set OutputArray jets
666
667 # scale formula for jets
668 set ScaleFormula {1.00}
669}
670
671
672########################
673# Jet Flavor Association
674########################
675
676module JetFlavorAssociation JetFlavorAssociation {
677
678 set PartonInputArray Delphes/partons
679 set ParticleInputArray Delphes/allParticles
680 set ParticleLHEFInputArray Delphes/allParticlesLHEF
681 set JetInputArray JetEnergyScale/jets
682
683 set DeltaR 0.5
684 set PartonPTMin 5.0
685 set PartonEtaMax 6.0
686
687}
688
689###################
690# Photon efficiency
691###################
692
693module Efficiency PhotonEfficiency {
694 set InputArray ECal/eflowPhotons
695 set OutputArray photons
696
697 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
698
699 set EfficiencyFormula {
700 (pt <= 1.0) * (0.00) + \
701 (abs(eta) <= 2.5) * (pt > 1.0 && pt < 5.0) * (0.70) +
702 (abs(eta) <= 2.5) * (pt > 5.0 && pt < 10.0) * (0.85) +
703 (abs(eta) <= 2.5) * (pt > 10.0) * (0.95) +
704
705 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt < 5.0) * (0.60) +
706 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 5.0 && pt < 10.0) * (0.80) +
707 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.90) +
708
709 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 1.0 && pt < 5.0) * (0.50) + \
710 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 5.0 && pt < 10.0) * (0.70) + \
711 (abs(eta) > 4.0 && abs(eta) <= 6.0) * (pt > 10.0) * (0.80) + \
712 (abs(eta) > 6.0) * (0.00)}
713
714}
715
716##################
717# Photon isolation
718##################
719
720# TBC: check values for iso cuts
721
722module Isolation PhotonIsolation {
723 set CandidateInputArray PhotonEfficiency/photons
724 set IsolationInputArray EFlowFilter/eflow
725
726 set OutputArray photons
727
728 set DeltaRMax 0.3
729
730 set PTMin 0.5
731
732 set PTRatioMax 0.1
733}
734
735
736####################
737# Electron isolation
738####################
739
740# TBC: check values for iso cuts
741
742module Isolation ElectronIsolation {
743 set CandidateInputArray ElectronFilter/electrons
744 set IsolationInputArray EFlowFilter/eflow
745
746 set OutputArray electrons
747
748 set DeltaRMax 0.3
749
750 set PTMin 0.5
751
752 set PTRatioMax 0.1
753}
754
755
756################
757# Muon isolation
758################
759
760# TBC: check values for iso cuts
761
762module Isolation MuonIsolation {
763 set CandidateInputArray MuonMomentumSmearing/muons
764 set IsolationInputArray EFlowFilter/eflow
765
766 set OutputArray muons
767
768 set DeltaRMax 0.3
769
770 set PTMin 0.5
771
772 set PTRatioMax 0.2
773}
774
775
776
777###########
778# b-tagging
779###########
780
781module BTagging BTagging {
782 set JetInputArray JetEnergyScale/jets
783
784 set BitNumber 0
785
786 add EfficiencyFormula {0} {
787
788 (pt <= 10.0) * (0.00) +
789 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.01) + \
790 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.01)*(1.0 - pt/15000.) + \
791 (abs(eta) < 2.5) * (pt > 15000.0) * (0.00) + \
792 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.0075) + \
793 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.0075)*(1.0 - pt/15000.) + \
794 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
795 (abs(eta) > 4.0) * (0.00)}
796
797 add EfficiencyFormula {4} {
798
799 (pt <= 10.0) * (0.00) +
800 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.05) + \
801 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.05)*(1.0 - pt/15000.) + \
802 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) + \
803 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.03) + \
804 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.03)*(1.0 - pt/15000.) + \
805 (abs(eta) < 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) + \
806 (abs(eta) > 4.0) * (0.00)}
807
808 add EfficiencyFormula {5} {
809
810 (pt <= 10.0) * (0.00) +
811 (abs(eta) < 2.5) * (pt > 10.0 && pt < 500) * (0.85) +
812 (abs(eta) < 2.5) * (pt > 500.0 && pt < 15000.0) * (0.85)*(1.0 - pt/15000.) +
813 (abs(eta) < 2.5) * (pt > 15000.0) * (0.000) +
814 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 500) * (0.64) +
815 (abs(eta) >= 2.5 && abs(eta) < 4.0) * (pt > 500.0 && pt < 15000.0) * (0.64)*(1.0 - pt/15000.) +
816 (abs(eta) <= 2.5 && abs(eta) < 4.0) * (pt > 15000.0) * (0.000) +
817 (abs(eta) >= 4.0) * (0.00)}
818
819}
820
821###########
822# c-tagging
823###########
824
825module BTagging CTagging {
826 set JetInputArray JetEnergyScale/jets
827
828 set BitNumber 1
829
830 add EfficiencyFormula {0} {
831
832 (pt <= 10.0) * (0.00) +
833 (abs(eta) < 4.0) * (pt > 10.0) * (0.01) + \
834 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
835
836 add EfficiencyFormula {4} {
837
838 (pt <= 10.0) * (0.00) +
839 (abs(eta) < 4.0) * (pt > 10.0) * (0.25) + \
840 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
841
842 add EfficiencyFormula {5} {
843
844 (pt <= 10.0) * (0.00) +
845 (abs(eta) < 4.0) * (pt > 10.0) * (0.03) + \
846 (abs(eta) > 4.0) * (pt > 10.0) * (0.00)}
847
848}
849
850
851#############
852# tau-tagging
853#############
854
855
856module TauTagging TauTagging {
857 set ParticleInputArray Delphes/allParticles
858 set PartonInputArray Delphes/partons
859 set JetInputArray JetEnergyScale/jets
860
861 set DeltaR 0.5
862
863 set TauPTMin 1.0
864
865 set TauEtaMax 4.0
866
867 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
868 add EfficiencyFormula {0} {
869
870 (pt <= 10.0) * (0.00) +
871 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.01) + \
872 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.01) *(8./9. - pt/30000.) + \
873 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
874 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.0075) + \
875 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.0075)*(8./9. - pt/30000.) + \
876 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
877 (abs(eta) > 4.0) * (0.00)}
878
879 add EfficiencyFormula {11} {
880
881 (pt <= 10.0) * (0.00) +
882 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.005) + \
883 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.005) *(8./9. - pt/30000.) + \
884 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
885 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.00375) + \
886 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.00375)*(8./9. - pt/30000.) + \
887 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
888 (abs(eta) > 4.0) * (0.00)}
889
890 add EfficiencyFormula {15} {
891
892 (pt <= 10.0) * (0.00) +
893 (abs(eta) < 2.5) * (pt > 10.0 && pt < 5000.0) * (0.6) + \
894 (abs(eta) < 2.5) * (pt > 5000.0 && pt < 34000.0) * (0.6) *(8./9. - pt/30000.) + \
895 (abs(eta) < 2.5) * (pt > 34000.0) * (0.000) + \
896 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 10.0 && pt < 5000.0) * (0.45) + \
897 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 5000.0 && pt < 34000.0) * (0.45)*(8./9. - pt/30000.) + \
898 (abs(eta) > 2.5 && abs(eta) < 4.0) * (pt > 34000.0) * (0.00) + \
899 (abs(eta) > 4.0) * (0.00)}
900
901}
902
903#####################################################
904# Find uniquely identified photons/electrons/tau/jets
905#####################################################
906
907module UniqueObjectFinder UniqueObjectFinder {
908# earlier arrays take precedence over later ones
909# add InputArray InputArray OutputArray
910 add InputArray PhotonIsolation/photons photons
911 add InputArray ElectronIsolation/electrons electrons
912 add InputArray MuonIsolation/muons muons
913 add InputArray JetEnergyScale/jets jets
914
915}
916
917
918##################
919# ROOT tree writer
920##################
921
922module TreeWriter TreeWriter {
923# add Branch InputArray BranchName BranchClass
924 add Branch Delphes/allParticles Particle GenParticle
925
926 add Branch GenJetFinder/jets GenJet Jet
927 add Branch GenMissingET/momentum GenMissingET MissingET
928
929 add Branch TrackMerger/tracks Track Track
930 add Branch Calorimeter/towers Tower Tower
931
932 add Branch HCal/eflowTracks EFlowTrack Track
933 add Branch ECal/eflowPhotons EFlowPhoton Tower
934 add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
935
936 add Branch UniqueObjectFinder/photons Photon Photon
937 add Branch UniqueObjectFinder/electrons Electron Electron
938 add Branch UniqueObjectFinder/muons Muon Muon
939 add Branch UniqueObjectFinder/jets Jet Jet
940
941 add Branch FatJetFinder/jets FatJet Jet
942
943 add Branch MissingET/momentum MissingET MissingET
944 add Branch ScalarHT/energy ScalarHT ScalarHT
945}
946
Note: See TracBrowser for help on using the repository browser.