From 0c510511c6a30f7154138ad611a8c7fe44ff80bf Mon Sep 17 00:00:00 2001 From: hartmann Date: Tue, 1 Feb 2000 12:46:11 +0000 Subject: [PATCH] add do_not_produce_unrefined_islands flag, new smoothing option git-svn-id: https://svn.dealii.org/trunk@2303 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/include/grid/tria.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/deal.II/deal.II/include/grid/tria.h b/deal.II/deal.II/include/grid/tria.h index 4afca25a99..c4fa6611ee 100644 --- a/deal.II/deal.II/include/grid/tria.h +++ b/deal.II/deal.II/include/grid/tria.h @@ -24,11 +24,14 @@ enum MeshSmoothing { eliminate_refined_inner_islands = 0x100, eliminate_refined_boundary_islands = 0x200, + do_not_produce_unrefined_islands = 0x400, smoothing_on_refinement = (limit_level_difference_at_vertices | eliminate_unrefined_islands), smoothing_on_coarsening = (eliminate_refined_inner_islands | - eliminate_refined_boundary_islands), + eliminate_refined_boundary_islands | + do_not_produce_unrefined_islands), + maximum_smoothing = 0xffff }; @@ -1016,6 +1019,11 @@ struct TriaNumberCache<3> : public TriaNumberCache<2> * refines the mesh according to a criterion associated with a boundary * integral or if one has rough boundary data. * + * \item #do_not_produce_unrefined_islands#: + * This flag prevents the occurence of unrefined islands. In more detail: + * It prohibits the coarsening of a cell if 'most of the neighbors' will + * be refined after the step. + * * \item #smoothing_on_refinement#: * This flag sums up all smoothing algorithms which may be performed upon * refinement by flagging some more cells for refinement. -- 2.39.5