92 G4int nC_PMMA = 3 + 2 * polyPMMA;
93 G4int nH_PMMA = 6 + 2 * polyPMMA;
96 G4int nC_eth = 2 * polyeth;
97 G4int nH_eth = 4 * polyeth;
100 fH =
new G4Element(
"H",
"H", z = 1.,
a = 1.01 * g / mole);
101 fC =
new G4Element(
"C",
"C", z = 6.,
a = 12.01 * g / mole);
102 fN =
new G4Element(
"N",
"N", z = 7.,
a = 14.01 * g / mole);
103 fO =
new G4Element(
"O",
"O", z = 8.,
a = 16.00 * g / mole);
108 density = 3.020 * g / cm3);
111 density = 2.7 * g / cm3);
114 density = universe_mean_density, kStateGas,
115 0.1 * kelvin, 1.e-19 * pascal);
118 fAir->AddElement(
fN, 70 * perCent);
119 fAir->AddElement(
fO, 30 * perCent);
122 fGlass->AddElement(
fC, 91.533 * perCent);
123 fGlass->AddElement(
fH, 8.467 * perCent);
130 fPMMA->AddElement(
fH, nH_PMMA);
131 fPMMA->AddElement(
fC, nC_PMMA);
144 std::vector<G4double> lxe_Energy = { 7.0 * eV, 7.07 * eV, 7.14 * eV };
146 std::vector<G4double> lxe_SCINT = { 0.1, 1.0, 0.1 };
147 std::vector<G4double> lxe_RIND = { 1.59, 1.57, 1.54 };
148 std::vector<G4double> lxe_ABSL = { 35. * cm, 35. * cm, 35. * cm };
150 fLXe_mt->AddProperty(
"SCINTILLATIONCOMPONENT1", lxe_Energy, lxe_SCINT);
151 fLXe_mt->AddProperty(
"SCINTILLATIONCOMPONENT2", lxe_Energy, lxe_SCINT);
152 fLXe_mt->AddProperty(
"RINDEX", lxe_Energy, lxe_RIND);
153 fLXe_mt->AddProperty(
"ABSLENGTH", lxe_Energy, lxe_ABSL);
154 fLXe_mt->AddConstProperty(
"SCINTILLATIONYIELD", 12000. / MeV);
155 fLXe_mt->AddConstProperty(
"RESOLUTIONSCALE", 1.0);
156 fLXe_mt->AddConstProperty(
"SCINTILLATIONTIMECONSTANT1", 20. * ns);
157 fLXe_mt->AddConstProperty(
"SCINTILLATIONTIMECONSTANT2", 45. * ns);
158 fLXe_mt->AddConstProperty(
"SCINTILLATIONYIELD1", 1.0);
159 fLXe_mt->AddConstProperty(
"SCINTILLATIONYIELD2", 0.0);
163 fLXe->GetIonisation()->SetBirksConstant(0.126 * mm / MeV);
165 std::vector<G4double> glass_AbsLength = { 420. * cm, 420. * cm, 420. * cm };
167 glass_mt->AddProperty(
"ABSLENGTH", lxe_Energy, glass_AbsLength);
168 glass_mt->AddProperty(
"RINDEX",
"Fused Silica");
169 fGlass->SetMaterialPropertiesTable(glass_mt);
172 vacuum_mt->AddProperty(
"RINDEX",
"Air");
173 fVacuum->SetMaterialPropertiesTable(vacuum_mt);
174 fAir->SetMaterialPropertiesTable(vacuum_mt);
176 std::vector<G4double> wls_Energy = { 2.00 * eV, 2.87 * eV, 2.90 * eV,
179 std::vector<G4double> rIndexPstyrene = { 1.5, 1.5, 1.5, 1.5 };
180 std::vector<G4double> absorption1 = { 2. * cm, 2. * cm, 2. * cm, 2. * cm };
181 std::vector<G4double> scintilFast = { 0.0, 0.0, 1.0, 1.0 };
183 fMPTPStyrene->AddProperty(
"RINDEX", wls_Energy, rIndexPstyrene);
184 fMPTPStyrene->AddProperty(
"ABSLENGTH", wls_Energy, absorption1);
185 fMPTPStyrene->AddProperty(
"SCINTILLATIONCOMPONENT1", wls_Energy, scintilFast);
186 fMPTPStyrene->AddConstProperty(
"SCINTILLATIONYIELD", 10. / keV);
188 fMPTPStyrene->AddConstProperty(
"SCINTILLATIONTIMECONSTANT1", 10. * ns);
192 fPstyrene->GetIonisation()->SetBirksConstant(0.126 * mm / MeV);
194 std::vector<G4double> AbsFiber = { 9.0 * m, 9.0 * m, 0.1 * mm, 0.1 * mm };
195 std::vector<G4double> EmissionFib = { 1.0, 1.0, 0.0, 0.0 };
197 fiberProperty->AddProperty(
"RINDEX",
"PMMA");
198 fiberProperty->AddProperty(
"WLSABSLENGTH", wls_Energy, AbsFiber);
199 fiberProperty->AddProperty(
"WLSCOMPONENT", wls_Energy, EmissionFib);
200 fiberProperty->AddConstProperty(
"WLSTIMECONSTANT", 0.5 * ns);
201 fPMMA->SetMaterialPropertiesTable(fiberProperty);
203 std::vector<G4double> RefractiveIndexClad1 = { 1.49, 1.49, 1.49, 1.49 };
205 clad1Property->AddProperty(
"RINDEX", wls_Energy, RefractiveIndexClad1);
206 clad1Property->AddProperty(
"ABSLENGTH", wls_Energy, AbsFiber);
207 fPethylene1->SetMaterialPropertiesTable(clad1Property);
209 std::vector<G4double> RefractiveIndexClad2 = { 1.42, 1.42, 1.42, 1.42 };
211 clad2Property->AddProperty(
"RINDEX", wls_Energy, RefractiveIndexClad2);
212 clad2Property->AddProperty(
"ABSLENGTH", wls_Energy, AbsFiber);
213 fPethylene2->SetMaterialPropertiesTable(clad2Property);
Definition of the LXeMainVolume class.