From c48b05c9c8b50dac0d0391214713ae307280bd84 Mon Sep 17 00:00:00 2001 From: Martin Kronbichler Date: Fri, 3 Sep 2021 19:46:11 +0200 Subject: [PATCH] FEFaceEvaluation: Do not run into reduced reads with Hessians --- include/deal.II/matrix_free/evaluation_kernels.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/include/deal.II/matrix_free/evaluation_kernels.h b/include/deal.II/matrix_free/evaluation_kernels.h index d4dd77eafa..8ca4b63eb9 100644 --- a/include/deal.II/matrix_free/evaluation_kernels.h +++ b/include/deal.II/matrix_free/evaluation_kernels.h @@ -3499,12 +3499,13 @@ namespace internal // to use the functions for at least linear functions for values on // the faces and quadratic functions for gradients on the faces, so // include the switch here - if ((do_gradients == false && - data.data.front().nodal_at_cell_boundaries == true && - fe_degree > 0) || - (data.element_type == - MatrixFreeFunctions::tensor_symmetric_hermite && - fe_degree > 1)) + if (((do_gradients == false && + data.data.front().nodal_at_cell_boundaries == true && + fe_degree > 0) || + (data.element_type == + MatrixFreeFunctions::tensor_symmetric_hermite && + fe_degree > 1)) && + do_hessians == false) { // case 1: contiguous and interleaved indices if (n_face_orientations == 1 && @@ -3792,8 +3793,7 @@ namespace internal else if ((n_face_orientations > 1 || dof_info.index_storage_variants[dof_access_index][cell] == MatrixFreeFunctions::DoFInfo::IndexStorageVariants:: - contiguous) && - !do_hessians) + contiguous)) { const unsigned int *indices = &dof_info.dof_indices_contiguous[dof_access_index] -- 2.39.5