From 8fa16fe86006ce584a6913044aa94ebb9d765b50 Mon Sep 17 00:00:00 2001 From: heister Date: Sun, 17 Feb 2013 05:58:40 +0000 Subject: [PATCH] update step-49 git-svn-id: https://svn.dealii.org/trunk@28435 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/examples/step-49/doc/intro.dox | 34 ++++++++++++++++-- deal.II/examples/step-49/doc/results.dox | 11 ------ .../examples/step-49/doc/step-1.grid-1.png | Bin 9111 -> 0 bytes .../examples/step-49/doc/step-1.grid-2.png | Bin 29392 -> 0 bytes .../examples/step-49/doc/step-49.grid-4.png | Bin 0 -> 14348 bytes .../step-49/doc/step-49.grid-4base.png | Bin 0 -> 3373 bytes deal.II/examples/step-49/step-49.cc | 17 +++++++-- 7 files changed, 47 insertions(+), 15 deletions(-) delete mode 100644 deal.II/examples/step-49/doc/step-1.grid-1.png delete mode 100644 deal.II/examples/step-49/doc/step-1.grid-2.png create mode 100644 deal.II/examples/step-49/doc/step-49.grid-4.png create mode 100644 deal.II/examples/step-49/doc/step-49.grid-4base.png diff --git a/deal.II/examples/step-49/doc/intro.dox b/deal.II/examples/step-49/doc/intro.dox index ae625fb7e1..9feea29700 100644 --- a/deal.II/examples/step-49/doc/intro.dox +++ b/deal.II/examples/step-49/doc/intro.dox @@ -100,7 +100,8 @@ gmsh -2 untitled.geo or by clicking "Mesh" and then "2D" inside Gmsh after loading the file. Now -this is the mesh read from the .msh file and saved again by deal.II as an image (see the grid_1 function: +this is the mesh read from the .msh file and saved again by deal.II as an +image (see the grid_1 function): @image html step-49.grid-1.png @@ -112,7 +113,7 @@ modify a mesh: - change boundary indicators - move vertices - transform via smooth function - - perturb mesh + - perturb/randomize mesh - relax inner vertices? other things to mention: @@ -122,6 +123,8 @@ other things to mention: GridTools::rotate GridTools::scale + +

Merge Meshes

use GridGenerator::merge_triangulations() @@ -133,9 +136,36 @@ example: @image html step-49.grid-2.png +

Move Vertices

move individual vertices, first identify cells/vertices @image html step-49.grid-3.png + + +

Extrude Meshes

+ +GridGenerator::extrude_triangulation() + +see grid_4() function in this tutorial. + +this example can of course be generated using the 3d hyper_cube_with_cylindrical_hole(). + +usage for meshes generated from gmsh for example + + + + + + + + +
+ @image html step-49.grid-4base.png test + + @image html step-49.grid-4.png +
+ + diff --git a/deal.II/examples/step-49/doc/results.dox b/deal.II/examples/step-49/doc/results.dox index 675d2d5305..9e18b462df 100644 --- a/deal.II/examples/step-49/doc/results.dox +++ b/deal.II/examples/step-49/doc/results.dox @@ -3,17 +3,6 @@ The program has, after having been run, produced two grids, which look like this: - - - - - - -
- @image html step-1.grid-1.png - - @image html step-1.grid-2.png -

Possible extensions

diff --git a/deal.II/examples/step-49/doc/step-1.grid-1.png b/deal.II/examples/step-49/doc/step-1.grid-1.png deleted file mode 100644 index e7edc253dde0b6809e55bcf1160f7c937fca5f58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9111 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 diff --git a/deal.II/examples/step-49/doc/step-1.grid-2.png b/deal.II/examples/step-49/doc/step-1.grid-2.png deleted file mode 100644 index 8dc1d31d6ace2f9e4447b8fbf2b5a56d7f9f2b59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29392 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 diff --git a/deal.II/examples/step-49/doc/step-49.grid-4.png b/deal.II/examples/step-49/doc/step-49.grid-4.png new file mode 100644 index 0000000000000000000000000000000000000000..ff8d5cefc0aefb8053adfad8047570a447a08910 GIT binary patch literal 14348 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 literal 0 HcmV?d00001 diff --git a/deal.II/examples/step-49/step-49.cc b/deal.II/examples/step-49/step-49.cc index 3e564a9f3a..a9851a4d8d 100644 --- a/deal.II/examples/step-49/step-49.cc +++ b/deal.II/examples/step-49/step-49.cc @@ -37,12 +37,12 @@ void mesh_info(Triangulation &tria, const char *filename) // loop over all the cells and find how often each boundary indicator is used: { std::map boundary_count; - Triangulation<2>::active_cell_iterator + typename Triangulation::active_cell_iterator cell = tria.begin_active(), endc = tria.end(); for (; cell!=endc; ++cell) { - for (unsigned int face=0; face::faces_per_cell; ++face) + for (unsigned int face=0; face::faces_per_cell; ++face) { if (cell->face(face)->at_boundary()) boundary_count[cell->face(face)->boundary_indicator()]++; @@ -136,6 +136,18 @@ void grid_3 () triangulation.set_boundary (1); } +// demonstrate extrude_triangulation +void grid_4() +{ + Triangulation<2> triangulation; + Triangulation<3> out; + GridGenerator::hyper_cube_with_cylindrical_hole (triangulation, 0.25, 1.0); + + GridGenerator::extrude_triangulation(triangulation, 3, 2.0, out); + mesh_info(out, "grid-4.eps"); + +} + // @sect3{The main function} @@ -147,4 +159,5 @@ int main () grid_1 (); grid_2 (); grid_3 (); + grid_4 (); } -- 2.39.5