diff --git a/corsika/framework/units/quantity.hpp b/corsika/framework/units/quantity.hpp
index 3e897cfc80151beebdd2fb700af35fd27ae94e47..5430fa398b9f7caae3182dce488ab8ea3ced9aaf 100644
--- a/corsika/framework/units/quantity.hpp
+++ b/corsika/framework/units/quantity.hpp
@@ -676,7 +676,7 @@ namespace phys {
       static_assert(detail::root<D, 2, X>::all_even_multiples,
                     "root result dimensions must be integral");
 
-      return detail::Root<D, 2, X>(std::pow(x.m_value, X(1.0) / 2));
+      return detail::Root<D, 2, X>(std::sqrt(x.m_value));
     }
 
     // Comparison operators