From: Marc Fehling Date: Wed, 5 Apr 2023 22:31:49 +0000 (-0600) Subject: Fix interface mismatch in ScratchData in hp mode. X-Git-Tag: v9.5.0-rc1~321^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F15105%2Fhead;p=dealii.git Fix interface mismatch in ScratchData in hp mode. --- diff --git a/source/meshworker/scratch_data.cc b/source/meshworker/scratch_data.cc index fedca84bc4..8bb1d6b512 100644 --- a/source/meshworker/scratch_data.cc +++ b/source/meshworker/scratch_data.cc @@ -317,9 +317,15 @@ namespace MeshWorker // then we defer to the dominance of one FE over another. This should // ensure that the optimal integration order and mapping order are // selected for this situation. - const unsigned int dominated_fe_index = - fe_collection->find_dominated_fe( - {cell->active_fe_index(), neighbor_cell->active_fe_index()}); + unsigned int dominated_fe_index = fe_collection->find_dominated_fe( + {cell->active_fe_index(), neighbor_cell->active_fe_index()}); + + // TODO: find_dominated_fe returns invalid_fe_index when no dominated FE + // has been found. We want to pass this value to FEFaceValues, but it + // expects an invalid_unsigned_int in this case. We need to match the + // interfaces in the future. + if (dominated_fe_index == numbers::invalid_fe_index) + dominated_fe_index = numbers::invalid_unsigned_int; hp_fe_face_values->reinit(cell, face_no,