Fork me on GitHub

source: git/cards/CMS_PhaseII/testVertexing.tcl@ 4564cba

Last change on this file since 4564cba was 23389ff, checked in by Michele Selvaggi <michele.selvaggi@…>, 8 years ago

first commit of examples for testing vertexing algos

  • Property mode set to 100644
File size: 8.0 KB
Line 
1set MaxEvents 100
2#set RandomSeed 123
3
4
5#
6# Phase II - Pile-Up
7#
8# Main authors: Michele Selvaggi (UCL)
9#
10# Released on:
11#
12# Version: v02 beta - test TrackSmearing and vertexing
13#
14#
15#######################################
16# Order of execution of various modules
17#######################################
18
19set ExecutionPath {
20
21 BeamSpotFilter
22
23 PileUpMerger
24 ParticlePropagator
25
26 ChargedHadronTrackingEfficiency
27 ElectronTrackingEfficiency
28 MuonTrackingEfficiency
29
30 TrackMerger
31 TrackSmearing
32
33 TimeSmearing
34
35 VertexFinder
36 VertexFinderDA4D
37
38 TreeWriter
39}
40
41
42#######################
43# GenBeamSpotFilter
44# Saves a particle intended to represent the beamspot
45#######################
46
47module BeamSpotFilter BeamSpotFilter {
48 set InputArray Delphes/stableParticles
49 set OutputArray beamSpotParticle
50
51}
52
53###############
54# PileUp Merger
55###############
56
57module PileUpMerger PileUpMerger {
58 set InputArray Delphes/stableParticles
59
60 set ParticleOutputArray stableParticles
61 set VertexOutputArray vertices
62
63 # pre-generated minbias input file
64 set PileUpFile MinBias.pileup
65
66 # average expected pile up
67 set MeanPileUp 50
68
69 # 0-poisson, 1-uniform, 2-delta
70 set PileUpDistribution 2
71
72 # maximum spread in the beam direction in m
73 set ZVertexSpread 0.25
74
75 # maximum spread in time in s
76 set TVertexSpread 800E-12
77
78 # vertex smearing formula f(z,t) (z,t need to be respectively given in m,s)
79
80 #set VertexDistributionFormula {exp(-(t^2/(2*(0.063/2.99792458E8*exp(-(z^2/(2*(0.063)^2))))^2)))}
81 set VertexDistributionFormula {exp(-(t^2/160e-12^2/2))*exp(-(z^2/0.053^2/2))}
82
83 # taking 5.3 cm x 160 ps
84
85 #set VertexDistributionFormula { (abs(t) <= 160e-12) * (abs(z) <= 0.053) * (1.00) +
86 # (abs(t) > 160e-12) * (abs(z) <= 0.053) * (0.00) +
87 # (abs(t) <= 160e-12) * (abs(z) > 0.053) * (0.00) +
88 # (abs(t) > 160e-12) * (abs(z) > 0.053) * (0.00)}
89
90}
91
92#################################
93# Propagate particles in cylinder
94#################################
95
96module ParticlePropagator ParticlePropagator {
97 set InputArray PileUpMerger/stableParticles
98
99 set OutputArray stableParticles
100 set ChargedHadronOutputArray chargedHadrons
101 set ElectronOutputArray electrons
102 set MuonOutputArray muons
103
104 # radius of the magnetic field coverage, in m
105 set Radius 1.29
106 # half-length of the magnetic field coverage, in m
107 set HalfLength 3.0
108
109 # magnetic field
110 set Bz 3.8
111}
112
113####################################
114# Charged hadron tracking efficiency
115####################################
116
117module Efficiency ChargedHadronTrackingEfficiency {
118 set InputArray ParticlePropagator/chargedHadrons
119 set OutputArray chargedHadrons
120
121 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
122
123 # tracking efficiency formula for charged hadrons
124 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
125 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.70) +
126 (abs(eta) <= 1.5) * (pt > 1.0) * (0.95) +
127 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.60) +
128 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.85) +
129 (abs(eta) > 2.5) * (0.00)}
130}
131
132##############################
133# Electron tracking efficiency
134##############################
135
136module Efficiency ElectronTrackingEfficiency {
137 set InputArray ParticlePropagator/electrons
138 set OutputArray electrons
139
140 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
141
142 # tracking efficiency formula for electrons
143 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
144 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.73) +
145 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e2) * (0.95) +
146 (abs(eta) <= 1.5) * (pt > 1.0e2) * (0.99) +
147 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.50) +
148 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e2) * (0.83) +
149 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.90) +
150 (abs(eta) > 2.5) * (0.00)}
151}
152
153##########################
154# Muon tracking efficiency
155##########################
156
157module Efficiency MuonTrackingEfficiency {
158 set InputArray ParticlePropagator/muons
159 set OutputArray muons
160
161 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
162
163 # tracking efficiency formula for muons
164 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
165 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) +
166 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e3) * (0.99) +
167 (abs(eta) <= 1.5) * (pt > 1.0e3 ) * (0.99 * exp(0.5 - pt*5.0e-4)) +
168
169 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.70) +
170 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e3) * (0.98) +
171 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e3) * (0.98 * exp(0.5 - pt*5.0e-4)) +
172 (abs(eta) > 2.5) * (0.00)}
173}
174
175
176
177##############
178# Track merger
179##############
180
181module Merger TrackMerger {
182# add InputArray InputArray
183 add InputArray ChargedHadronTrackingEfficiency/chargedHadrons
184 add InputArray ElectronTrackingEfficiency/electrons
185 add InputArray MuonTrackingEfficiency/muons
186 set OutputArray tracks
187}
188
189########################################
190# Smear tracks
191########################################
192
193module TrackSmearing TrackSmearing {
194 set InputArray TrackMerger/tracks
195 set BeamSpotInputArray BeamSpotFilter/beamSpotParticle
196 set OutputArray tracks
197 set ApplyToPileUp true
198
199 # from http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
200 source trackResolution.tcl
201}
202
203########################################
204# Time Smearing
205########################################
206
207module TimeSmearing TimeSmearing {
208 set InputArray TrackSmearing/tracks
209 set OutputArray tracks
210
211 # assume 20 ps resolution for now
212 set TimeResolution 20E-12
213}
214
215##################################
216# Primary vertex reconstruction
217##################################
218
219
220module VertexFinderDA4D VertexFinderDA4D {
221 set InputArray TimeSmearing/tracks
222# set InputArray TrackSmearing/tracks
223# set InputArray TrackMerger/tracks
224
225 set OutputArray tracks
226 set VertexOutputArray vertices
227
228 set Verbose 0
229 set MinPT 1.0
230
231 # in mm
232 set VertexSpaceSize 0.5
233
234 # in s
235 set VertexTimeSize 10E-12
236
237 set UseTc 1
238 set BetaMax 0.1
239 set BetaStop 1.0
240 set CoolingFactor 0.8
241 set MaxIterations 100
242
243 # in mm
244 set DzCutOff 40
245 set D0CutOff 30
246
247}
248
249##################################
250# Primary vertex reconstruction
251##################################
252
253
254module VertexFinder VertexFinder {
255
256 set InputArray TrackSmearing/tracks
257# set InputArray TimeSmearing/tracks
258# set InputArray TrackMerger/tracks
259
260 set OutputArray tracks
261 set VertexOutputArray vertices
262
263 set MinPT 1.0
264 set MinNDF 4
265 set SeedMinPT 1.0
266
267 set Sigma 3.0
268 set MaxEta 10.0
269 set GrowSeeds 1
270
271}
272
273##################
274# ROOT tree writer
275##################
276
277module TreeWriter TreeWriter {
278# add Branch InputArray BranchName BranchClass
279
280 add Branch PileUpMerger/stableParticles Particle GenParticle
281 add Branch TimeSmearing/tracks Track Track
282
283 add Branch VertexFinderDA4D/vertices Vertex4D Vertex
284 add Branch VertexFinder/vertices Vertex Vertex
285
286 add Branch PileUpMerger/vertices GenVertex Vertex
287
288
289}
290
Note: See TracBrowser for help on using the repository browser.