Fork me on GitHub

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

Timing
Last change on this file since fec809d was fec809d, checked in by Michele Selvaggi <michele.selvaggi@…>, 5 years ago

fixed bug in energy loss, removed printouts, and added comments in the card

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