From b822f00b468079ab9bceefd24c3a8eeef1340334 Mon Sep 17 00:00:00 2001 From: Luca Heltai Date: Tue, 7 Apr 2015 16:33:52 +0200 Subject: [PATCH] Added back also a HyperShellBoundary to step-32. --- examples/step-32/step-32.cc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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); -- 2.39.5