From c311c653df4c13d637a312a8529fd7d042e105b6 Mon Sep 17 00:00:00 2001 From: wolf Date: Mon, 29 Jan 2001 14:55:46 +0000 Subject: [PATCH] Take over changes from 1.11->1.13 git-svn-id: https://svn.dealii.org/branches/Branch-3-1@3823 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/source/grid/grid_generator.cc | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/deal.II/deal.II/source/grid/grid_generator.cc b/deal.II/deal.II/source/grid/grid_generator.cc index d27ede6514..d3bb2715e3 100644 --- a/deal.II/deal.II/source/grid/grid_generator.cc +++ b/deal.II/deal.II/source/grid/grid_generator.cc @@ -536,10 +536,31 @@ void GridGenerator::hyper_L<> (Triangulation<3> &tria, }; + template <> void GridGenerator::hyper_ball<> (Triangulation<3> &tria, const Point<3> &p, - const double radius) { + const double radius) +{ + // this function used to be + // implemented by the code below, + // but it turned out that it didn't + // work as expected: there were + // faces that we used in both + // orientations, leading the + // triangulation function to + // believe that the faces were + // external, even though they were + // in fact internal to the + // ball. this leads to strange + // results. + // + // since we haven't found a working + // enumeration of cell vertices and + // faces, this function is disabled + // altogether + Assert(false, ExcNotImplemented()); + const double a = 1./(1+sqrt(3)); // equilibrate cell sizes at transition // from the inner part to the radial // cells @@ -548,7 +569,7 @@ void GridGenerator::hyper_ball<> (Triangulation<3> &tria, = { // first the vertices of the inner // cell - p+Point<3>(-1,-1,-1)*(radius/sqrt(3)*a), + p+Point<3>(-1,-1,-1)*(radius/sqrt(3)*a), p+Point<3>(+1,-1,-1)*(radius/sqrt(3)*a), p+Point<3>(+1,+1,-1)*(radius/sqrt(3)*a), p+Point<3>(-1,+1,-1)*(radius/sqrt(3)*a), @@ -578,7 +599,7 @@ void GridGenerator::hyper_ball<> (Triangulation<3> &tria, {8, 0, 3, 11, 12, 4, 7, 15}, {11, 10,14, 15, 3, 2, 6, 7}, {8, 9, 13, 12, 0, 1, 5, 4}}; - + std::vector > cells (n_cells, CellData<3>()); for (unsigned int i=0; i