]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Rename ConstraintKinds::type to subcell 12945/head
authorPeter Munch <peterrmuench@gmail.com>
Sat, 13 Nov 2021 20:12:34 +0000 (21:12 +0100)
committerPeter Munch <peterrmuench@gmail.com>
Sat, 13 Nov 2021 20:12:34 +0000 (21:12 +0100)
include/deal.II/matrix_free/cuda_hanging_nodes_internal.h
include/deal.II/matrix_free/evaluation_kernels_hanging_nodes.h
include/deal.II/matrix_free/hanging_nodes_internal.h
tests/matrix_free/hanging_node_kernels_01.cc

index 69f57b0e30f999dcfced232cbf626b4d0b75745c..842840951808ccae3da51be10451e1854934dfe4 100644 (file)
@@ -69,8 +69,8 @@ namespace CUDAWrappers
 
       const auto this_type =
         (direction == 0) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y;
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y;
 
       const unsigned int interp_idx = (direction == 0) ? x_idx : y_idx;
 
@@ -94,15 +94,15 @@ namespace CUDAWrappers
       // fe_degree))
       const bool constrained_dof =
         ((direction == 0) &&
-         (((constraint_mask &
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y) !=
+         (((constraint_mask & dealii::internal::MatrixFreeFunctions::
+                                ConstraintKinds::subcell_y) !=
            dealii::internal::MatrixFreeFunctions::ConstraintKinds::
              unconstrained) ?
             (y_idx == 0) :
             (y_idx == fe_degree))) ||
         ((direction == 1) &&
-         (((constraint_mask &
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x) !=
+         (((constraint_mask & dealii::internal::MatrixFreeFunctions::
+                                ConstraintKinds::subcell_x) !=
            dealii::internal::MatrixFreeFunctions::ConstraintKinds::
              unconstrained) ?
             (x_idx == 0) :
@@ -176,22 +176,22 @@ namespace CUDAWrappers
 
       const auto this_type =
         (direction == 0) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x :
         (direction == 1) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y :
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z;
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z;
       const auto face1_type =
         (direction == 0) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y :
         (direction == 1) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z :
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x;
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x;
       const auto face2_type =
         (direction == 0) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z :
         (direction == 1) ?
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
-          dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y;
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x :
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y;
 
       // If computing in x-direction, need to match against face_y or
       // face_z
index 72b75809c9ecc2c0a5b5a5549dc2efbbc8483283..b181badf558118c6ab787c24670065cff680bd5c 100644 (file)
@@ -233,14 +233,16 @@ namespace internal
                       MatrixFreeFunctions::ConstraintKinds::unconstrained)
                     {
                       const bool is_subface_0 =
-                        (mask & MatrixFreeFunctions::ConstraintKinds::type_x) ==
+                        (mask &
+                         MatrixFreeFunctions::ConstraintKinds::subcell_x) ==
                         MatrixFreeFunctions::ConstraintKinds::unconstrained;
 
                       const Number *weights =
                         interpolation_matrices[is_subface_0].data();
 
-                      if (is_set(mask,
-                                 MatrixFreeFunctions::ConstraintKinds::type_y))
+                      if (is_set(
+                            mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y))
                         interpolate_2D<fe_degree, 2, transpose>(
                           given_degree,
                           v,
@@ -259,14 +261,16 @@ namespace internal
                       MatrixFreeFunctions::ConstraintKinds::unconstrained)
                     {
                       const bool is_subface_0 =
-                        (mask & MatrixFreeFunctions::ConstraintKinds::type_y) ==
+                        (mask &
+                         MatrixFreeFunctions::ConstraintKinds::subcell_y) ==
                         MatrixFreeFunctions::ConstraintKinds::unconstrained;
 
                       const Number *weights =
                         interpolation_matrices[is_subface_0].data();
 
-                      if (is_set(mask,
-                                 MatrixFreeFunctions::ConstraintKinds::type_x))
+                      if (is_set(
+                            mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x))
                         interpolate_2D<fe_degree, 0, transpose>(
                           given_degree,
                           v,
@@ -295,107 +299,126 @@ namespace internal
                   const bool is_face_0 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_x) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_x);
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_x);
                   const bool is_face_1 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_x) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_x);
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x);
                   const bool is_face_2 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_y) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_y);
                   const bool is_face_3 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_y) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y);
                   const bool is_face_4 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_z) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_face_5 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::face_z) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
                   const bool is_edge_2 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_x) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_y) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_y) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_3 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_x) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_y) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_6 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_x) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_y) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_y) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_7 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_x) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_y) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
                   const bool is_edge_0 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_y) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_1 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_y) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_4 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_y) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_z);
                   const bool is_edge_5 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_y) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_z);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
                   const bool is_edge_8 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_z) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_y);
                   const bool is_edge_9 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_z) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    is_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    is_set(mask,
+                           MatrixFreeFunctions::ConstraintKinds::subcell_y);
                   const bool is_edge_10 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_z) &&
                     is_set(mask,
-                           MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                           MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y);
                   const bool is_edge_11 =
                     is_set(mask,
                            MatrixFreeFunctions::ConstraintKinds::edge_z) &&
                     not_set(mask,
-                            MatrixFreeFunctions::ConstraintKinds::type_x) &&
-                    not_set(mask, MatrixFreeFunctions::ConstraintKinds::type_y);
+                            MatrixFreeFunctions::ConstraintKinds::subcell_x) &&
+                    not_set(mask,
+                            MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
                   // direction 0:
                   {
                     const bool is_subface_0 =
-                      (mask & MatrixFreeFunctions::ConstraintKinds::type_x) ==
+                      (mask &
+                       MatrixFreeFunctions::ConstraintKinds::subcell_x) ==
                       MatrixFreeFunctions::ConstraintKinds::unconstrained;
 
                     const Number *weights =
@@ -465,7 +488,8 @@ namespace internal
                   // direction 1:
                   {
                     const bool is_subface_0 =
-                      (mask & MatrixFreeFunctions::ConstraintKinds::type_y) ==
+                      (mask &
+                       MatrixFreeFunctions::ConstraintKinds::subcell_y) ==
                       MatrixFreeFunctions::ConstraintKinds::unconstrained;
 
                     const Number *weights =
@@ -535,7 +559,8 @@ namespace internal
                   // direction 2:
                   {
                     const bool is_subface_0 =
-                      (mask & MatrixFreeFunctions::ConstraintKinds::type_z) ==
+                      (mask &
+                       MatrixFreeFunctions::ConstraintKinds::subcell_z) ==
                       MatrixFreeFunctions::ConstraintKinds::unconstrained;
 
                     const Number *weights =
index a5e0a0b5a9d1ce93ed9969a53647fd00cddccf68..59bfd1f46457ac43e08c6d474a18af5ab0575fb4 100644 (file)
@@ -51,9 +51,9 @@ namespace internal
       unconstrained = 0,
 
       // subcell
-      type_x = 1 << 0,
-      type_y = 1 << 1,
-      type_z = 1 << 2,
+      subcell_x = 1 << 0,
+      subcell_y = 1 << 1,
+      subcell_z = 1 << 2,
 
       // face is constrained
       face_x = 1 << 3,
@@ -456,17 +456,17 @@ namespace internal
                               {
                                 mask |= ConstraintKinds::face_x;
                                 if (face == 0)
-                                  mask |= ConstraintKinds::type_x;
+                                  mask |= ConstraintKinds::subcell_x;
                                 if (subface == 0)
-                                  mask |= ConstraintKinds::type_y;
+                                  mask |= ConstraintKinds::subcell_y;
                               }
                             else
                               {
                                 mask |= ConstraintKinds::face_y;
                                 if (face == 2)
-                                  mask |= ConstraintKinds::type_y;
+                                  mask |= ConstraintKinds::subcell_y;
                                 if (subface == 0)
-                                  mask |= ConstraintKinds::type_x;
+                                  mask |= ConstraintKinds::subcell_x;
                               }
 
                             // Reorder neighbor_dofs and copy into faceth face
@@ -516,33 +516,33 @@ namespace internal
                               {
                                 mask |= ConstraintKinds::face_x;
                                 if (face == 0)
-                                  mask |= ConstraintKinds::type_x;
+                                  mask |= ConstraintKinds::subcell_x;
                                 if (subface % 2 == 0)
-                                  mask |= ConstraintKinds::type_y;
+                                  mask |= ConstraintKinds::subcell_y;
                                 if (subface / 2 == 0)
-                                  mask |= ConstraintKinds::type_z;
+                                  mask |= ConstraintKinds::subcell_z;
                               }
                             // XZ-plane
                             else if (face < 4)
                               {
                                 mask |= ConstraintKinds::face_y;
                                 if (face == 2)
-                                  mask |= ConstraintKinds::type_y;
+                                  mask |= ConstraintKinds::subcell_y;
                                 if (subface % 2 == 0)
-                                  mask |= ConstraintKinds::type_z;
+                                  mask |= ConstraintKinds::subcell_z;
                                 if (subface / 2 == 0)
-                                  mask |= ConstraintKinds::type_x;
+                                  mask |= ConstraintKinds::subcell_x;
                               }
                             // XY-plane
                             else
                               {
                                 mask |= ConstraintKinds::face_z;
                                 if (face == 4)
-                                  mask |= ConstraintKinds::type_z;
+                                  mask |= ConstraintKinds::subcell_z;
                                 if (subface % 2 == 0)
-                                  mask |= ConstraintKinds::type_x;
+                                  mask |= ConstraintKinds::subcell_x;
                                 if (subface / 2 == 0)
-                                  mask |= ConstraintKinds::type_y;
+                                  mask |= ConstraintKinds::subcell_y;
                               }
 
                             // Offset if upper/right/back face
@@ -592,52 +592,52 @@ namespace internal
                 const ConstraintKinds line_to_edge[12][4] = {
                   {ConstraintKinds::face_x | ConstraintKinds::face_z,
                    ConstraintKinds::edge_y,
-                   ConstraintKinds::type_x | ConstraintKinds::type_z,
-                   ConstraintKinds::type_y},
+                   ConstraintKinds::subcell_x | ConstraintKinds::subcell_z,
+                   ConstraintKinds::subcell_y},
                   {ConstraintKinds::face_x | ConstraintKinds::face_z,
                    ConstraintKinds::edge_y,
-                   ConstraintKinds::type_z,
-                   ConstraintKinds::type_y},
+                   ConstraintKinds::subcell_z,
+                   ConstraintKinds::subcell_y},
                   {ConstraintKinds::face_y | ConstraintKinds::face_z,
                    ConstraintKinds::edge_x,
-                   ConstraintKinds::type_y | ConstraintKinds::type_z,
-                   ConstraintKinds::type_x},
+                   ConstraintKinds::subcell_y | ConstraintKinds::subcell_z,
+                   ConstraintKinds::subcell_x},
                   {ConstraintKinds::face_y | ConstraintKinds::face_z,
                    ConstraintKinds::edge_x,
-                   ConstraintKinds::type_z,
-                   ConstraintKinds::type_x},
+                   ConstraintKinds::subcell_z,
+                   ConstraintKinds::subcell_x},
                   {ConstraintKinds::face_x | ConstraintKinds::face_z,
                    ConstraintKinds::edge_y,
-                   ConstraintKinds::type_x,
-                   ConstraintKinds::type_y},
+                   ConstraintKinds::subcell_x,
+                   ConstraintKinds::subcell_y},
                   {ConstraintKinds::face_x | ConstraintKinds::face_z,
                    ConstraintKinds::edge_y,
                    ConstraintKinds::unconstrained,
-                   ConstraintKinds::type_y},
+                   ConstraintKinds::subcell_y},
                   {ConstraintKinds::face_y | ConstraintKinds::face_z,
                    ConstraintKinds::edge_x,
-                   ConstraintKinds::type_y,
-                   ConstraintKinds::type_x},
+                   ConstraintKinds::subcell_y,
+                   ConstraintKinds::subcell_x},
                   {ConstraintKinds::face_y | ConstraintKinds::face_z,
                    ConstraintKinds::edge_x,
                    ConstraintKinds::unconstrained,
-                   ConstraintKinds::type_x},
+                   ConstraintKinds::subcell_x},
                   {ConstraintKinds::face_x | ConstraintKinds::face_y,
                    ConstraintKinds::edge_z,
-                   ConstraintKinds::type_x | ConstraintKinds::type_y,
-                   ConstraintKinds::type_z},
+                   ConstraintKinds::subcell_x | ConstraintKinds::subcell_y,
+                   ConstraintKinds::subcell_z},
                   {ConstraintKinds::face_x | ConstraintKinds::face_y,
                    ConstraintKinds::edge_z,
-                   ConstraintKinds::type_y,
-                   ConstraintKinds::type_z},
+                   ConstraintKinds::subcell_y,
+                   ConstraintKinds::subcell_z},
                   {ConstraintKinds::face_x | ConstraintKinds::face_y,
                    ConstraintKinds::edge_z,
-                   ConstraintKinds::type_x,
-                   ConstraintKinds::type_z},
+                   ConstraintKinds::subcell_x,
+                   ConstraintKinds::subcell_z},
                   {ConstraintKinds::face_x | ConstraintKinds::face_y,
                    ConstraintKinds::edge_z,
                    ConstraintKinds::unconstrained,
-                   ConstraintKinds::type_z}};
+                   ConstraintKinds::subcell_z}};
 
                 for (unsigned int local_line = 0;
                      local_line < GeometryInfo<dim>::lines_per_cell;
index 00b03382c28dddd4a9a26a80bb116fbf27131c96..3569d72c7724ca0f6bc62da934f3976428b346f5 100644 (file)
@@ -136,10 +136,11 @@ namespace dealii
                                         ConstraintKinds::unconstrained)
               continue;
 
