diff --git a/compact/LGC.xml b/compact/LGC.xml index 3e237649bad19606265a8cc29d871dd03c7b7f29..d020b1a5acb034f68a3a574c24e0f953d42c5811 100644 --- a/compact/LGC.xml +++ b/compact/LGC.xml @@ -3,7 +3,7 @@ <readouts> <readout name="LightGasCherenkovHits"> <segmentation type="CartesianGridXY" grid_size_x="3*mm" grid_size_y="3*mm" /> - <id>system:6,sector:11,mirror:4,module:10,x:32:-16,y:-16</id> + <id>system:6,sector:12,mirror:4,module:10,x:32:-16,y:-16</id> </readout> </readouts> diff --git a/solid.xml b/solid.xml index 6fbf19b2de85ff6c7e994f5fe8d4ca0cc7f1e31b..2745de418b33de2347ca0be0d6999ad668b53179 100644 --- a/solid.xml +++ b/solid.xml @@ -60,6 +60,11 @@ <surfaces> <comment> For the values of "finish", model and type, see TGeoOpticalSurface.h ! </comment> + <opticalsurface name="MirrorOpticalSurface" finish="polished" model="glisur" type="dielectric_metal" value="0"> + <property name="REFLECTIVITY" ref="REFLECTIVITY_mirror"/> + <property name="RINDEX" coldim="2" values="1.034*eV 1.5 4.136*eV 1.5"/> + <!--<property name="EFFICIENCY" ref="EFFICIENCY0x8b77240"/>--> + </opticalsurface> <opticalsurface name="PMTOpticalSurface" finish="polished" model="glisur" type="dielectric_dielectric" value="0"> <property name="RINDEX" coldim="2" values="1.034*eV 1.5 4.136*eV 1.5"/> <!--<property name="EFFICIENCY" ref="EFFICIENCY0x8b77240"/>--> @@ -72,7 +77,7 @@ </surfaces> - <include ref="compact/fields.xml"/> + <!--<include ref="compact/fields.xml"/>--> <detectors> <!--<include ref="compact/LAEC.xml"/> diff --git a/src/GasCherenkov_geo.cpp b/src/GasCherenkov_geo.cpp index de9ba9bc4c1af47505308f6c0c12eb64542bb7cc..894947aa9a5357190acf3c92d534dfa3923ed917 100644 --- a/src/GasCherenkov_geo.cpp +++ b/src/GasCherenkov_geo.cpp @@ -98,8 +98,8 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec Volume v_mir("vol_mirror_" + std::to_string(i), IntersectionSolid(mir_cutout, mir_shell, mir_trans), mmat); auto mir_trans2 = Transform3D(Position(mloc.x(), mloc.y(), mloc.z()))*RotationZYX(mrot.z(), mrot.y(), mrot.x()); PlacedVolume pv_mir = v_sector.placeVolume(v_mir, mir_trans2); - DetElement de_mir(det, "de_mirror" + std::to_string(i) + "_shape", 1); - pv_mir.addPhysVolID("mirror", 1); + DetElement de_mir(det, "de_mirror" + std::to_string(i), i); + pv_mir.addPhysVolID("mirror", i); de_mir.setPlacement(pv_mir); sens.setType("photoncounter"); v_mir.setSensitiveDetector(sens); @@ -107,13 +107,14 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec // optical surface SkinSurface mirrorBorder_Surf(desc, de_mir, "LGCmirror", mirrorSurf, v_mir); mirrorBorder_Surf.isValid(); + i++; } // sectors double sector_angle = 2.*M_PI / nsec; for (int isec = 1; isec <= nsec; isec++) { auto pv = v_tank.placeVolume(v_sector, Transform3D(RotationZ((isec - 1) * sector_angle))); - pv.addPhysVolID("sector" + std::to_string(isec), isec); + pv.addPhysVolID("sector", isec); auto amod = (isec == 1 ? de_sector : de_sector.clone("de_sector" + std::to_string(isec), isec)); amod.setPlacement(pv); det.add(amod);