Fork me on GitHub

source: git/cards/CMS_PhaseII/CMS_PhaseII_200PU_noHGCAL.tcl@ 21eab4f

Last change on this file since 21eab4f was a393b57, checked in by Michele Selvaggi <michele.selvaggi@…>, 9 years ago

added phaseII no HGCAL cards

  • Property mode set to 100644
File size: 27.3 KB
Line 
1#
2# Phase II - Pile-Up
3#
4# Main authors: Michele Selvaggi (UCL)
5#
6# Released on:
7#
8# Version: v01
9#
10#
11#######################################
12# Order of execution of various modules
13#######################################
14
15set ExecutionPath {
16
17 PileUpMerger
18 ParticlePropagator
19
20 ChargedHadronTrackingEfficiency
21 ElectronTrackingEfficiency
22 MuonTrackingEfficiency
23
24 ChargedHadronMomentumSmearing
25 ElectronEnergySmearing
26 MuonMomentumSmearing
27
28 TrackMerger
29
30 ECal
31 HCal
32
33 PhotonEnergySmearing
34 ElectronFilter
35 TrackPileUpSubtractor
36
37 TowerMerger
38 NeutralEFlowMerger
39 EFlowMergerAllTracks
40 EFlowMerger
41
42 LeptonFilterNoLep
43 LeptonFilterLep
44 RunPUPPIBase
45 RunPUPPI
46
47 PhotonFilter
48
49 PhotonIsolation
50 PhotonEfficiency
51
52 ElectronIsolation
53 ElectronEfficiency
54
55 MuonIsolation
56 MuonLooseIdEfficiency
57 MuonTightIdEfficiency
58
59 NeutrinoFilter
60
61 MissingET
62 PuppiMissingET
63 GenMissingET
64 GenPileUpMissingET
65
66 GenJetFinder
67 FastJetFinder
68 FatJetFinder
69
70 ScalarHT
71
72 JetEnergyScale
73
74 JetFlavorAssociation
75
76 BTaggingLoose
77 BTaggingMedium
78 BTaggingTight
79
80 TauTagging
81
82 GenParticleFilter
83
84 TreeWriter
85}
86
87
88
89###############
90# PileUp Merger
91###############
92
93module PileUpMerger PileUpMerger {
94 set InputArray Delphes/stableParticles
95
96 set ParticleOutputArray stableParticles
97 set VertexOutputArray vertices
98
99 # pre-generated minbias input file
100 set PileUpFile ../eos/cms/store/group/upgrade/delphes/PhaseII/MinBias_100k.pileup
101
102 # average expected pile up
103 set MeanPileUp 200
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 set VertexDistributionFormula {exp(-(t^2/160e-12^2/2))*exp(-(z^2/0.053^2/2))}
113
114}
115
116
117#################################
118# Propagate particles in cylinder
119#################################
120
121module ParticlePropagator ParticlePropagator {
122 set InputArray PileUpMerger/stableParticles
123
124 set OutputArray stableParticles
125 set ChargedHadronOutputArray chargedHadrons
126 set ElectronOutputArray electrons
127 set MuonOutputArray muons
128
129 # radius of the magnetic field coverage, in m
130 set Radius 1.29
131 # half-length of the magnetic field coverage, in m
132 set HalfLength 3.0
133
134 # magnetic field
135 set Bz 3.8
136}
137
138
139####################################
140# Charged hadron tracking efficiency
141####################################
142
143module Efficiency ChargedHadronTrackingEfficiency {
144 ## particles after propagation
145 set InputArray ParticlePropagator/chargedHadrons
146 set OutputArray chargedHadrons
147 # tracking efficiency formula for charged hadrons
148 set EfficiencyFormula {
149 (pt <= 0.2) * (0.00) + \
150 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 0.96) + \
151 (abs(eta) <= 1.2) * (pt > 1.0) * (0.97) + \
152 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 0.2 && pt <= 1.0) * (pt*0.85) + \
153 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 1.0) * (0.87) + \
154 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.8) + \
155 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0) * (0.82) + \
156 (abs(eta) > 4.0) * (0.00)
157 }
158}
159
160
161#####################################
162# Electron tracking efficiency - ID
163####################################
164
165module Efficiency ElectronTrackingEfficiency {
166 set InputArray ParticlePropagator/electrons
167 set OutputArray electrons
168 # tracking efficiency formula for electrons
169 set EfficiencyFormula {
170 (pt <= 0.2) * (0.00) + \
171 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 0.96) + \
172 (abs(eta) <= 1.2) * (pt > 1.0) * (0.97) + \
173 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 0.2 && pt <= 1.0) * (pt*0.85) + \
174 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 10.0) * (0.82+pt*0.01) + \
175 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 10.0) * (0.90) + \
176 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.8) + \
177 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt <= 10.0) * (0.8+pt*0.01) + \
178 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.85) + \
179 (abs(eta) > 4.0) * (0.00)
180
181 }
182}
183
184##########################
185# Muon tracking efficiency
186##########################
187
188module Efficiency MuonTrackingEfficiency {
189 set InputArray ParticlePropagator/muons
190 set OutputArray muons
191 # tracking efficiency formula for muons
192 set EfficiencyFormula {
193 (pt <= 0.2) * (0.00) + \
194 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 1.00) + \
195 (abs(eta) <= 1.2) * (pt > 1.0) * (1.00) + \
196 (abs(eta) > 1.2 && abs(eta) <= 2.8) * (pt > 0.2 && pt <= 1.0) * (pt*1.00) + \
197 (abs(eta) > 1.2 && abs(eta) <= 2.8) * (pt > 1.0) * (1.00) + \
198 (abs(eta) > 2.8 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.95) + \
199 (abs(eta) > 2.8 && abs(eta) <= 4.0) * (pt > 1.0) * (0.95) + \
200 (abs(eta) > 4.0) * (0.00)
201
202 }
203}
204
205
206########################################
207# Momentum resolution for charged tracks
208########################################
209
210module MomentumSmearing ChargedHadronMomentumSmearing {
211 ## hadrons after having applied the tracking efficiency
212 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
213 set OutputArray chargedHadrons
214 # resolution formula for charged hadrons ,
215
216 # from http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
217 source trackMomentumResolution.tcl
218}
219
220#################################
221# Energy resolution for electrons
222#################################
223
224module EnergySmearing ElectronEnergySmearing {
225 set InputArray ElectronTrackingEfficiency/electrons
226 set OutputArray electrons
227
228 # set ResolutionFormula {resolution formula as a function of eta and energy}
229
230 # resolution formula for electrons
231
232 # taking something flat in energy for now, ECAL will take over at high energy anyway.
233 # inferred from hep-ex/1306.2016 and 1502.02701
234 set ResolutionFormula {
235
236 (abs(eta) <= 1.5) * (energy*0.028) +
237 (abs(eta) > 1.5 && abs(eta) <= 1.75) * (energy*0.037) +
238 (abs(eta) > 1.75 && abs(eta) <= 2.15) * (energy*0.038) +
239 (abs(eta) > 2.15 && abs(eta) <= 3.00) * (energy*0.044) +
240 (abs(eta) > 3.00 && abs(eta) <= 4.00) * (energy*0.10)}
241
242}
243
244###############################
245# Momentum resolution for muons
246###############################
247
248module MomentumSmearing MuonMomentumSmearing {
249 set InputArray MuonTrackingEfficiency/muons
250 set OutputArray muons
251 # resolution formula for muons
252
253 # up to |eta| < 2.8 take measurement from tracking + muon chambers
254 # for |eta| > 2.8 and pT < 5.0 take measurement from tracking alone taken from
255 # http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
256 source muonMomentumResolution.tcl
257}
258
259
260
261
262##############
263# Track merger
264##############
265
266module Merger TrackMerger {
267# add InputArray InputArray
268 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
269 add InputArray ElectronEnergySmearing/electrons
270 add InputArray MuonMomentumSmearing/muons
271 set OutputArray tracks
272}
273
274#############
275# ECAL
276#############
277
278module SimpleCalorimeter ECal {
279 set ParticleInputArray ParticlePropagator/stableParticles
280 set TrackInputArray TrackMerger/tracks
281
282 set TowerOutputArray ecalTowers
283 set EFlowTrackOutputArray eflowTracks
284 set EFlowTowerOutputArray eflowPhotons
285
286 set IsEcal true
287
288 set EnergyMin 0.5
289 set EnergySignificanceMin 1.0
290
291 set SmearTowerCenter true
292
293 set pi [expr {acos(-1)}]
294
295 # lists of the edges of each tower in eta and phi
296 # each list starts with the lower edge of the first tower
297 # the list ends with the higher edged of the last tower
298
299 # assume 0.02 x 0.02 resolution in eta,phi in the barrel |eta| < 1.5
300
301 set PhiBins {}
302 for {set i -180} {$i <= 180} {incr i} {
303 add PhiBins [expr {$i * $pi/180.0}]
304 }
305
306 # 0.02 unit in eta up to eta = 1.5 (barrel)
307 for {set i -85} {$i <= 86} {incr i} {
308 set eta [expr {$i * 0.0174}]
309 add EtaPhiBins $eta $PhiBins
310 }
311
312 # assume 0.02 x 0.02 resolution in eta,phi in the endcaps 1.5 < |eta| < 3.0 (HGCAL- ECAL)
313
314 set PhiBins {}
315 for {set i -180} {$i <= 180} {incr i} {
316 add PhiBins [expr {$i * $pi/180.0}]
317 }
318
319 # 0.02 unit in eta up to eta = 3
320 for {set i 1} {$i <= 84} {incr i} {
321 set eta [expr { -2.958 + $i * 0.0174}]
322 add EtaPhiBins $eta $PhiBins
323 }
324
325 for {set i 1} {$i <= 84} {incr i} {
326 set eta [expr { 1.4964 + $i * 0.0174}]
327 add EtaPhiBins $eta $PhiBins
328 }
329
330 # take present CMS granularity for HF
331
332 # 0.175 x (0.175 - 0.35) resolution in eta,phi in the HF 3.0 < |eta| < 5.0
333 set PhiBins {}
334 for {set i -18} {$i <= 18} {incr i} {
335 add PhiBins [expr {$i * $pi/18.0}]
336 }
337
338 foreach eta {-5 -4.7 -4.525 -4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.958 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525 4.7 5} {
339 add EtaPhiBins $eta $PhiBins
340 }
341
342
343 add EnergyFraction {0} {0.0}
344 # energy fractions for e, gamma and pi0
345 add EnergyFraction {11} {1.0}
346 add EnergyFraction {22} {1.0}
347 add EnergyFraction {111} {1.0}
348 # energy fractions for muon, neutrinos and neutralinos
349 add EnergyFraction {12} {0.0}
350 add EnergyFraction {13} {0.0}
351 add EnergyFraction {14} {0.0}
352 add EnergyFraction {16} {0.0}
353 add EnergyFraction {1000022} {0.0}
354 add EnergyFraction {1000023} {0.0}
355 add EnergyFraction {1000025} {0.0}
356 add EnergyFraction {1000035} {0.0}
357 add EnergyFraction {1000045} {0.0}
358 # energy fractions for K0short and Lambda
359 add EnergyFraction {310} {0.3}
360 add EnergyFraction {3122} {0.3}
361
362 # set ResolutionFormula {resolution formula as a function of eta and energy}
363
364 # for the ECAL barrel (|eta| < 1.5), see hep-ex/1306.2016 and 1502.02701
365
366 set ResolutionFormula { (abs(eta) <= 2.5) * sqrt(energy^2*0.009^2 + energy*0.12^2 + 0.45^2) +
367 (abs(eta) >= 2.5 && abs(eta) <= 5.0) * sqrt(energy^2*0.08^2 + energy*1.98^2)}
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 1.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 # 5 degrees towers
397 set PhiBins {}
398 for {set i -36} {$i <= 36} {incr i} {
399 add PhiBins [expr {$i * $pi/36.0}]
400 }
401 foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.653} {
402 add EtaPhiBins $eta $PhiBins
403 }
404
405 # 10 degrees towers
406 set PhiBins {}
407 for {set i -18} {$i <= 18} {incr i} {
408 add PhiBins [expr {$i * $pi/18.0}]
409 }
410 foreach eta {-4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.95 -2.868 -2.65 -2.5 -2.322 -2.172 -2.043 -1.93 -1.83 -1.74 -1.653 1.74 1.83 1.93 2.043 2.172 2.322 2.5 2.65 2.868 2.95 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525} {
411 add EtaPhiBins $eta $PhiBins
412 }
413
414 # 20 degrees towers
415 set PhiBins {}
416 for {set i -9} {$i <= 9} {incr i} {
417 add PhiBins [expr {$i * $pi/9.0}]
418 }
419 foreach eta {-5 -4.7 -4.525 4.7 5} {
420 add EtaPhiBins $eta $PhiBins
421 }
422
423 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
424 add EnergyFraction {0} {1.0}
425 # energy fractions for e, gamma and pi0
426 add EnergyFraction {11} {0.0}
427 add EnergyFraction {22} {0.0}
428 add EnergyFraction {111} {0.0}
429 # energy fractions for muon, neutrinos and neutralinos
430 add EnergyFraction {12} {0.0}
431 add EnergyFraction {13} {0.0}
432 add EnergyFraction {14} {0.0}
433 add EnergyFraction {16} {0.0}
434 add EnergyFraction {1000022} {0.0}
435 add EnergyFraction {1000023} {0.0}
436 add EnergyFraction {1000025} {0.0}
437 add EnergyFraction {1000035} {0.0}
438 add EnergyFraction {1000045} {0.0}
439 # energy fractions for K0short and Lambda
440 add EnergyFraction {310} {0.7}
441 add EnergyFraction {3122} {0.7}
442
443# set ResolutionFormula {resolution formula as a function of eta and energy}
444 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.050^2 + energy*1.50^2) +
445 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.130^2 + energy*2.70^2)}
446
447}
448
449#################################
450# Energy resolution for electrons
451#################################
452
453module EnergySmearing PhotonEnergySmearing {
454 set InputArray ECal/eflowPhotons
455 set OutputArray eflowPhotons
456
457 # adding 1% extra photon smearing
458 set ResolutionFormula {energy*0.01}
459
460}
461
462
463
464#################
465# Electron filter
466#################
467
468module PdgCodeFilter ElectronFilter {
469 set InputArray HCal/eflowTracks
470 set OutputArray electrons
471 set Invert true
472 add PdgCode {11}
473 add PdgCode {-11}
474}
475
476
477##########################
478# Track pile-up subtractor
479##########################
480
481module TrackPileUpSubtractor TrackPileUpSubtractor {
482# add InputArray InputArray OutputArray
483 add InputArray HCal/eflowTracks eflowTracks
484 add InputArray ElectronFilter/electrons electrons
485 add InputArray MuonMomentumSmearing/muons muons
486
487 set VertexInputArray PileUpMerger/vertices
488 # assume perfect pile-up subtraction for tracks with |z| > fZVertexResolution
489 # Z vertex resolution in m
490 set ZVertexResolution 0.0001
491}
492
493
494###################################################
495# Tower Merger (in case not using e-flow algorithm)
496###################################################
497
498module Merger TowerMerger {
499# add InputArray InputArray
500 add InputArray ECal/ecalTowers
501 add InputArray HCal/hcalTowers
502 set OutputArray towers
503}
504
505
506####################
507# Neutral eflow erger
508####################
509
510module Merger NeutralEFlowMerger {
511# add InputArray InputArray
512 add InputArray PhotonEnergySmearing/eflowPhotons
513 add InputArray HCal/eflowNeutralHadrons
514 set OutputArray eflowTowers
515}
516
517
518####################
519# Energy flow merger
520####################
521
522module Merger EFlowMerger {
523# add InputArray InputArray
524 add InputArray HCal/eflowTracks
525 add InputArray PhotonEnergySmearing/eflowPhotons
526 add InputArray HCal/eflowNeutralHadrons
527 set OutputArray eflow
528}
529
530##################################
531# Energy flow merger (all tracks)
532##################################
533
534module Merger EFlowMergerAllTracks {
535# add InputArray InputArray
536 add InputArray TrackMerger/tracks
537 add InputArray PhotonEnergySmearing/eflowPhotons
538 add InputArray HCal/eflowNeutralHadrons
539 set OutputArray eflow
540}
541
542#########################################
543### Run the puppi code (to be tuned) ###
544#########################################
545
546module PdgCodeFilter LeptonFilterNoLep {
547 set InputArray HCal/eflowTracks
548 set OutputArray eflowTracksNoLeptons
549 set Invert false
550 add PdgCode {13}
551 add PdgCode {-13}
552 add PdgCode {11}
553 add PdgCode {-11}
554}
555
556module PdgCodeFilter LeptonFilterLep {
557 set InputArray HCal/eflowTracks
558 set OutputArray eflowTracksLeptons
559 set Invert true
560 add PdgCode {11}
561 add PdgCode {-11}
562 add PdgCode {13}
563 add PdgCode {-13}
564}
565
566module RunPUPPI RunPUPPIBase {
567 ## input information
568 set TrackInputArray LeptonFilterNoLep/eflowTracksNoLeptons
569 set NeutralInputArray NeutralEFlowMerger/eflowTowers
570 set PVInputArray PileUpMerger/vertices
571 set MinPuppiWeight 0.05
572 set UseExp false
573 set UseNoLep false
574
575 ## define puppi algorithm parameters (more than one for the same eta region is possible)
576 add EtaMinBin 0.0 1.5 4.0
577 add EtaMaxBin 1.5 4.0 10.0
578 add PtMinBin 0.0 0.0 0.0
579 add ConeSizeBin 0.2 0.2 0.2
580 add RMSPtMinBin 0.1 0.5 0.5
581 add RMSScaleFactorBin 1.0 1.0 1.0
582 add NeutralMinEBin 0.2 0.2 0.5
583 add NeutralPtSlope 0.006 0.013 0.067
584 add ApplyCHS true true true
585 add UseCharged true true false
586 add ApplyLowPUCorr true true true
587 add MetricId 5 5 5
588 add CombId 0 0 0
589
590 ## output name
591 set OutputArray PuppiParticles
592 set OutputArrayTracks puppiTracks
593 set OutputArrayNeutrals puppiNeutrals
594}
595
596module Merger RunPUPPI {
597 add InputArray RunPUPPIBase/PuppiParticles
598 add InputArray LeptonFilterLep/eflowTracksLeptons
599 set OutputArray PuppiParticles
600}
601
602###################
603# Missing ET merger
604###################
605
606module Merger MissingET {
607# add InputArray InputArray
608# add InputArray RunPUPPI/PuppiParticles
609 add InputArray EFlowMerger/eflow
610 set MomentumOutputArray momentum
611}
612
613module Merger PuppiMissingET {
614 #add InputArray InputArray
615 add InputArray RunPUPPI/PuppiParticles
616 #add InputArray EFlowMerger/eflow
617 set MomentumOutputArray momentum
618}
619
620###################
621# Ger PileUp Missing ET
622###################
623
624module Merger GenPileUpMissingET {
625# add InputArray InputArray
626# add InputArray RunPUPPI/PuppiParticles
627 add InputArray ParticlePropagator/stableParticles
628 set MomentumOutputArray momentum
629}
630
631##################
632# Scalar HT merger
633##################
634
635module Merger ScalarHT {
636# add InputArray InputArray
637 add InputArray RunPUPPI/PuppiParticles
638 set EnergyOutputArray energy
639}
640
641#################
642# Neutrino Filter
643#################
644
645module PdgCodeFilter NeutrinoFilter {
646
647 set InputArray Delphes/stableParticles
648 set OutputArray filteredParticles
649
650 set PTMin 0.0
651
652 add PdgCode {12}
653 add PdgCode {14}
654 add PdgCode {16}
655 add PdgCode {-12}
656 add PdgCode {-14}
657 add PdgCode {-16}
658
659}
660
661
662#####################
663# MC truth jet finder
664#####################
665
666module FastJetFinder GenJetFinder {
667 set InputArray NeutrinoFilter/filteredParticles
668
669 set OutputArray jets
670
671 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
672 set JetAlgorithm 6
673 set ParameterR 0.4
674
675 set JetPTMin 15.0
676}
677
678#########################
679# Gen Missing ET merger
680########################
681
682module Merger GenMissingET {
683
684# add InputArray InputArray
685 add InputArray NeutrinoFilter/filteredParticles
686 set MomentumOutputArray momentum
687}
688
689
690
691############
692# Jet finder
693############
694
695module FastJetFinder FastJetFinder {
696# set InputArray TowerMerger/towers
697 set InputArray RunPUPPI/PuppiParticles
698
699 set OutputArray jets
700
701 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
702 set JetAlgorithm 6
703 set ParameterR 0.4
704
705 set JetPTMin 15.0
706}
707
708
709
710############
711# Jet finder
712############
713
714module FastJetFinder FatJetFinder {
715# set InputArray TowerMerger/towers
716 set InputArray RunPUPPI/PuppiParticles
717
718 set OutputArray jets
719
720 set JetAlgorithm 5
721 set ParameterR 0.8
722
723 set ComputeNsubjettiness 1
724 set Beta 1.0
725 set AxisMode 4
726
727 set ComputeTrimming 1
728 set RTrim 0.2
729 set PtFracTrim 0.05
730
731 set ComputePruning 1
732 set ZcutPrun 0.1
733 set RcutPrun 0.5
734 set RPrun 0.8
735
736 set ComputeSoftDrop 1
737 set BetaSoftDrop 0.0
738 set SymmetryCutSoftDrop 0.1
739 set R0SoftDrop 0.8
740
741 set JetPTMin 200.0
742}
743
744
745##################
746# Jet Energy Scale
747##################
748
749module EnergyScale JetEnergyScale {
750 set InputArray FastJetFinder/jets
751 set OutputArray jets
752
753 # scale formula for jets
754 set ScaleFormula {1.00}
755}
756
757
758#################
759# Photon filter
760#################
761
762module PdgCodeFilter PhotonFilter {
763 set InputArray PhotonEnergySmearing/eflowPhotons
764 set OutputArray photons
765 set Invert true
766 set PTMin 5.0
767 add PdgCode {22}
768}
769
770
771####################
772# Photon isolation #
773####################
774
775module Isolation PhotonIsolation {
776
777 # particle for which calculate the isolation
778 set CandidateInputArray PhotonFilter/photons
779
780 # isolation collection
781 set IsolationInputArray RunPUPPI/PuppiParticles
782
783 # output array
784 set OutputArray photons
785
786 # veto isolation cand. based on proximity to input cand.
787 set DeltaRMin 0.01
788 set UseMiniCone true
789
790 # isolation cone
791 set DeltaRMax 0.3
792
793 # minimum pT
794 set PTMin 1.0
795
796 # iso ratio to cut
797 set PTRatioMax 9999.
798
799}
800
801
802
803#####################
804# Photon efficiency #
805#####################
806
807module Efficiency PhotonEfficiency {
808
809 ## input particles
810 set InputArray PhotonIsolation/photons
811 ## output particles
812 set OutputArray photons
813 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
814 # efficiency formula for photons
815 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
816 (abs(eta) <= 1.5) * (pt > 10.0) * (0.9635) + \
817 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.9624) + \
818 (abs(eta) > 4.0) * (0.00)}
819
820}
821
822
823######################
824# Electron isolation #
825######################
826
827module Isolation ElectronIsolation {
828
829 set CandidateInputArray ElectronFilter/electrons
830
831 # isolation collection
832 set IsolationInputArray RunPUPPI/PuppiParticles
833 #set IsolationInputArray EFlowMerger/eflow
834
835 set OutputArray electrons
836
837 set DeltaRMax 0.3
838 set PTMin 1.0
839 set PTRatioMax 9999.
840
841}
842
843
844
845#######################
846# Electron efficiency #
847#######################
848
849module Efficiency ElectronEfficiency {
850
851 set InputArray ElectronIsolation/electrons
852 set OutputArray electrons
853
854 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
855 # efficiency formula for electrons
856 set EfficiencyFormula {
857 (pt <= 4.0) * (0.00) + \
858 (abs(eta) <= 1.45 ) * (pt > 4.0 && pt <= 6.0) * (0.50) + \
859 (abs(eta) <= 1.45 ) * (pt > 6.0 && pt <= 8.0) * (0.70) + \
860 (abs(eta) <= 1.45 ) * (pt > 8.0 && pt <= 10.0) * (0.85) + \
861 (abs(eta) <= 1.45 ) * (pt > 10.0 && pt <= 30.0) * (0.94) + \
862 (abs(eta) <= 1.45 ) * (pt > 30.0 && pt <= 50.0) * (0.97) + \
863 (abs(eta) <= 1.45 ) * (pt > 50.0 && pt <= 70.0) * (0.98) + \
864 (abs(eta) <= 1.45 ) * (pt > 70.0 ) * (1.0) + \
865 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 4.0 && pt <= 10.0) * (0.35) + \
866 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 10.0 && pt <= 30.0) * (0.40) + \
867 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 30.0 && pt <= 70.0) * (0.45) + \
868 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 70.0 ) * (0.55) + \
869 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 4.0 && pt <= 10.0) * (0.75) + \
870 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 10.0 && pt <= 30.0) * (0.85) + \
871 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 30.0 && pt <= 50.0) * (0.95) + \
872 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 50.0 && pt <= 70.0) * (0.95) + \
873 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 70.0 ) * (1.0) + \
874 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 4.0 && pt <= 10.0) * (0.65) + \
875 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 10.0 && pt <= 30.0) * (0.75) + \
876 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 30.0 && pt <= 50.0) * (0.90) + \
877 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 50.0 && pt <= 70.0) * (0.90) + \
878 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 70.0 ) * (0.90) + \
879 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 4.0 && pt <= 10.0) * (0.65) + \
880 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 10.0 && pt <= 30.0) * (0.75) + \
881 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 30.0 && pt <= 50.0) * (0.90) + \
882 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 50.0 && pt <= 70.0) * (0.90) + \
883 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 70.0 ) * (0.90) + \
884 (abs(eta) > 4.0) * (0.00)
885
886 }
887}
888
889##################
890# Muon isolation #
891##################
892
893module Isolation MuonIsolation {
894 set CandidateInputArray MuonMomentumSmearing/muons
895
896 # isolation collection
897 set IsolationInputArray RunPUPPI/PuppiParticles
898
899 set OutputArray muons
900
901 set DeltaRMax 0.3
902 set PTMin 1.0
903 set PTRatioMax 9999.
904
905}
906
907
908##################
909# Muon Loose Id #
910##################
911
912module Efficiency MuonLooseIdEfficiency {
913 set InputArray MuonIsolation/muons
914 set OutputArray muons
915 # tracking + LooseID efficiency formula for muons
916 source muonLooseId.tcl
917
918}
919
920
921##################
922# Muon Tight Id #
923##################
924
925module Efficiency MuonTightIdEfficiency {
926 set InputArray MuonIsolation/muons
927 set OutputArray muons
928 # tracking + TightID efficiency formula for muons
929 source muonTightId.tcl
930}
931
932
933
934########################
935# Jet Flavor Association
936########################
937
938module JetFlavorAssociation JetFlavorAssociation {
939
940 set PartonInputArray Delphes/partons
941 set ParticleInputArray Delphes/allParticles
942 set ParticleLHEFInputArray Delphes/allParticlesLHEF
943 set JetInputArray JetEnergyScale/jets
944
945 set DeltaR 0.5
946 set PartonPTMin 10.0
947 set PartonEtaMax 4.0
948
949}
950
951
952#############
953# b-tagging #
954#############
955module BTagging BTaggingLoose {
956
957 set JetInputArray JetEnergyScale/jets
958
959 set BitNumber 0
960
961 source btagLoose.tcl
962}
963
964
965#############
966# b-tagging #
967#############
968module BTagging BTaggingMedium {
969
970 set JetInputArray JetEnergyScale/jets
971
972 set BitNumber 1
973
974 source btagMedium.tcl
975}
976
977
978#############
979# b-tagging #
980#############
981module BTagging BTaggingTight {
982
983 set JetInputArray JetEnergyScale/jets
984
985 set BitNumber 2
986
987 source btagTight.tcl
988}
989
990
991#############
992# tau-tagging
993#############
994
995
996module TauTagging TauTagging {
997 set ParticleInputArray Delphes/allParticles
998 set PartonInputArray Delphes/partons
999 set JetInputArray JetEnergyScale/jets
1000
1001 set DeltaR 0.5
1002
1003 set TauPTMin 20.0
1004
1005 set TauEtaMax 2.3
1006
1007 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
1008
1009 add EfficiencyFormula {0} { (abs(eta) < 2.3) * ((( -0.00621816+0.00130097*pt-2.19642e-5*pt^2+1.49393e-7*pt^3-4.58972e-10*pt^4+5.27983e-13*pt^5 )) * (pt<250) + 0.0032*(pt>250)) + \
1010 (abs(eta) > 2.3) * (0.000)
1011 }
1012 add EfficiencyFormula {15} { (abs(eta) < 2.3) * 0.97*0.77*( (0.32 + 0.01*pt - 0.000054*pt*pt )*(pt<100)+0.78*(pt>100) ) + \
1013 (abs(eta) > 2.3) * (0.000)
1014 }
1015}
1016
1017
1018###############################################################################################################
1019# StatusPidFilter: this module removes all generated particles except electrons, muons, taus, and status == 3 #
1020###############################################################################################################
1021
1022module StatusPidFilter GenParticleFilter {
1023
1024 set InputArray Delphes/allParticles
1025 set OutputArray filteredParticles
1026 set PTMin 5.0
1027
1028}
1029
1030
1031##################
1032# ROOT tree writer
1033##################
1034
1035module TreeWriter TreeWriter {
1036# add Branch InputArray BranchName BranchClass
1037 add Branch GenParticleFilter/filteredParticles Particle GenParticle
1038 add Branch PileUpMerger/vertices Vertex Vertex
1039
1040 add Branch GenJetFinder/jets GenJet Jet
1041 add Branch GenMissingET/momentum GenMissingET MissingET
1042
1043# add Branch HCal/eflowTracks EFlowTrack Track
1044# add Branch ECal/eflowPhotons EFlowPhoton Tower
1045# add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
1046
1047 add Branch PhotonEfficiency/photons Photon Photon
1048 add Branch ElectronEfficiency/electrons Electron Electron
1049 add Branch MuonLooseIdEfficiency/muons MuonLoose Muon
1050 add Branch MuonTightIdEfficiency/muons MuonTight Muon
1051
1052 add Branch JetEnergyScale/jets Jet Jet
1053 add Branch FatJetFinder/jets FatJet Jet
1054
1055 add Branch MissingET/momentum MissingET MissingET
1056 add Branch PuppiMissingET/momentum PuppiMissingET MissingET
1057 add Branch GenPileUpMissingET/momentum GenPileUpMissingET MissingET
1058 add Branch ScalarHT/energy ScalarHT ScalarHT
1059}
1060
Note: See TracBrowser for help on using the repository browser.