Reimplement and parallelize adaptive mesh refinement

Registered by Anders Logg

Adaptive mesh refinement needs a complete overhaul/rewrite:
- Both bisection and regular cut refinement are broken and may give hanging nodes (see separate bug report)
- Regular cut refinement only works in 2D
- Bisection refinement is slow
- No refinement algorithm works in parallel

Blueprint information

Status:
Not started
Approver:
Anders Logg
Priority:
High
Drafter:
Andy R Terrel
Direction:
Needs approval
Assignee:
Andy R Terrel
Definition:
Approved
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

ART: I will take over this blue print. The idea is to add this feature from a well-maintained open source package rather than reimplement our own. There are two tracks find a suitable package for simplicies and one for quads and hexs.

ART: There are several moving parts to this blue print. Most especially the actual implementation base. Since we are adding quad/hexes at the same time, I am postponing this work until that is done. Currently the plan is to use three different approaches all of which have good uses.

pragmatic: https://launchpad.net/pragmatic
dolfin-hpc: (port back to mainline dolfin) https://code.launchpad.net/~njansson/dolfin/hpc
p4est: http://www.p4est.org/

(?)

Work Items

Work items:
Evaluate options for integration: INPROGRESS
Implement simplices: TODO
Implement quads/hexes: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.