]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Fix DataAccessOnFaces::values for meshes containing non-hypercube cells 11814/head
authorPeter Munch <peterrmuench@gmail.com>
Fri, 26 Feb 2021 12:35:22 +0000 (13:35 +0100)
committerPeter Munch <peterrmuench@gmail.com>
Fri, 26 Feb 2021 12:35:22 +0000 (13:35 +0100)
include/deal.II/matrix_free/dof_info.templates.h

index 59274ade9d7f8be62cc1f4282eea5d29c79c16c4..4dfee437bd523ede376ee5f951c51bde6be50ac3 100644 (file)
@@ -1310,13 +1310,17 @@ namespace internal
           const std::function<void(
             const std::function<void(
               const unsigned int, const unsigned int, const bool)> &)> &loop) {
-          bool all_nodal = true;
+          bool all_nodal_and_tensorial = true;
           for (unsigned int c = 0; c < n_base_elements; ++c)
-            if (!shape_info(global_base_element_offset + c, 0)
-                   .data.front()
-                   .nodal_at_cell_boundaries)
-              all_nodal = false;
-          if (all_nodal == false)
+            {
+              const auto &si =
+                shape_info(global_base_element_offset + c, 0).data.front();
+              if (!si.nodal_at_cell_boundaries ||
+                  (si.element_type ==
+                   internal::MatrixFreeFunctions::ElementType::tensor_none))
+                all_nodal_and_tensorial = false;
+            }
+          if (all_nodal_and_tensorial == false)
             vector_partitioner_values = vector_partitioner;
           else
             {

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.