CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MaterialEffects_cfi.py
Go to the documentation of this file.
1 # The following comments couldn't be translated into the new config version:
2 
3 # pi+ pi- K0L K+ K- p pbar n nbar
4 # 0.2508, 0.2549, 0.3380, 0.2879, 0.3171, 0.3282, 0.5371, 0.3859, 0.5086 # before 170 tuning
5 
6 import FWCore.ParameterSet.Config as cms
7 
8 # Material effects to be simulated in the tracker material and associated cuts
9 MaterialEffectsBlock = cms.PSet(
10  MaterialEffects = cms.PSet(
11 
12  use_hardcoded_geometry = cms.bool(True),
13 
14  # Material Properties (Silicon)
15  # A
16  A = cms.double(28.0855),
17  # Z
18  Z = cms.double(14.0),
19  # Density in g/cm3
20  Density = cms.double(2.329),
21  # One radiation length in cm
22  RadiationLength = cms.double(9.36),
23 
24  # General switches
25  # Enable photon pair conversion
26  PairProduction = cms.bool(True),
27  # Smallest photon energy allowed for conversion
28  photonEnergy = cms.double(0.1),
29  # Enable electron Bremsstrahlung
30  Bremsstrahlung = cms.bool(True),
31  # Enable muon Bremsstrahlung
32  MuonBremsstrahlung = cms.bool(False),
33  # Smallest bremstrahlung photon energy
34  bremEnergy = cms.double(0.1),
35  # Smallest bremsstrahlung energy fraction (wrt to the electron energy)
36  bremEnergyFraction = cms.double(0.005),
37  # Enable dE/dx
38  EnergyLoss = cms.bool(True),
39  # Enable Multiple Scattering
40  MultipleScattering = cms.bool(True),
41  # Smallest pT for the Mutliple Scattering
42  pTmin = cms.double(0.2),
43  # Enable Nuclear Interactions
44  NuclearInteraction = cms.bool(True),
45  # The energies of the pions used in the above files (same order)
46  pionEnergies = cms.untracked.vdouble(
47  1.0, 2.0, 3.0, 4.0, 5.0, 7.0, 9.0, 12.0, 15.0, 20.0,
48  30.0, 50.0, 100.0, 200.0, 300.0, 500.0, 700.0, 1000.0
49  ),
50  # The particle types simulated
51  pionTypes = cms.untracked.vint32(
52  211, -211, 130, 321, -321, 2212, -2212, 2112, -2112
53  ),
54  # The corresponding particle names
55  pionNames = cms.untracked.vstring(
56  'piplus', 'piminus', 'K0L', 'Kplus', 'Kminus', 'p', 'pbar', 'n', 'nbar'
57  ),
58  # The corresponding particle masses
59  pionMasses = cms.untracked.vdouble(
60  0.13957, 0.13957, 0.497648, 0.493677, 0.493677,
61  0.93827, 0.93827, 0.939565, 0.939565
62  ),
63  # The corresponding smallest momenta for which an inleatic interaction may occur
64  pionMinP = cms.untracked.vdouble(
65  0.7, 0.0, 1.0, 1.0, 0.0, 1.1, 0.0, 1.1, 0.0
66  ),
67 
68 
69  # The scaling of the inelastic cross section with energy
70  ratios = cms.untracked.vdouble(
71  # pi+ (211)
72  0.031390573,0.531842852,0.819614219,0.951251711,0.986382750,1.000000000,0.985087033,0.982996773,
73  0.990832192,0.992237923,0.994841580,0.973816742,0.967264815,0.971714258,0.969122824,0.978681792,
74  0.977312732,0.984255819,
75  # pi- (-211)
76  0.035326512,0.577356403,0.857118809,0.965683504,0.989659360,1.000000000,0.989599240,0.980665408,
77  0.988384816,0.981038152,0.975002104,0.959996152,0.953310808,0.954705592,0.957615400,0.961150456,
78  0.965022184,0.960573304,
79  # K0L (130)
80  0.000000000,0.370261189,0.649793096,0.734342408,0.749079499,0.753360057,0.755790543,0.755872164,
81  0.751337674,0.746685288,0.747519634,0.739357554,0.735004444,0.803039922,0.832749896,0.890900187,
82  0.936734805,1.000000000,
83  # K+ (321)
84  0.000000000,0.175571717,0.391683394,0.528946472,0.572818635,0.614210280,0.644125538,0.670304050,
85  0.685144573,0.702870161,0.714708513,0.730805263,0.777711536,0.831090576,0.869267129,0.915747562,
86  0.953370523,1.000000000,
87  # K- (-321)
88  0.000000000,0.365353210,0.611663677,0.715315908,0.733498956,0.738361302,0.745253654,0.751459671,
89  0.750628335,0.746442657,0.750850669,0.744895986,0.735093960,0.791663444,0.828609543,0.889993040,
90  0.940897842,1.000000000,
91  # proton (2212)
92  0.000000000,0.042849136,0.459103223,0.666165343,0.787930873,0.890397011,0.920999533,0.937832788,
93  0.950920131,0.966595049,0.979542270,0.988061653,0.983260159,0.988958431,0.991723494,0.995273237,
94  1.000000000,0.999962634,
95  # anti-proton (-2212)
96  1.000000000,0.849956907,0.775625988,0.802018230,0.816207485,0.785899785,0.754998487,0.728977244,
97  0.710010673,0.670890339,0.665627872,0.652682888,0.613334247,0.647534574,0.667910938,0.689919693,
98  0.709200185,0.724199928,
99  # neutron (2112)
100  0.000000000,0.059216484,0.437844536,0.610370629,0.702090648,0.780076890,0.802143073,0.819570432,
101  0.825829666,0.840079750,0.838435509,0.837529986,0.835687165,0.885205014,0.912450156,0.951451221,
102  0.973215562,1.000000000,
103  # anti-neutron
104  1.000000000,0.849573257,0.756479495,0.787147094,0.804572414,0.791806302,0.760234588,0.741109531,
105  0.724118186,0.692829761,0.688465897,0.671806061,0.636461171,0.675314029,0.699134460,0.724305037,
106  0.742556115,0.758504713
107  ),
108 
109  # The correspondence between long-lived hadrons/ions and the simulated hadron list
110  protons = cms.untracked.vint32(2212, 3222, -101, -102, -103, -104),
111  antiprotons = cms.untracked.vint32(-2212, -3222),
112  neutrons = cms.untracked.vint32(2112, 3122, 3112, 3312, 3322, 3334, -3334),
113  antineutrons = cms.untracked.vint32(-2112, -3122, -3112, -3312, -3322),
114  K0Ls = cms.untracked.vint32(130, 310),
115  Kplusses = cms.untracked.vint32(321),
116  Kminusses = cms.untracked.vint32(-321),
117  Piplusses = cms.untracked.vint32(211),
118  Piminusses = cms.untracked.vint32(-211),
119 
120  # The smallest pion energy for which nuclear interactions are simulated
121  pionEnergy = cms.double(0.2),
122 
123  # The algorihm to detrmine the distance between the primary and the secondaries
124  # 0 = no link
125  # 1 = sin(theta12) - ~ ok at all momenta
126  # 2 = sin(theta12) * p1/p2 - bad, should not be used
127  distAlgo = cms.uint32(1),
128  distCut = cms.double(0.020), ## Default is 0.020 for algo 1;
129 
130  # The ratio between radiation lengths and interation lengths in the tracker at 15 GeV
131  lengthRatio = cms.vdouble(
132  # pi+ pi- K0L K+ K- p pbar n nbar
133  # 0.2508, 0.2549, 0.3380, 0.2879, 0.3171, 0.3282, 0.5371, 0.3859, 0.5086 # before 170 tuning
134  0.2257, 0.2294, 0.3042, 0.2591, 0.2854, 0.3101, 0.5216, 0.3668, 0.4898 # after 170 tuning
135  ),
136 
137  # and a global fudge factor for TEC Layers to make it fit
138  fudgeFactor = cms.double(1.2),
139 
140  # The file with the last nuclear interaction read in the previous run
141  # to be put in the local running directory (if desired)
142  inputFile = cms.untracked.string('NuclearInteractionInputFile.txt'),
143  )
144 )
145 
146 MaterialEffectsForMuonsBlock = cms.PSet(
147  MaterialEffectsForMuons = cms.PSet(
148 
149  use_hardcoded_geometry = cms.bool(True),
150  #print hi
151  #print use_hardcoded_geometry
152 
153  # Material Properties (Iron - this is for muons)
154  # A
155  A = cms.double(55.8455),
156  # Z
157  Z = cms.double(26.0),
158  # Density in g/cm3
159  Density = cms.double(7.87),
160  # One radiation length in cm
161  RadiationLength = cms.double(1.76),
162 
163  # GEneral switches
164  # Enable photon pair conversion
165  PairProduction = cms.bool(False),
166  # Smallest photon energy allowed for conversion
167  photonEnergy = cms.double(0.1),
168  # Enable electron Bremsstrahlung
169  Bremsstrahlung = cms.bool(False),
170  # Enable muon Bremsstrahlung
171  MuonBremsstrahlung = cms.bool(False),
172  # Smallest bremstrahlung photon energy
173  bremEnergy = cms.double(0.1),
174  # Smallest bremsstrahlung energy fraction (wrt to the electron energy)
175  bremEnergyFraction = cms.double(0.005),
176  # Enable dE/dx
177  EnergyLoss = cms.bool(True),
178  # Enable Multiple Scattering
179  MultipleScattering = cms.bool(True),
180  # Smallest pT for the Mutliple Scattering
181  pTmin = cms.double(0.3),
182  # Enable Nuclear Interactions
183  NuclearInteraction = cms.bool(False)
184 
185  )
186 )
187 
188 MaterialEffectsForMuonsInECALBlock = cms.PSet(
189  MaterialEffectsForMuonsInECAL = cms.PSet(
190 
191  use_hardcoded_geometry = cms.bool(True),
192 
193  # Material Properties (PbW04 - this is for muons)
194  # A
195  A = cms.double(55.8455),
196  # Z
197  Z = cms.double(26.0),
198  # Density in g/cm3
199  Density = cms.double(8.280),
200  # One radiation length in cm
201  RadiationLength = cms.double(0.89),
202 
203  # GEneral switches
204  # Enable photon pair conversion
205  PairProduction = cms.bool(False),
206  # Smallest photon energy allowed for conversion
207  photonEnergy = cms.double(0.1),
208  # Enable electron Bremsstrahlung
209  Bremsstrahlung = cms.bool(False),
210  # Enable muon Bremsstrahlung
211  MuonBremsstrahlung = cms.bool(False),
212  # Smallest bremstrahlung photon energy
213  bremEnergy = cms.double(0.1),
214  # Smallest bremsstrahlung energy fraction (wrt to the electron energy)
215  bremEnergyFraction = cms.double(0.005),
216  # Enable dE/dx
217  EnergyLoss = cms.bool(False),
218  # Enable Multiple Scattering
219  MultipleScattering = cms.bool(False),
220  # Smallest pT for the Mutliple Scattering
221  pTmin = cms.double(0.3),
222  # Enable Nuclear Interactions
223  NuclearInteraction = cms.bool(False)
224  )
225 )
226 
227 MaterialEffectsForMuonsInHCALBlock = cms.PSet(
228  MaterialEffectsForMuonsInHCAL = cms.PSet(
229 
230  use_hardcoded_geometry = cms.bool(True),
231 
232  # Material Properties (BRASS - this is for muons)
233  # A
234  A = cms.double(64.0),
235  # Z
236  Z = cms.double(29.0),
237  # Density in g/cm3
238  Density = cms.double(8.5),
239  # One radiation length in cm
240  RadiationLength = cms.double(1.44),
241 
242  # GEneral switches
243  # Enable photon pair conversion
244  PairProduction = cms.bool(False),
245  # Smallest photon energy allowed for conversion
246  photonEnergy = cms.double(0.1),
247  # Enable electron Bremsstrahlung
248  Bremsstrahlung = cms.bool(False),
249  # Enable muon Bremsstrahlung
250  MuonBremsstrahlung = cms.bool(False),
251  # Smallest bremstrahlung photon energy
252  bremEnergy = cms.double(0.1),
253  # Smallest bremsstrahlung energy fraction (wrt to the electron energy)
254  bremEnergyFraction = cms.double(0.005),
255  # Enable dE/dx
256  EnergyLoss = cms.bool(False),
257  # Enable Multiple Scattering
258  MultipleScattering = cms.bool(False),
259  # Smallest pT for the Mutliple Scattering
260  pTmin = cms.double(0.3),
261  # Enable Nuclear Interactions
262  NuclearInteraction = cms.bool(False)
263 
264  )
265 )
266