Fork me on GitHub

source: git/cards/CMS_PhaseII/propagatorTest.tcl@ 83ee320

Timing
Last change on this file since 83ee320 was 542eb90, checked in by Kaan Yüksel Oyulmaz <kaanyukseloyulmaz@…>, 5 years ago

test2

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