diff --git a/MagneticField/MagFieldElements/MagFieldElements/BFieldCache.icc b/MagneticField/MagFieldElements/MagFieldElements/BFieldCache.icc
index 7c4d54d9a738c8d243020b047ed3a90abdfe8a52..92c0134964d877e6f383d070fa0a633b58152c47 100644
--- a/MagneticField/MagFieldElements/MagFieldElements/BFieldCache.icc
+++ b/MagneticField/MagFieldElements/MagFieldElements/BFieldCache.icc
@@ -57,7 +57,7 @@ BFieldCache::inside(double z, double r, double phi) const
   if (phi < m_phimin) {
     phi += 2.0 * M_PI;
   }
-  return (r <= m_rmax && r >= m_rmin && z <= m_zmax && z >= m_zmin &&
+  return (z <= m_zmax && z >= m_zmin && r <= m_rmax && r >= m_rmin &&
           phi <= m_phimax && phi >= m_phimin);
 }
 
diff --git a/MagneticField/MagFieldElements/MagFieldElements/BFieldVector.h b/MagneticField/MagFieldElements/MagFieldElements/BFieldVector.h
index d689148e782bbf795c9f21489db102a65ed5c09a..8169b71ffea77c54d92c14b5487d748c40b21999 100644
--- a/MagneticField/MagFieldElements/MagFieldElements/BFieldVector.h
+++ b/MagneticField/MagFieldElements/MagFieldElements/BFieldVector.h
@@ -1,12 +1,11 @@
 /*
-  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
 */
 
 //
 // BFieldVector.h
-//
 // Magnetic field value stored in the map.
-// It may be either short (toroid) or double (solenoid).
+// We allow short (usual case)  double (special case)
 //
 // Masahiro Morii, Harvard University
 //
@@ -22,6 +21,10 @@ template<class T>
 class BFieldVector
 {
 public:
+  static_assert(
+    (std::is_same<T, short>::value || std::is_same<T, double>::value),
+    "Type for the BField Vector must be one of short or double");
+
   // Default
   BFieldVector() = default;
   BFieldVector(const BFieldVector&) = default;