36 WLSMaterials::WLSMaterials()
72 o <<
"Material " << material <<
" not found!";
80 void WLSMaterials::CreateMaterials()
85 std::vector<G4int> natoms;
86 std::vector<G4double> fractionMass;
87 std::vector<G4String> elements;
108 elements.push_back(
"C"); natoms.push_back(5);
109 elements.push_back(
"H"); natoms.push_back(8);
110 elements.push_back(
"O"); natoms.push_back(2);
112 density = 1.190*
g/
cm3;
115 ConstructNewMaterial(
"PMMA", elements, natoms, density);
124 elements.push_back(
"C"); natoms.push_back(2);
125 elements.push_back(
"H"); natoms.push_back(4);
127 density = 1.200*
g/
cm3;
129 Pethylene = nistMan->
130 ConstructNewMaterial(
"Pethylene", elements, natoms, density);
139 elements.push_back(
"C"); natoms.push_back(2);
140 elements.push_back(
"H"); natoms.push_back(4);
142 density = 1.400*
g/
cm3;
144 FPethylene = nistMan->
145 ConstructNewMaterial(
"FPethylene", elements, natoms, density);
154 elements.push_back(
"C"); natoms.push_back(8);
155 elements.push_back(
"H"); natoms.push_back(8);
157 density = 1.050*
g/
cm3;
159 Polystyrene = nistMan->
160 ConstructNewMaterial(
"Polystyrene", elements, natoms, density);
169 elements.push_back(
"C"); natoms.push_back(2);
170 elements.push_back(
"H"); natoms.push_back(6);
172 density = 1.060*
g/
cm3;
175 ConstructNewMaterial(
"Silicone", elements, natoms, density);
190 elements.push_back(
"Ti"); natoms.push_back(1);
191 elements.push_back(
"O"); natoms.push_back(2);
193 density = 4.26*
g/
cm3;
196 ConstructNewMaterial(
"TiO2", elements, natoms, density);
205 density = 1.52*
g/
cm3;
208 new G4Material(
"Coating", density, ncomponents=2);
217 const G4int nEntries = 50;
235 G4double RefractiveIndex[nEntries] =
236 { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00,
237 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00,
238 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00,
239 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00,
240 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00};
243 MPT->
AddProperty(
"RINDEX", PhotonEnergy, RefractiveIndex, nEntries);
251 G4double RefractiveIndexWLSfiber[nEntries] =
252 { 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60,
253 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60,
254 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60,
255 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60,
256 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60};
259 {5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,
260 5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,
261 5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,5.40*
m,1.10*
m,
262 1.10*
m,1.10*
m,1.10*
m,1.10*
m,1.10*
m,1.10*
m, 1.*
mm, 1.*
mm, 1.*
mm, 1.*
mm,
266 {0.05, 0.10, 0.30, 0.50, 0.75, 1.00, 1.50, 1.85, 2.30, 2.75,
267 3.25, 3.80, 4.50, 5.20, 6.00, 7.00, 8.50, 9.50, 11.1, 12.4,
268 12.9, 13.0, 12.8, 12.3, 11.1, 11.0, 12.0, 11.0, 17.0, 16.9,
269 15.0, 9.00, 2.50, 1.00, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00,
270 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00};
275 AddProperty(
"RINDEX",PhotonEnergy,RefractiveIndexWLSfiber,nEntries);
277 MPTWLSfiber->
AddProperty(
"WLSABSLENGTH",PhotonEnergy,AbsWLSfiber,nEntries);
278 MPTWLSfiber->
AddProperty(
"WLSCOMPONENT",PhotonEnergy,EmissionFib,nEntries);
287 G4double RefractiveIndexClad1[nEntries] =
288 { 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49,
289 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49,
290 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49,
291 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49,
292 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49};
295 {20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,
296 20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,
297 20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,
298 20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,
299 20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m,20.0*
m};
303 MPTClad1->
AddProperty(
"RINDEX",PhotonEnergy,RefractiveIndexClad1,nEntries);
304 MPTClad1->
AddProperty(
"ABSLENGTH",PhotonEnergy,AbsClad,nEntries);
312 G4double RefractiveIndexClad2[nEntries] =
313 { 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42,
314 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42,
315 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42,
316 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42,
317 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42};
321 MPTClad2->
AddProperty(
"RINDEX",PhotonEnergy,RefractiveIndexClad2,nEntries);
322 MPTClad2->
AddProperty(
"ABSLENGTH",PhotonEnergy,AbsClad,nEntries);
330 G4double RefractiveIndexSilicone[nEntries] =
331 { 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46,
332 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46,
333 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46,
334 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46,
335 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46};
340 AddProperty(
"RINDEX",PhotonEnergy,RefractiveIndexSilicone,nEntries);
341 MPTSilicone->
AddProperty(
"ABSLENGTH",PhotonEnergy,AbsClad,nEntries);
349 G4double RefractiveIndexPS[nEntries] =
350 { 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50,
351 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50,
352 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50,
353 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50,
354 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50};
357 {2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,
358 2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,
359 2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,
360 2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,2.*
cm,
364 {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
365 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
366 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
367 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
368 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0};
372 MPTPolystyrene->
AddProperty(
"RINDEX",PhotonEnergy,RefractiveIndexPS,nEntries);
373 MPTPolystyrene->
AddProperty(
"ABSLENGTH",PhotonEnergy,AbsPS,nEntries);
375 AddProperty(
"FASTCOMPONENT",PhotonEnergy, ScintilFast,nEntries);