]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Add a few assertions.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 4 Jan 2010 16:18:06 +0000 (16:18 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 4 Jan 2010 16:18:06 +0000 (16:18 +0000)
git-svn-id: https://svn.dealii.org/trunk@20281 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/source/multigrid/mg_dof_tools.cc

index 7263edb93879845f807068738ea06246cd646974..5698265a99b7d2f32b397fed37130e265df87947 100644 (file)
@@ -1526,6 +1526,30 @@ extract_inner_interface_dofs (const MGDoFHandler<dim,spacedim> &mg_dof_handler,
                              std::vector<std::vector<bool> >  &interface_dofs,
                              std::vector<std::vector<bool> >  &boundary_interface_dofs)
 {
+  Assert (interface_dofs.size() == mg_dof_handler.get_tria().n_levels(),
+         ExcDimensionMismatch (interface_dofs.size(),
+                               mg_dof_handler.get_tria().n_levels()));
+  Assert (boundary_interface_dofs.size() == mg_dof_handler.get_tria().n_levels(),
+         ExcDimensionMismatch (boundary_interface_dofs.size(),
+                               mg_dof_handler.get_tria().n_levels()));
+
+  for (unsigned int l=0; l<mg_dof_handler.get_tria().n_levels(); ++l)
+    {
+      Assert (interface_dofs[l].size() == mg_dof_handler.n_dofs(l),
+             ExcDimensionMismatch (interface_dofs[l].size(),
+                                   mg_dof_handler.n_dofs(l)));
+      Assert (boundary_interface_dofs[l].size() == mg_dof_handler.n_dofs(l),
+             ExcDimensionMismatch (boundary_interface_dofs[l].size(),
+                                   mg_dof_handler.n_dofs(l)));      
+
+      std::fill (interface_dofs[l].begin(),
+                interface_dofs[l].end(),
+                false);
+      std::fill (boundary_interface_dofs[l].begin(),
+                boundary_interface_dofs[l].end(),
+                false);
+    }
+  
   const FiniteElement<dim,spacedim> &fe = mg_dof_handler.get_fe();
   
   const unsigned int   dofs_per_cell   = fe.dofs_per_cell;

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.