-            const auto this_type =
-              (direction == 0) ?
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y;
+            const auto this_type = (direction == 0) ?
+                                     dealii::internal::MatrixFreeFunctions::
+                                       ConstraintKinds::subcell_x :
+                                     dealii::internal::MatrixFreeFunctions::
+                                       ConstraintKinds::subcell_y;
 
             const bool constrained_face =
               (constraint_mask[v] &
@@ -175,15 +176,15 @@ namespace dealii
                     ((direction == 0) &&
                      (((constraint_mask[v] &
                         dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                          type_y) != dealii::internal::MatrixFreeFunctions::
-                                       ConstraintKinds::unconstrained) ?
+                          subcell_y) != dealii::internal::MatrixFreeFunctions::
+                                          ConstraintKinds::unconstrained) ?
                         (y_idx == 0) :
                         (y_idx == fe_degree))) ||
                     ((direction == 1) &&
                      (((constraint_mask[v] &
                         dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                          type_x) != dealii::internal::MatrixFreeFunctions::
-                                       ConstraintKinds::unconstrained) ?
+                          subcell_x) != dealii::internal::MatrixFreeFunctions::
+                                          ConstraintKinds::unconstrained) ?
                         (x_idx == 0) :
                         (x_idx == fe_degree)));
 
@@ -272,22 +273,22 @@ namespace dealii
 
         const auto this_type =
           (direction == 0) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x :
           (direction == 1) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y :
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z;
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z;
         const auto face1_type =
           (direction == 0) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y :
           (direction == 1) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z :
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x;
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x;
         const auto face2_type =
           (direction == 0) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z :
           (direction == 1) ?
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x :
-            dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y;
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x :
+            dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y;
 
         // If computing in x-direction, need to match against
         // dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y or
