Fork me on GitHub

source: svn/trunk/examples/delphes_card_TLEP.tcl@ 1366

Last change on this file since 1366 was 1358, checked in by Michele Selvaggi, 11 years ago

push delphes TLEP card

File size: 14.6 KB
RevLine 
[1358]1#######################################
2# Order of execution of various modules
3#######################################
4
5set ExecutionPath {
6 ParticlePropagator
7
8 ChargedHadronTrackingEfficiency
9 ElectronTrackingEfficiency
10 MuonTrackingEfficiency
11
12 ChargedHadronMomentumSmearing
13 ElectronEnergySmearing
14 MuonMomentumSmearing
15
16 TrackMerger
17 Calorimeter
18 EFlowMerger
19
20 MissingET
21
22 GenJetFinder
23 FastJetFinder
24
25 JetEnergyScale
26
27 BTagging
28 TauTagging
29
30 ScalarHT
31
32 TreeWriter
33}
34
35#################################
36# Propagate particles in cylinder
37#################################
38
39module ParticlePropagator ParticlePropagator {
40 set InputArray Delphes/stableParticles
41
42 set OutputArray stableParticles
43 set ChargedHadronOutputArray chargedHadrons
44 set ElectronOutputArray electrons
45 set MuonOutputArray muons
46
47 # radius of the magnetic field coverage, in m
48 set Radius 5.00
49 # half-length of the magnetic field coverage, in m
50 set HalfLength 12.00
51
52 # magnetic field
53 set Bz 5.0
54}
55
56####################################
57# Charged hadron tracking efficiency
58####################################
59
60module Efficiency ChargedHadronTrackingEfficiency {
61 set InputArray ParticlePropagator/chargedHadrons
62 set OutputArray chargedHadrons
63
64 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
65
66 # tracking efficiency formula for charged hadrons
67 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
68 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) + \
69 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) + \
70 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
71 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0) * (0.98) + \
72 (abs(eta) > 4.0) * (0.00)}
73
74}
75
76##############################
77# Electron tracking efficiency
78##############################
79
80module Efficiency ElectronTrackingEfficiency {
81 set InputArray ParticlePropagator/electrons
82 set OutputArray electrons
83
84 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
85
86 # tracking efficiency formula for electrons
87 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
88 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) + \
89 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) + \
90 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
91 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0) * (0.98) + \
92 (abs(eta) > 4.0) * (0.00)}
93}
94
95##########################
96# Muon tracking efficiency
97##########################
98
99module Efficiency MuonTrackingEfficiency {
100 set InputArray ParticlePropagator/muons
101 set OutputArray muons
102
103 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
104
105 # tracking efficiency formula for muons
106 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
107 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) + \
108 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) + \
109 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
110 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0) * (0.98) + \
111 (abs(eta) > 4.0) * (0.00)}
112}
113
114########################################
115# Momentum resolution for charged tracks
116########################################
117
118module MomentumSmearing ChargedHadronMomentumSmearing {
119 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
120 set OutputArray chargedHadrons
121
122 # set ResolutionFormula {resolution formula as a function of eta and pt}
123
124 # resolution formula for charged hadrons
125 set ResolutionFormula { (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.02) + \
126 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e1) * (0.01) + \
127 (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
128 (abs(eta) <= 1.5) * (pt > 2.0e2) * (0.05) + \
129 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1 && pt <= 1.0) * (0.03) + \
130 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt <= 1.0e1) * (0.02) + \
131 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
132 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 2.0e2) * (0.05)}
133}
134
135#################################
136# Energy resolution for electrons
137#################################
138
139module EnergySmearing ElectronEnergySmearing {
140 set InputArray ElectronTrackingEfficiency/electrons
141 set OutputArray electrons
142
143 # set ResolutionFormula {resolution formula as a function of eta and energy}
144
145 # resolution formula for electrons
146 set ResolutionFormula { (abs(eta) <= 4.0) * (energy > 0.1 && energy <= 2.0e1) * (energy*0.007) + \
147 (abs(eta) <= 4.0) * (energy > 2.0e1) * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
148 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2 + energy*1.00^2)}
149
150}
151
152###############################
153# Momentum resolution for muons
154###############################
155
156module MomentumSmearing MuonMomentumSmearing {
157 set InputArray MuonTrackingEfficiency/muons
158 set OutputArray muons
159
160 # set ResolutionFormula {resolution formula as a function of eta and pt}
161
162 # resolution formula for muons
163 set ResolutionFormula { (abs(eta) <= 0.5) * (pt > 0.1 && pt <= 5.0) * (0.02) + \
164 (abs(eta) <= 0.5) * (pt > 5.0 && pt <= 1.0e2) * (0.015) + \
165 (abs(eta) <= 0.5) * (pt > 1.0e2 && pt <= 2.0e2) * (0.03) + \
166 (abs(eta) <= 0.5) * (pt > 2.0e2) * (0.05 + pt*1.e-4) + \
167 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 0.1 && pt <= 5.0) * (0.03) + \
168 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 5.0 && pt <= 1.0e2) * (0.02) + \
169 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 1.0e2 && pt <= 2.0e2) * (0.04) + \
170 (abs(eta) > 0.5 && abs(eta) <= 1.5) * (pt > 2.0e2) * (0.05 + pt*1.e-4) + \
171 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 0.1 && pt <= 5.0) * (0.04) + \
172 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 5.0 && pt <= 1.0e2) * (0.035) + \
173 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 1.0e2 && pt <= 2.0e2) * (0.05) + \
174 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 2.0e2) * (0.05 + pt*1.e-4)}
175}
176
177##############
178# Track merger
179##############
180
181module Merger TrackMerger {
182# add InputArray InputArray
183 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
184 add InputArray ElectronEnergySmearing/electrons
185 add InputArray MuonMomentumSmearing/muons
186 set OutputArray tracks
187}
188
189#############
190# Calorimeter
191#############
192
193module Calorimeter Calorimeter {
194 set ParticleInputArray ParticlePropagator/stableParticles
195 set TrackInputArray TrackMerger/tracks
196
197 set TowerOutputArray towers
198 set PhotonOutputArray photons
199
200 set EFlowTrackOutputArray eflowTracks
201 set EFlowPhotonOutputArray eflowPhotons
202 set EFlowNeutralHadronOutputArray eflowNeutralHadrons
203
204 set pi [expr {acos(-1)}]
205
206 # lists of the edges of each tower in eta and phi
207 # each list starts with the lower edge of the first tower
208 # the list ends with the higher edged of the last tower
209
210 # 5 degrees towers
211 set PhiBins {}
212 for {set i -36} {$i <= 36} {incr i} {
213 add PhiBins [expr {$i * $pi/36.0}]
214 }
215 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} {
216 add EtaPhiBins $eta $PhiBins
217 }
218
219 # 10 degrees towers
220 set PhiBins {}
221 for {set i -18} {$i <= 18} {incr i} {
222 add PhiBins [expr {$i * $pi/18.0}]
223 }
224 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} {
225 add EtaPhiBins $eta $PhiBins
226 }
227
228 # 20 degrees towers
229 set PhiBins {}
230 for {set i -9} {$i <= 9} {incr i} {
231 add PhiBins [expr {$i * $pi/9.0}]
232 }
233 foreach eta {6 -5.6 -5.3 -5 -4.7 -4.525 4.7 5 5.3 5.6 6} {
234 add EtaPhiBins $eta $PhiBins
235 }
236
237 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
238 add EnergyFraction {0} {0.0 1.0}
239 # energy fractions for e, gamma and pi0
240 add EnergyFraction {11} {1.0 0.0}
241 add EnergyFraction {22} {1.0 0.0}
242 add EnergyFraction {111} {1.0 0.0}
243 # energy fractions for muon, neutrinos and neutralinos
244 add EnergyFraction {12} {0.0 0.0}
245 add EnergyFraction {13} {0.0 0.0}
246 add EnergyFraction {14} {0.0 0.0}
247 add EnergyFraction {16} {0.0 0.0}
248 add EnergyFraction {1000022} {0.0 0.0}
249 add EnergyFraction {1000023} {0.0 0.0}
250 add EnergyFraction {1000025} {0.0 0.0}
251 add EnergyFraction {1000035} {0.0 0.0}
252 add EnergyFraction {1000045} {0.0 0.0}
253 # energy fractions for K0short and Lambda
254 add EnergyFraction {310} {0.3 0.7}
255 add EnergyFraction {3122} {0.3 0.7}
256
257 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
258 set ECalResolutionFormula { (abs(eta) <= 4.0) * sqrt(energy^2*0.005^2 + energy*0.02^2) + \
259 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2 + energy*1.00^2)}
260
261 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
262 set HCalResolutionFormula { (abs(eta) <= 4.0) * sqrt(energy^2*0.03^2 + energy*0.50^2) + \
263 (abs(eta) > 4.0 && abs(eta) <= 6.0) * sqrt(energy^2*0.05^2 + energy*1.00^2)}
264}
265
266####################
267# Energy flow merger
268####################
269
270module Merger EFlowMerger {
271# add InputArray InputArray
272 add InputArray Calorimeter/eflowTracks
273 add InputArray Calorimeter/eflowPhotons
274 add InputArray Calorimeter/eflowNeutralHadrons
275 set OutputArray eflow
276}
277
278###################
279# Missing ET merger
280###################
281
282module Merger MissingET {
283# add InputArray InputArray
284 add InputArray EFlowMerger/eflow
285 set MomentumOutputArray momentum
286}
287
288
289##################
290# Scalar HT merger
291##################
292
293module Merger ScalarHT {
294# add InputArray InputArray
295 add InputArray EFlowMerger/eflow
296 set EnergyOutputArray energy
297}
298
299#####################
300# MC truth jet finder
301#####################
302
303module FastJetFinder GenJetFinder {
304 set InputArray Delphes/stableParticles
305
306 set OutputArray jets
307
308 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
309 set JetAlgorithm 6
310 set ParameterR 0.5
311
312 set JetPTMin 5.0
313}
314
315############
316# Jet finder
317############
318
319module FastJetFinder FastJetFinder {
320# set InputArray Calorimeter/towers
321 set InputArray EFlowMerger/eflow
322
323 set OutputArray jets
324
325 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
326 set JetAlgorithm 6
327 set ParameterR 0.5
328
329 set JetPTMin 5.0
330}
331
332##################
333# Jet Energy Scale
334##################
335
336module EnergyScale JetEnergyScale {
337 set InputArray FastJetFinder/jets
338 set OutputArray jets
339
340 # scale formula for jets
341 set ScaleFormula {1.00}
342}
343
344###########
345# b-tagging
346###########
347
348module BTagging BTagging {
349 set PartonInputArray Delphes/partons
350 set JetInputArray JetEnergyScale/jets
351
352 set BitNumber 0
353
354 set DeltaR 0.5
355
356 set PartonPTMin 1.0
357
358 set PartonEtaMax 4.0
359
360 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
361 # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
362 # gluon's PDG code has the lowest priority
363
364 # https://twiki.cern.ch/twiki/bin/view/CMSPublic/PhysicsResultsBTV
365 # default efficiency formula (misidentification rate)
366 add EfficiencyFormula {0} {0.001}
367
368 # efficiency formula for c-jets (misidentification rate)
369 add EfficiencyFormula {4} { (pt <= 15.0) * (0.000) + \
370 (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
371 (abs(eta) > 1.2 && abs(eta) <= 4.0) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
372 (abs(eta) > 4.0) * (0.000)}
373
374 # efficiency formula for b-jets
375 add EfficiencyFormula {5} { (pt <= 15.0) * (0.000) + \
376 (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
377 (abs(eta) > 1.2 && abs(eta) <= 4.0) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
378 (abs(eta) > 4.0) * (0.000)}
379}
380
381module TauTagging TauTagging {
382 set ParticleInputArray Delphes/allParticles
383 set PartonInputArray Delphes/partons
384 set JetInputArray JetEnergyScale/jets
385
386 set DeltaR 0.5
387
388 set TauPTMin 1.0
389
390 set TauEtaMax 4.0
391
392 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
393
394 # default efficiency formula (misidentification rate)
395 add EfficiencyFormula {0} {0.001}
396 # efficiency formula for tau-jets
397 add EfficiencyFormula {15} {0.4}
398}
399
400##################
401# ROOT tree writer
402##################
403
404module TreeWriter TreeWriter {
405# add Branch InputArray BranchName BranchClass
406 add Branch Delphes/allParticles Particle GenParticle
407 add Branch GenJetFinder/jets GenJet Jet
408 add Branch Calorimeter/eflowNeutralHadrons NeutralHadron Tower
409 add Branch ChargedHadronMomentumSmearing/chargedHadrons ChargedHadron Track
410 add Branch Calorimeter/eflowPhotons Photon Photon
411 add Branch ElectronEnergySmearing/electrons Electron Electron
412 add Branch MuonMomentumSmearing/muons Muon Muon
413 add Branch JetEnergyScale/jets Jet Jet
414 add Branch MissingET/momentum MissingET MissingET
415 add Branch ScalarHT/energy ScalarHT ScalarHT
416}
417
Note: See TracBrowser for help on using the repository browser.