Abstract

We present a framework for parallel adaptive solution of variable-viscosity Stokes flow problems. We focus on data structures, algorithms, and solvers that can scale to thousands of processor cores. The problem is discretized by octree-based finite elements with explicit enforcement of continuity constraints at hanging nodes. The parallel octree structure allows for fast neighbor-finding and facilitates local coarsening and refinement of the mesh. Mesh adaptivity is driven by a posteriori error indicators, including adjoint-based goal-oriented techniques. Dynamic load-balancing is achieved by dynamically partitioning a Morton-ordered space-filling curve. The Stokes system is solved iteratively using the minimum residual method (MINRES), preconditioned by a Schur-complement-based approximate inverse that employs algebraic multigrid V-cycle approximations of the inverses of the Poisson-like operators. We demonstrate the effectiveness of this framework on several testbed problems with up to 6 orders of magnitude variation in viscosity and up to 1.7 billion unknowns, on up to 4096 cores. The results indicate that the overhead due to all AMR components is less than 3% of the overall solve time, the solver exhibits very good algorithmic and parallel implementation scalability, the solver is insensitive to the magnitude of viscosity variation, and adjoint-based adaptivity results in over two orders of magnitude reduction in number of unknowns and up to an order of magnitude improvement in runtime relative to a uniform mesh, for the same level of error.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call