From 0ec8f570614c8f8a9ed8c7c26c7017b58103c0f7 Mon Sep 17 00:00:00 2001 From: Marc Fehling Date: Sat, 23 May 2020 18:56:13 +0200 Subject: [PATCH] Extension of hp-Interface. --- 9.2/paper.bib | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++ 9.2/paper.tex | 56 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 128 insertions(+), 1 deletion(-) diff --git a/9.2/paper.bib b/9.2/paper.bib index c135102..1b1d05f 100644 --- a/9.2/paper.bib +++ b/9.2/paper.bib @@ -950,3 +950,76 @@ pages = {171--233}, year = 1982, doi = {10.1016/0096-3003(82)90191-6} } + +@article{BabuskaSuri1990, + title = {The p- and h-p versions of the finite element method, an overview}, + author = {Babuška, I. and Suri, M.}, + year = {1990}, + journal = {Computer Methods in Applied Mechanics and Engineering}, + volume = {80}, + pages = {5--26}, + issn = {0045-7825}, + doi = {10.1016/0045-7825(90)90011-A}, + number = {1} +} + +@article{Mavriplis1994, + title = {Adaptive mesh strategies for the spectral element method}, + author = {Mavriplis, C.}, + year = {1994}, + journal = {Computer Methods in Applied Mechanics and Engineering}, + volume = {116}, + pages = {77--86}, + issn = {0045-7825}, + doi = {10.1016/S0045-7825(94)80010-3}, + number = {1} +} + +@article{MelenkWohlmuth2001, + title = {On residual-based a posteriori error estimation in \textit{hp}-{{FEM}}}, + author = {Melenk, J. M. and Wohlmuth, B. I.}, + year = {2001}, + journal = {Advances in Computational Mathematics}, + volume = {15}, + pages = {311--331}, + issn = {1019-7168, 1572-9044}, + doi = {10.1023/A:1014268310921}, + number = {1-4} +} + +@inproceedings{HoustonSeniorSueli2003, + title = {Sobolev regularity estimation for hp-adaptive finite element methods}, + booktitle = {Numerical {{Mathematics}} and {{Advanced Applications}}}, + author = {Houston, P. and Senior, B. and Süli, E.}, + editor = {Brezzi, Franco and Buffa, Annalisa and Corsaro, Stefania and Murli, Almerico}, + year = {2003}, + pages = {631--656}, + publisher = {{Springer Milan}}, + location = {{Milano}}, + doi = {10.1007/978-88-470-2089-4_58}, + isbn = {978-88-470-2089-4} +} + +@article{HoustonSueli2005, + title = {A note on the design of \textit{hp}-adaptive finite element methods for elliptic partial differential equations}, + author = {Houston, P. and Süli, E.}, + year = {2005}, + journal = {Computer Methods in Applied Mechanics and Engineering}, + volume = {194}, + pages = {229--243}, + issn = {0045-7825}, + doi = {10.1016/j.cma.2004.04.009}, + number = {2} +} + +@article{EibnerMelenk2007, + title = {An adaptive strategy for \textit{hp}-{{FEM}} based on testing for analyticity}, + author = {Eibner, T. and Melenk, J. M.}, + year = {2007}, + journal = {Computational Mechanics}, + volume = {39}, + pages = {575--595}, + issn = {1432-0924}, + doi = {10.1007/s00466-006-0107-0}, + number = {5} +} diff --git a/9.2/paper.tex b/9.2/paper.tex index bb3aee5..59ce0bf 100644 --- a/9.2/paper.tex +++ b/9.2/paper.tex @@ -446,7 +446,61 @@ meshes with more than 4B unknowns. {\color{red}TODO[Timo]} \subsection{Better support for parallel $hp$-adaptive algorithms} \label{subsec:hp} -\todo[inline]{Marc: Your section} +With the previous release, \dealii supports $hp$-adaptive finite element methods +on distributed memory systems \cite{dealII91}. We implemented the bare functionality +for $hp$-adaptive methods with the objective to offer the greatest flexibility in +their application. Here, reference finite elements still had to be assigned manually +to each cell, which may not lead to an optimal mesh and is tedious. + +With the current release, $hp$-adaptive finite element methods have been further +expanded in both the range of features in terms of decision strategies and their +user interface, effectively making the more attractive to use. We introduced many +new functions that automatize the general workflow for applying $hp$-decision +strategies, which run on top of the previous low-level implementation for both serial +and parallel applications. + +The interface is now as simple to use as the one for pure adaptive mesh refinement. +Consider the following (incomplete) listing as an example: We estimate both error and +smoothness of the finite element approximation. Further, we flag certain fractions of +cells with the highest and lowest errors for refinement and coarsening, respectively +(here: 30\% / 3\%). From those cells listed for adaptation, we specify a subset of them +for $h$- and $p$-adaptation (here: 10\% / 90\%). +\begin{c++} +Vector estimated_error_per_cell (n_active_cells); +KellyErrorEstimator::estimate( + dof_handler, ..., solution, estimated_error_per_cell, ...); +GridRefinement::refine_and_coarsen_fixed_number( + triangulation, estimated_error_per_cell, 0.3, 0.03); + +Vector estimated_smoothness_per_cell (n_active_cells); +SmoothnessEstimator::Legendre::coefficient_decay( + ..., dof_handler, solution, estimated_smoothness_per_cell); +hp::Refinement::p_adaptivity_fixed_number( + dof_handler, estimated_smoothness_per_cell, 0.9, 0.9); +hp::Refinement::choose_p_over_h (dof_handler); + +triangulation.execute_coarsening_and_refinement(); +\end{c++} + +In particular, we implemented decision strategies based on refinement history and +smoothness estimation, and made sure that they work for refinement as well as +coarsening in terms of $h$- and $p$-adaptation in serial and parallel applications. + +The former relies on knowing an estimate for the upper error bound \cite[Thm.~3.4]{BabuskaSuri1990}. +For successive refinements, we can predict how the error will change on basis of +current error estimates and adaptation flags. In the next refinement cycle, these +predicted error estimates allow us to decide whether the choice of adaptation in +the previous cycle was justified, and provide the foundation for it in the next +one \cite{MelenkWohlmuth2001}. + +In general, $p$-refinement is favorable over $h$-refinement in smooth regions of +the finite element approximation \cite[Thm.~3.4]{BabuskaSuri1990}. Thus, estimating +its smoothness provides a suitable decision indicator for $hp$-adaptation. For this +purpose, we expand the finite element approximation into a series of orthogonal +basis functions of increasing complexity, and consider the decay of their expansion +coefficients as the estimation of smoothness. This has been implemented for both +Fourier coefficients \cite{BangerthKayserHerold2007} and Legendre coefficients +\cite{Mavriplis1994,HoustonSeniorSueli2003,HoustonSueli2005,EibnerMelenk2007}. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- 2.39.5