From: wolf Date: Tue, 1 Oct 2002 15:54:08 +0000 (+0000) Subject: Make extract_boundary_dofs work with non-primitive elements. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3f6c0a08e0544402ce2b7214d4a3d58f77ffc05;p=dealii-svn.git Make extract_boundary_dofs work with non-primitive elements. git-svn-id: https://svn.dealii.org/trunk@6572 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/source/dofs/dof_tools.cc b/deal.II/deal.II/source/dofs/dof_tools.cc index cea40f5b4a..52ae19eae4 100644 --- a/deal.II/deal.II/source/dofs/dof_tools.cc +++ b/deal.II/deal.II/source/dofs/dof_tools.cc @@ -1124,6 +1124,13 @@ DoFTools::extract_boundary_dofs (const DoFHandler &dof_handler, // indicators or whether we can // accept all const bool check_boundary_indicator = (boundary_indicators.size() != 0); + + // also see whether we have to + // check whether a certain vector + // component is selected, or all + const bool check_vector_component + = (component_select != std::vector(component_select.size(), + true)); // clear and reset array by default // values @@ -1154,9 +1161,13 @@ DoFTools::extract_boundary_dofs (const DoFHandler &dof_handler, != boundary_indicators.end())) { cell->face(face)->get_dof_indices (face_dof_indices); + for (unsigned int i=0; i