diff --git a/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h b/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
index 0a9999f8fe34c3a48fc59c36b313bd9e09492fe7..f657cd7259b4b2d0108d5e04c1304fa2a652f994 100644
--- a/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
+++ b/NumLib/Fem/CoordinatesMapping/NaturalCoordinatesMapping-impl.h
@@ -58,15 +58,15 @@ inline void computeMappingMatrices(
     computeMappingMatrices<T_MESH_ELEMENT, T_SHAPE_FUNC, T_SHAPE_MATRICES>
         (ele, natural_pt, ele_local_coord, shapemat, FieldType<ShapeMatrixType::DNDR>());
 
-    const std::size_t dim = T_MESH_ELEMENT::dimension;
-    const std::size_t nnodes = T_MESH_ELEMENT::n_all_nodes;
+    auto const dim = T_MESH_ELEMENT::dimension;
+    auto const nnodes = T_MESH_ELEMENT::n_all_nodes;
 
     //jacobian: J=[dx/dr dy/dr // dx/ds dy/ds]
-    for (std::size_t k=0; k<nnodes; k++) {
+    for (auto k = decltype(nnodes){0}; k<nnodes; k++) {
         const MathLib::Point3d& mapped_pt = ele_local_coord.getMappedCoordinates(k);
         // outer product of dNdr and mapped_pt for a particular node
-        for (std::size_t i_r=0; i_r<dim; i_r++) {
-            for (std::size_t j_x=0; j_x<dim; j_x++) {
+        for (auto i_r = decltype(dim){0}; i_r<dim; i_r++) {
+            for (auto j_x = decltype(dim){0}; j_x<dim; j_x++) {
                 shapemat.J(i_r,j_x) += shapemat.dNdr(i_r,k) * mapped_pt[j_x];
             }
         }
diff --git a/ProcessLib/GroundwaterFlowFEM.h b/ProcessLib/GroundwaterFlowFEM.h
index f947d288435dbf1c1dc68fadced765850faa1022..781ba423fdcd7d253d38091b558b4aafb53e02fa 100644
--- a/ProcessLib/GroundwaterFlowFEM.h
+++ b/ProcessLib/GroundwaterFlowFEM.h
@@ -49,10 +49,9 @@ class LocalAssemblerData : public LocalAssemblerDataInterface<GlobalMatrix, Glob
 {
 public:
     using ShapeFunction = ShapeFunction_;
-    using NodalMatrixType = typename ShapeMatrixPolicyType<ShapeFunction, GlobalDim>::NodalMatrixType;
-    using NodalVectorType = typename ShapeMatrixPolicyType<ShapeFunction, GlobalDim>::NodalVectorType;
-
     using ShapeMatricesType = ShapeMatrixPolicyType<ShapeFunction, GlobalDim>;
+    using NodalMatrixType = typename ShapeMatricesType::NodalMatrixType;
+    using NodalVectorType = typename ShapeMatricesType::NodalVectorType;
     using ShapeMatrices = typename ShapeMatricesType::ShapeMatrices;
 
     /// The hydraulic_conductivity factor is directly integrated into the local