Consolidate/trim mesh refinement code

Issue #279 resolved
Prof Garth Wells created an issue

Following recent parallel mesh refinement developments, check if some of the older code can be removed.

Comments (7)

  1. Prof Garth Wells 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.

  2. Chris Richardson

    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 #105 flags up.

  3. Jan Blechta

    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?

  4. Log in to comment