diff --git a/ProcessLib/Utils/CreateLocalAssemblers.h b/ProcessLib/Utils/CreateLocalAssemblers.h
index df4798282cb3fdd7b483a9b64230e6515170fc18..203564db430a9414a7c237920c84aa4e473d17de 100644
--- a/ProcessLib/Utils/CreateLocalAssemblers.h
+++ b/ProcessLib/Utils/CreateLocalAssemblers.h
@@ -21,8 +21,6 @@
 namespace ProcessLib
 {
 
-namespace detail
-{
 template <unsigned GlobalDim, template <typename, typename, unsigned>
                               class LocalAssemblerImplementation,
           typename LocalAssemblerInterface, typename... ExtraCtorArgs>
@@ -33,6 +31,9 @@ void createLocalAssemblers(
     std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
     ExtraCtorArgs&&... extra_ctor_args)
 {
+    static_assert(
+        GlobalDim == 1 || GlobalDim == 2 || GlobalDim == 3,
+        "Meshes with dimension greater than three are not supported.");
     // Shape matrices initializer
     using LocalDataInitializer =
         LocalDataInitializer<LocalAssemblerInterface,
@@ -51,8 +52,6 @@ void createLocalAssemblers(
         std::forward<ExtraCtorArgs>(extra_ctor_args)...);
 }
 
-}  // namespace detail
-
 /*! Creates local assemblers for each element of the given \c mesh.
  *
  * \tparam LocalAssemblerImplementation the individual local assembler type
@@ -80,17 +79,17 @@ void createLocalAssemblers(
     switch (dimension)
     {
         case 1:
-            detail::createLocalAssemblers<1, LocalAssemblerImplementation>(
+            createLocalAssemblers<1, LocalAssemblerImplementation>(
                 dof_table, shapefunction_order, mesh_elements, local_assemblers,
                 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
             break;
         case 2:
-            detail::createLocalAssemblers<2, LocalAssemblerImplementation>(
+            createLocalAssemblers<2, LocalAssemblerImplementation>(
                 dof_table, shapefunction_order, mesh_elements, local_assemblers,
                 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
             break;
         case 3:
-            detail::createLocalAssemblers<3, LocalAssemblerImplementation>(
+            createLocalAssemblers<3, LocalAssemblerImplementation>(
                 dof_table, shapefunction_order, mesh_elements, local_assemblers,
                 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
             break;