diff --git a/compact/definitions.xml b/compact/definitions.xml
index a4e31e2fa449bbc9e25eb281305cefcb33623f0c..9c2698447922866fb89b079984890dddc1885591 100644
--- a/compact/definitions.xml
+++ b/compact/definitions.xml
@@ -465,7 +465,7 @@
     <constant name="ce_MRICHRMin" value="15*cm"/>
     <constant name="ce_MRICHRMax" value="100*cm"/>
     <constant name="ce_MRICHLength" value="15*cm"/>
-    <constant name="ce_MRICHZMin" value="-SolenoidYokeEndcap_zmin"/>
+    <constant name="ce_MRICHZMin" value="-EcalEndcap_zmin+10.*cm"/>
 
 
 
diff --git a/src/ce_MRICH.cpp b/src/ce_MRICH.cpp
index 64b9a682be81ac03ea64b12f99bab347e69ba366..3eec523799ccdb2c0bcc496584a8bcf3265cd989 100644
--- a/src/ce_MRICH.cpp
+++ b/src/ce_MRICH.cpp
@@ -33,7 +33,7 @@ static Ref_t createDetector(Detector& desc, xml::Handle_t handle, SensitiveDetec
     auto length = dims.length();
     auto z0 = dims.z();
 
-    auto gasMat = desc.material("Air");
+    auto gasMat = desc.material("AirOptical");
 
     // detector envelope
     Tube envShape(rmin, rmax, length/2., 0., 2*M_PI);
@@ -65,7 +65,7 @@ void addModules(Volume &mother, xml::DetElement &detElem, Detector &desc, Sensit
     auto mGap = mods.attr<double>(_Unicode(gap));
 
     auto modMat = desc.material(mods.materialStr());
-    auto gasMat = desc.material("Air");
+    auto gasMat = desc.material("AirOptical");
 
     // single module
     Box mShape(mWidth/2., mWidth/2., mThick/2. - 0.1*mm);
diff --git a/src/ref_utils.h b/src/ref_utils.h
index ac14e4df2ca32b2d9009544d0cedef6deea314de..12cf9a814a64ed978f7c8371a1e3a4c8d36c7543 100644
--- a/src/ref_utils.h
+++ b/src/ref_utils.h
@@ -9,6 +9,6 @@ typedef ROOT::Math::XYPoint Point;
 
 // fill squares in a ring
 std::vector<Point> fillSquares(Point ref, double lside, double rmin, double rmax,
-                               double phmin = 0., double phmax = 2.*M_PI);
+                               double phmin = -M_PI, double phmax = M_PI);
 
 } // ref::utils