Skip to content

Parallel marking algorithm #3133

@jhale

Description

@jhale

Describe new/missing feature

The current mesh refinement module does not contain any algorithms for calculating the set of marked cells for subsequent
mesh refinement. In parallel this is non-trivial, and so I think it should be part of the library. Additionally, marking is a generic algorithm independent of the underlying PDE and error estimation strategy.

There is an interesting paper by Pfeiler and Praetorius on Dorfler marking in O(N) time with a C++ implementation which would work for us if it was refactored https://arxiv.org/pdf/1907.13078.pdf - however, I cannot find much in the literature about the parallel context where the naive algorithm would require a single rank having knowledge of all estimators.

Suggested user interface

The estimators are usually DG_0 so the interface could be ndarray/std::vector based.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions