From: bangerth Date: Sat, 10 Aug 2013 21:27:59 +0000 (+0000) Subject: Leave a couple of TODOs. There are ways to make the current code simpler, but most... X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cc45b5ff0b4fc8d2341c1502946693c46d356443;p=dealii-svn.git Leave a couple of TODOs. There are ways to make the current code simpler, but most of what needs to work works now, so I will leave it at this for the moment and we will see if anyone runs into the assertions that remain for now. git-svn-id: https://svn.dealii.org/trunk@30282 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/source/fe/fe.cc b/deal.II/source/fe/fe.cc index 8e48a01f87..501e7e0d81 100644 --- a/deal.II/source/fe/fe.cc +++ b/deal.II/source/fe/fe.cc @@ -558,6 +558,15 @@ face_to_cell_index (const unsigned int face_index, Assert (face < GeometryInfo::faces_per_cell, ExcIndexRange(face, 0, GeometryInfo::faces_per_cell)); +//TODO: we could presumably solve the 3d case below using the +// adjust_quad_dof_index_for_face_orientation_table field. for the +// 2d case, we can't use adjust_line_dof_index_for_line_orientation_table +// since that array is empty (presumably because we thought that +// there are no flipped edges in 2d, but these can happen in +// DoFTools::make_periodicity_constraints, for example). so we +// would need to either fill this field, or rely on derived classes +// implementing this function, as we currently do + // see the function's documentation for an explanation of this // assertion -- in essence, derived classes have to implement // an overloaded version of this function if we are to use any diff --git a/deal.II/source/fe/fe_q_base.cc b/deal.II/source/fe/fe_q_base.cc index 7e54963284..a43e3be528 100644 --- a/deal.II/source/fe/fe_q_base.cc +++ b/deal.II/source/fe/fe_q_base.cc @@ -1000,6 +1000,15 @@ face_to_cell_index (const unsigned int face_index, Assert (face < GeometryInfo::faces_per_cell, ExcIndexRange(face, 0, GeometryInfo::faces_per_cell)); +//TODO: we could presumably solve the 3d case below using the +// adjust_quad_dof_index_for_face_orientation_table field. for the +// 2d case, we can't use adjust_line_dof_index_for_line_orientation_table +// since that array is empty (presumably because we thought that +// there are no flipped edges in 2d, but these can happen in +// DoFTools::make_periodicity_constraints, for example). so we +// would need to either fill this field, or rely on derived classes +// implementing this function, as we currently do + // we need to distinguish between DoFs on vertices, lines and in 3d quads. // do so in a sequence of if-else statements if (face_index < this->first_face_line_index)