162{
163
164
165
166
167
170
171 const Int_t nEntries = 32;
172 Bool_t spline = true;
173 Bool_t noSpline = false;
174
175
176
177 Double_t photonEnergy[nEntries] = {
178 2.034e-09, 2.068e-09, 2.103e-09, 2.139e-09, 2.177e-09, 2.216e-09,
179 2.256e-09, 2.298e-09, 2.341e-09, 2.386e-09, 2.433e-09, 2.481e-09,
180 2.532e-09, 2.585e-09, 2.640e-09, 2.697e-09, 2.757e-09, 2.820e-09,
181 2.885e-09, 2.954e-09, 3.026e-09, 3.102e-09, 3.181e-09, 3.265e-09,
182 3.353e-09, 3.446e-09, 3.545e-09, 3.649e-09, 3.760e-09, 3.877e-09,
183 4.002e-09, 4.136e-09};
184
185
186 Double_t refractiveIndex1[nEntries] = {
187 1.3435, 1.344, 1.3445, 1.345, 1.3455, 1.346, 1.3465, 1.347,
188 1.3475, 1.348, 1.3485, 1.3492, 1.35, 1.3505, 1.351, 1.3518,
189 1.3522, 1.3530, 1.3535, 1.354, 1.3545, 1.355, 1.3555, 1.356,
190 1.3568, 1.3572, 1.358, 1.3585, 1.359, 1.3595, 1.36, 1.3608};
191
192 Double_t absorption1[nEntries] = {
193 3.448e02, 4.082e02, 6.329e02, 9.174e02, 12.346e02, 13.889e02,
194 15.152e02, 17.241e02, 18.868e02, 20.000e02, 26.316e02, 35.714e02,
195 45.455e02, 47.619e02, 52.632e02, 52.632e02, 55.556e02, 52.632e02,
196 52.632e02, 47.619e02, 45.455e02, 41.667e02, 37.037e02, 33.333e02,
197 30.000e02, 28.500e02, 27.000e02, 24.500e02, 22.000e02, 19.500e02,
198 17.500e02, 14.500e02};
199
200
201 Double_t efficiency1[nEntries] = { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00,
202 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00,
203 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00,
204 0.00 };
205
206 gMC->SetCerenkov(
fImedWater, nEntries, photonEnergy, absorption1, efficiency1,
207 refractiveIndex1, spline, noSpline);
208
209 Double_t scintilFast[2] = { 1.00, 1.00,};
210 Double_t energyArray[2] = { 2.034e-09, 4.136e-09 };
211 Int_t lenArray = 2;
212
213 Double_t scintilSlow[nEntries] = {
214 0.01, 1.00, 2.00, 3.00, 4.00, 5.00, 6.00, 7.00, 8.00, 9.00, 8.00,
215 7.00, 6.00, 4.00, 3.00, 2.00, 1.00, 0.01, 1.00, 2.00, 3.00, 4.00,
216 5.00, 6.00, 7.00, 8.00, 9.00, 8.00, 7.00, 6.00, 5.00, 4.00};
217
218 gMC->SetMaterialProperty(
219 fImedWater,
"SCINTILLATIONCOMPONENT1", lenArray, energyArray, scintilFast,
220 false, spline);
221 gMC->SetMaterialProperty(
222 fImedWater,
"SCINTILLATIONCOMPONENT2", nEntries, photonEnergy, scintilSlow,
223 false, spline);
224
225 gMC->SetMaterialProperty(
fImedWater,
"SCINTILLATIONYIELD", 50.e03);
226 gMC->SetMaterialProperty(
fImedWater,
"RESOLUTIONSCALE", 1.0);
227 gMC->SetMaterialProperty(
fImedWater,
"SCINTILLATIONTIMECONSTANT1", 1.0e-09);
228 gMC->SetMaterialProperty(
fImedWater,
"SCINTILLATIONTIMECONSTANT2", 10.0e-09);
229 gMC->SetMaterialProperty(
fImedWater,
"SCINTILLATIONYIELD1", 0.8);
230 gMC->SetMaterialProperty(
fImedWater,
"SCINTILLATIONYIELD2", 0.2);
231
232 const Int_t nEntriesWater = 60;
233
234 Double_t energyWater[nEntriesWater] = {
235 1.56962e-09, 1.58974e-09, 1.61039e-09, 1.63157e-09, 1.65333e-09,
236 1.67567e-09, 1.69863e-09, 1.72222e-09, 1.74647e-09, 1.77142e-09,
237 1.7971e-09, 1.82352e-09, 1.85074e-09, 1.87878e-09, 1.90769e-09,
238 1.93749e-09, 1.96825e-09, 1.99999e-09, 2.03278e-09, 2.06666e-09,
239 2.10169e-09, 2.13793e-09, 2.17543e-09, 2.21428e-09, 2.25454e-09,
240 2.29629e-09, 2.33962e-09, 2.38461e-09, 2.43137e-09, 2.47999e-09,
241 2.53061e-09, 2.58333e-09, 2.63829e-09, 2.69565e-09, 2.75555e-09,
242 2.81817e-09, 2.88371e-09, 2.95237e-09, 3.02438e-09, 3.09999e-09,
243 3.17948e-09, 3.26315e-09, 3.35134e-09, 3.44444e-09, 3.54285e-09,
244 3.64705e-09, 3.75757e-09, 3.87499e-09, 3.99999e-09, 4.13332e-09,
245 4.27585e-09, 4.42856e-09, 4.59258e-09, 4.76922e-09, 4.95999e-09,
246 5.16665e-09, 5.39129e-09, 5.63635e-09, 5.90475e-09, 6.19998e-09};
247
248
249 Double_t mieWater[nEntriesWater] = {
250 167024.4e02, 158726.7e02, 150742e02, 143062.5e02, 135680.2e02,
251 128587.4e02, 121776.3e02, 115239.5e02, 108969.5e02, 102958.8e02,
252 97200.35e02, 91686.86e02, 86411.33e02, 81366.79e02, 76546.42e02,
253 71943.46e02, 67551.29e02, 63363.36e02, 59373.25e02, 55574.61e02,
254 51961.24e02, 48527.00e02, 45265.87e02, 42171.94e02, 39239.39e02,
255 36462.50e02, 33835.68e02, 31353.41e02, 29010.30e02, 26801.03e02,
256 24720.42e02, 22763.36e02, 20924.88e02, 19200.07e02, 17584.16e02,
257 16072.45e02, 14660.38e02, 13343.46e02, 12117.33e02, 10977.70e02,
258 9920.416e02, 8941.407e02, 8036.711e02, 7202.470e02, 6434.927e02,
259 5730.429e02, 5085.425e02, 4496.467e02, 3960.210e02, 3473.413e02,
260 3032.937e02, 2635.746e02, 2278.907e02, 1959.588e02, 1675.064e02,
261 1422.710e02, 1200.004e02, 1004.528e02, 833.9666e02, 686.1063e02};
262
263
264 Double_t mieWaterConst[3] = { 0.99, 0.99, 0.8 };
265
266 gMC->SetMaterialProperty(
267 fImedWater,
"MIEHG", nEntriesWater, energyWater, mieWater,
false,
true);
268 gMC->SetMaterialProperty(
fImedWater,
"MIEHG_FORWARD", mieWaterConst[0]);
269 gMC->SetMaterialProperty(
fImedWater,
"MIEHG_BACKWARD", mieWaterConst[1]);
270 gMC->SetMaterialProperty(
fImedWater,
"MIEHG_FORWARD_RATIO", mieWaterConst[2]);
271
272
273 gMC->SetMaterialProperty(
275
276
277
278 Double_t refractiveIndex2[nEntries] = {
279 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
280 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
281 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
282 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
283 1.0, 1.0, 1.0, 1.0};
284
285 gMC->SetMaterialProperty(
286 fImedAir,
"RINDEX", nEntries, photonEnergy, refractiveIndex2);
287
288
289
290
291
292 gMC->DefineOpSurface(
293 "WaterSurface", kDAVIS, kDielectric_LUTDAVIS, kRough_LUT, 1.0);
294
295
296 gMC->SetBorderSurface("WaterSurface", "TANK", 1, "EXPH", 1, "WaterSurface");
297
298
299
300
301 gMC->DefineOpSurface(
302 "AirSurface", kGlisur, kDielectric_dielectric, kPolished, 1.0);
303 gMC->SetSkinSurface("AirSurface", "BUBL", "AirSurface");
304
305
306
307
308 const Int_t num = 2;
309 Double_t ephoton[num] = { 2.034e-09, 4.136e-09 };
310
311 Double_t reflectivity[num] = { 0.3, 0.5 };
312 Double_t efficiency[num] = { 0.8, 1.0 };
313 gMC->SetMaterialProperty(
314 "AirSurface", "REFLECTIVITY", num, ephoton, reflectivity);
315 gMC->SetMaterialProperty(
316 "AirSurface", "EFFICIENCY", num, ephoton, efficiency);
317}