]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Improve an error message about a case that can happen but is not implemented.
authorWolfgang Bangerth <bangerth@math.tamu.edu>
Sun, 22 Mar 2015 10:38:03 +0000 (05:38 -0500)
committerWolfgang Bangerth <bangerth@math.tamu.edu>
Sun, 22 Mar 2015 10:38:03 +0000 (05:38 -0500)
source/grid/tria.cc

index a6f115f7a0bb93a30cf6515aebd2efdb7659fb8d..0bbb1cc664915575259609e679163ebe9b78666a 100644 (file)
@@ -1540,10 +1540,32 @@ namespace internal
               case 2:
                 break;
               default:
-                // a node must have one
-                // or two adjacent
-                // lines
-                AssertThrow (false, ExcInternalError());
+                // in 1d, a node must have one or two adjacent lines
+                if (spacedim==1)
+                  AssertThrow (false, ExcInternalError())
+                else
+                  AssertThrow (false,
+                               ExcMessage ("You have a vertex in your triangulation "
+                                           "at which more than two cells come together. "
+                                           "(For one dimensional triangulation, cells are "
+                                           "line segments.)"
+                                           "\n\n"
+                                           "This is not currently supported because the "
+                                           "Triangulation class makes the assumption that "
+                                           "every cell has zero or one neighbors behind "
+                                           "each face (here, behind each vertex), but in your "
+                                           "situation there would be more than one."
+                                           "\n\n"
+                                           "Support for this is not currently implemented. "
+                                           "If you need to work with triangulations where "
+                                           "more than two cells come together at a vertex, "
+                                           "duplicate the vertices once per cell (i.e., put "
+                                           "multiple vertices at the same physical location, "
+                                           "but using different vertex indices for each) "
+                                           "and then ensure continuity of the solution by "
+                                           "explicitly creating constraints that the degrees "
+                                           "of freedom at these vertices have the same "
+                                           "value, using the ConstraintMatrix class."));
               }
 
           // assert there are no more

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.