From: agrayver Date: Wed, 13 Aug 2014 12:40:48 +0000 (+0200) Subject: Fix bug in project_boundary_values_curl_conforming related to the wrong indexing... X-Git-Tag: v8.2.0-rc1~205^2~3 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=de4628fb0cf30538ec122f289207d0acfd23489d;p=dealii.git Fix bug in project_boundary_values_curl_conforming related to the wrong indexing of high-order DoFs in internals::compute_face_projection_curl_conforming. --- diff --git a/include/deal.II/numerics/vector_tools.templates.h b/include/deal.II/numerics/vector_tools.templates.h index a8f5fe91a3..bf449c8c25 100644 --- a/include/deal.II/numerics/vector_tools.templates.h +++ b/include/deal.II/numerics/vector_tools.templates.h @@ -3218,7 +3218,7 @@ namespace VectorTools && (fe.base_element (base_indices.first).face_to_cell_index (2 * fe.degree, face) <= fe.system_to_base_index (fe.face_to_cell_index (i, face)).second) && (fe.system_to_base_index (fe.face_to_cell_index (i, face)).second - < fe.base_element (base_indices.first).face_to_cell_index (4 * fe.degree, face))) + <= fe.base_element (base_indices.first).face_to_cell_index (4 * fe.degree - 1, face))) || ((dynamic_cast*> (&fe) != 0) && (2 * fe.degree <= i) && (i < 4 * fe.degree))) tmp -= dof_values[i] * fe_values[vec].value (fe.face_to_cell_index (i, face), q_point); @@ -3328,7 +3328,9 @@ namespace VectorTools if (((dynamic_cast*> (&fe) != 0) && (fe.system_to_base_index (fe.face_to_cell_index (i, face)).first == base_indices) && (fe.system_to_base_index (fe.face_to_cell_index (i, face)).second - < fe.base_element (base_indices.first).face_to_cell_index (2 * fe.degree, face))) + <= fe.base_element (base_indices.first).face_to_cell_index (2 * fe.degree - 1, face)) + && (fe.system_to_base_index (fe.face_to_cell_index (i, face)).second + >= fe.base_element (base_indices.first).face_to_cell_index (0, face))) || ((dynamic_cast*> (&fe) != 0) && (i < 2 * fe.degree))) tmp -= dof_values[i] * fe_values[vec].value (fe.face_to_cell_index (i, face), q_point);