diff --git a/compact/mrich.xml b/compact/mrich.xml index cfccfcc5dd3d7a3c2ddda34459cf7fb117300025..91fce35e8c286287a6b1851ac0108e9744c72c9e 100644 --- a/compact/mrich.xml +++ b/compact/mrich.xml @@ -151,6 +151,7 @@ <!--position x="782.7750000006" y="316.0250000001"/--> <!--position x="782.7750000006" y="453.3750000002"/--> </positions> + <layer thickness="MRICHCarbonFrame_thickness" material="CarbonFiber"/> </detector> </detectors> diff --git a/src/MRich_geo.cpp b/src/MRich_geo.cpp index 9eb0ff27dbb3559b0ec0d3b768f2392fc3ae910d..e00c2ece8e62de4df045b0b02b17c75e72ad4ed3 100644 --- a/src/MRich_geo.cpp +++ b/src/MRich_geo.cpp @@ -355,6 +355,14 @@ static Ref_t createDetector(Detector& description, xml::Handle_t e, SensitiveDet } } + // place frame + xml_comp_t x_layer = x_det.child(_Unicode(layer)); + double layer_thickness = x_layer.thickness(); + Material layer_mat = description.material(x_layer.materialStr()); + Tube frameShape(rmin, rmax, layer_thickness / 2., 0., 2 * M_PI); + Volume frameVol("MRICH_Frame", frameShape, layer_mat); + pv = envVol.placeVolume(frameVol, Position(0, 0, (length - layer_thickness) / 2.0)); + // place envelope Volume motherVol = description.pickMotherVolume(sdet); if (reflect) {