@@ -521,38 +522,40 @@ main(int argc, char **argv)
         dealii::internal::MatrixFreeFunctions::ConstraintKinds::unconstrained);
       deallog << std::endl;
 
-      test<2>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_y); // face 0/0
+      test<2>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::
+            subcell_y); // face 0/0
       test<2>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
                 dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_x); // face 0/1
+                  subcell_x); // face 0/1
       test<2>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
                 dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_y); // face 1/0
+                  subcell_y); // face 1/0
       test<2>(
         degree,
         dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x); // face
                                                                          // 1/1
       deallog << std::endl;
 
-      test<2>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_x); // face 2/0
+      test<2>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::
+            subcell_x); // face 2/0
       test<2>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
                 dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_y); // face 2/1
+                  subcell_y); // face 2/1
       test<2>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
                 dealii::internal::MatrixFreeFunctions::ConstraintKinds::
-                  type_x); // face 3/0
+                  subcell_x); // face 3/0
       test<2>(
         degree,
         dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y); // face
@@ -563,138 +566,162 @@ main(int argc, char **argv)
   for (unsigned int degree = 1; degree <= 3; ++degree)
     {
       // edge 2
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
 
       // edge 3
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
 
       // edge 6
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
 
       // edge 7
       test<3>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
 
 
       // edge 0
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
       // edge 1
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
       // edge 4
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
       // edge 5
       test<3>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
 
       // edge 8
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
       // edge 9
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
       // edge 10
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
       // edge 11
       test<3>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z);
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::edge_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
 
       // face 0
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_x);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_x);
 
       // face 1
       test<3>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_x);
 
       // face 2
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_y);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_y);
 
       // face 3
       test<3>(degree,
               dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_y);
 
       // face 4
-      test<3>(degree,
-              dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_z |
-                dealii::internal::MatrixFreeFunctions::ConstraintKinds::type_z);
+      test<3>(
+        degree,
+        dealii::internal::MatrixFreeFunctions::ConstraintKinds::face_z |
+          dealii::internal::MatrixFreeFunctions::ConstraintKinds::subcell_z);
 
       // face 5
       test<3>(degree,

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.