]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Also accept update_piola
authorNiklas Wik <niiklaswiik@gmail.com>
Fri, 17 Jun 2022 12:25:32 +0000 (14:25 +0200)
committerNiklas Wik <niiklaswiik@gmail.com>
Fri, 17 Jun 2022 12:38:48 +0000 (14:38 +0200)
include/deal.II/matrix_free/mapping_info.templates.h
include/deal.II/matrix_free/mapping_info_storage.templates.h
tests/matrix_free/matrix_vector_rt_common.h
tests/matrix_free/matrix_vector_rt_face_common.h

index e514424152ff7d95908321ac58ed7bd95b994846..c63f563e41ca2ec2b6672d32194fc22273b7e9c1 100644 (file)
@@ -97,7 +97,7 @@ namespace internal
            (update_jacobian_grads | update_hessians)) != 0u ||
           (piola_transform &&
            ((update_flags_inner_faces | update_flags_boundary_faces) &
-            update_gradients) != 0u)) ?
+            (update_gradients | update_contravariant_transformation)) != 0u)) ?
            update_jacobian_grads :
            update_default) |
         update_normal_vectors | update_JxW_values | update_jacobians;
index 62aa471fb8cce3dcbd98ac5cbb4eeb51cc7cb63f..e34d09d4e48e314988fc50841051544d9e939bc0 100644 (file)
@@ -137,7 +137,9 @@ namespace internal
       // inverse Jacobians, which is what we need)
       if ((update_flags & update_hessians) != 0u ||
           (update_flags & update_jacobian_grads) != 0u ||
-          (piola_transform && (update_flags & update_gradients) != 0u))
+          (piola_transform &&
+           ((update_flags &
+             (update_gradients | update_contravariant_transformation)) != 0u)))
         new_flags |= update_jacobian_grads;
 
       if ((update_flags & update_quadrature_points) != 0u)
index 40d7022da12aae7cfe8d37562057b9377f0c2742..64798807aecf1a1858ab1fd2c50f3bfcb26473c4 100644 (file)
@@ -176,7 +176,7 @@ do_test(const DoFHandler<dim> &          dof,
     const MappingQ<dim>                              mapping(fe_degree + 2);
     typename MatrixFree<dim, Number>::AdditionalData data;
     data.tasks_parallel_scheme = MatrixFree<dim, Number>::AdditionalData::none;
-    data.mapping_update_flags  = update_gradients | update_hessians;
+    data.mapping_update_flags  = update_gradients;
     mf_data.reinit(mapping, dof, constraints, quad, data);
   }
 
index 39a3ffa46d4b7a8d710f0605634ab46cc0c4854b..8a75ea7415ec82f5a792ca5a39e1472fa371b2bc 100644 (file)
@@ -234,12 +234,8 @@ do_test(const DoFHandler<dim> &          dof,
     const QGaussLobatto<1>                           quad(n_q_points);
     typename MatrixFree<dim, Number>::AdditionalData data;
     data.tasks_parallel_scheme = MatrixFree<dim, Number>::AdditionalData::none;
-    data.mapping_update_flags =
-      (update_gradients | update_JxW_values | update_hessians);
-    data.mapping_update_flags_inner_faces =
-      (update_gradients | update_JxW_values | update_hessians);
-    data.mapping_update_flags_boundary_faces =
-      (update_gradients | update_JxW_values | update_hessians);
+    data.mapping_update_flags  = update_piola;
+    data.mapping_update_flags_inner_faces = update_contravariant_transformation;
     mf_data.reinit(mapping, dof, constraints, quad, data);
   }
 

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.