From: Luca Heltai Date: Tue, 7 Apr 2015 14:33:52 +0000 (+0200) Subject: Added back also a HyperShellBoundary to step-32. X-Git-Tag: v8.3.0-rc1~301^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b822f00b468079ab9bceefd24c3a8eeef1340334;p=dealii.git Added back also a HyperShellBoundary to step-32. --- diff --git a/examples/step-32/step-32.cc b/examples/step-32/step-32.cc index 0d94e60a2a..8f705e990b 100644 --- a/examples/step-32/step-32.cc +++ b/examples/step-32/step-32.cc @@ -51,6 +51,7 @@ #include #include #include +#include #include #include @@ -3567,7 +3568,12 @@ namespace Step32 // step-31. We use a different mesh now (a GridGenerator::hyper_shell // instead of a simple cube geometry), and use the // project_temperature_field() function instead of the library - // function VectorTools::project, the rest is as before. + // function VectorTools::project. + // In this example, however, we define both a SphericalManifold() a + // HyperShellBoundary() object to describe the geometry of the domain. + // The reason we do so here, is because we want to impose no normal flux + // boundary conditions, and they require knowledge of the normals to a boundary, + // which a SphericalManifold() alone cannot compute. template void BoussinesqFlowProblem::run () { @@ -3578,8 +3584,11 @@ namespace Step32 (dim==3) ? 96 : 12, true); triangulation.set_all_manifold_ids(0); + triangulation.set_all_manifold_ids_on_boundary(1); static SphericalManifold manifold; + static HyperShellBoundary boundary; triangulation.set_manifold (0, manifold); + triangulation.set_manifold (1, boundary); global_Omega_diameter = GridTools::diameter (triangulation);