Consolidate/trim mesh refinement code
Following recent parallel mesh refinement developments, check if some of the older code can be removed.
Comments (7)
-
-
reporter @blechta Yes, 105 is a good motivation for a cleanup. The more more code we have for doing the same thing, the more inconsistencies that creep in.
-
The parallel refinement algorithms need some scrutiny. I am fairly happy with the 2D algorithm, although it does not actually follow the algorithm of Carstensen, which it was originally based on. The
ParallelRefinement3D
algorithm is rather limited. It works well for global refines, but it does not preserve mesh quality on multiple refines using markers. In order to fix it, there needs to be some concept of parent-child relationships, which Issue#105flags up. -
Is there a chance that
LocalMeshCoarsening
will be cleaned-up (and one day employed in built-in adaptivity)? It basically works but does an evil thing - mutates mesh. I think that missing is a code to adapt (mesh)functions (and possibly also some cooperation between refinement and coarsening but it may not be so easy).There was recently also some development in coarsening in DOLFIN HPC http://kth.diva-portal.org/smash/record.jsf?pid=diva2:633890.
NOTE: it takes few lines of code to make
LocalMeshCoarsening::coarsen_mesh_by_edge_collapse
available in python, but is it worth commiting? -
- changed milestone to 1.5
-
assigned issue to
I am planning to consolidate 2D and 3D, serial and parallel code into one file, with a revised refinement scheme.
-
- changed status to resolved
Now in branch chris/refinement-cleanup
-
reporter - removed milestone
Removing milestone: 1.5 (automated comment)
- Log in to comment
#105might be solved by this clean-up.