Commit bca4580b authored by Alexander Kiselev's avatar Alexander Kiselev
Browse files

Fixed sensor optical surface issue with ERICH

parent a68cd809
......@@ -40,7 +40,7 @@
name="ERICH"
type="athena_ERICH"
readout="ERICHHits"
gas="AirOptical"
gas="C4F10_ERICH"
material="Aluminum"
vis_vessel="DRICH_vessel_vis"
vis_gas="DRICH_gas_vis"
......@@ -98,7 +98,7 @@
thickness="ERICH_aerogel_thickness"
/>
<filter
material="AirOptical"
material="Acrylic_DRICH"
vis="DRICH_filter_vis"
thickness="0.3*mm"
/>
......@@ -129,8 +129,8 @@
sensor placement algorithm will try to place as many as it can in the specified region
</documentation>
<module
material="Silicon"
surface="SensorSurface_DRICH"
material="AirOptical"
surface="SensorSurface_ERICH"
vis="ERICH_sensor_vis"
side="ERICH_sensor_active_size"
thickness="ERICH_sensor_thickness"
......
......@@ -1097,6 +1097,13 @@
7*eV 1.92
"/>
</opticalsurface>
<opticalsurface name="SensorSurface_ERICH" model="glisur" finish="polished" type="dielectric_dielectric">
<property name="EFFICIENCY" coldim="2" values="
1*eV 1
4*eV 1
7*eV 1
"/>
</opticalsurface>
<!-- END dRICh surface definitions -->
</surfaces>
......
......@@ -252,7 +252,6 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec
}
// filter placement and surface properties
#if 1//_OFF_
if (!debug_optics) {
auto filterPV = gasvolVol.placeVolume(
filterVol,
......@@ -272,7 +271,6 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec
geometry->AddFlatRadiator(detector, "Filter", 0, (G4LogicalVolume*)(0x2), 0, surface, filterThickness/mm);
}
}
#endif
// BUILD SENSORS ///////////////////////
......@@ -393,10 +391,11 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec
//@@@ Write the geometry out as a custom TObject class instance;
{
// FIXME: import from the geometry database; FIXME: crappy style in general;
// in general these values can (and should) be tweaked in the juggler .py options file;
const char *name[] = {"GasVolume", "Aerogel", "Filter"};
//double n[] = { 1.0013, 1.0200, 1.5017};
//double n[] = { 1.0013, 1.0200};//, 1.0000};
double n[] = { 1.0000, 1.0195, 1.0000};
double n[] = { 1.0013, 1.0190, 1.5017};
for(unsigned ir=0; ir<sizeof(n)/sizeof(n[0]); ir++) {
auto radiator = detector->GetRadiator(name[ir]);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment