{"title":"并行通用hp自适应有限元软件算法","authors":"Marc Fehling, Wolfgang Bangerth","doi":"https://dl.acm.org/doi/10.1145/3603372","DOIUrl":null,"url":null,"abstract":"<p>The <i>hp</i>-adaptive finite element method (FEM) – where one independently chooses the mesh size (<i>h</i>) and polynomial degree (<i>p</i>) to be used on each cell – has long been known to have better theoretical convergence properties than either <i>h</i>- or <i>p</i>-adaptive methods alone. However, it is not widely used, owing at least in parts to the difficulty of the underlying algorithms and the lack of widely usable implementations. This is particularly true when used with continuous finite elements. </p><p>Herein, we discuss algorithms that are necessary for a comprehensive and generic implementation of <i>hp</i>-adaptive finite element methods on distributed-memory, parallel machines. In particular, we will present a multi-stage algorithm for the unique enumeration of degrees of freedom (DoFs) suitable for continuous finite element spaces, describe considerations for weighted load balancing, and discuss the transfer of variable size data between processes. We illustrate the performance of our algorithms with numerical examples, and demonstrate that they scale reasonably up to at least 16 384 Message Passing Interface (MPI) processes. </p><p>We provide a reference implementation of our algorithms as part of the open-source library <monospace>deal.II</monospace>.</p>","PeriodicalId":50935,"journal":{"name":"ACM Transactions on Mathematical Software","volume":"37 3","pages":""},"PeriodicalIF":2.7000,"publicationDate":"2023-06-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Algorithms for Parallel Generic hp-adaptive Finite Element Software\",\"authors\":\"Marc Fehling, Wolfgang Bangerth\",\"doi\":\"https://dl.acm.org/doi/10.1145/3603372\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>The <i>hp</i>-adaptive finite element method (FEM) – where one independently chooses the mesh size (<i>h</i>) and polynomial degree (<i>p</i>) to be used on each cell – has long been known to have better theoretical convergence properties than either <i>h</i>- or <i>p</i>-adaptive methods alone. However, it is not widely used, owing at least in parts to the difficulty of the underlying algorithms and the lack of widely usable implementations. This is particularly true when used with continuous finite elements. </p><p>Herein, we discuss algorithms that are necessary for a comprehensive and generic implementation of <i>hp</i>-adaptive finite element methods on distributed-memory, parallel machines. In particular, we will present a multi-stage algorithm for the unique enumeration of degrees of freedom (DoFs) suitable for continuous finite element spaces, describe considerations for weighted load balancing, and discuss the transfer of variable size data between processes. We illustrate the performance of our algorithms with numerical examples, and demonstrate that they scale reasonably up to at least 16 384 Message Passing Interface (MPI) processes. </p><p>We provide a reference implementation of our algorithms as part of the open-source library <monospace>deal.II</monospace>.</p>\",\"PeriodicalId\":50935,\"journal\":{\"name\":\"ACM Transactions on Mathematical Software\",\"volume\":\"37 3\",\"pages\":\"\"},\"PeriodicalIF\":2.7000,\"publicationDate\":\"2023-06-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"ACM Transactions on Mathematical Software\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/https://dl.acm.org/doi/10.1145/3603372\",\"RegionNum\":1,\"RegionCategory\":\"数学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, SOFTWARE ENGINEERING\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM Transactions on Mathematical Software","FirstCategoryId":"94","ListUrlMain":"https://doi.org/https://dl.acm.org/doi/10.1145/3603372","RegionNum":1,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
摘要
hp-adaptive finite element method (FEM) -其中一个独立选择网格尺寸(h)和多项式度(p)用于每个单元-早已被认为具有更好的理论收敛性比h-或p-adaptive方法单独。然而,它并没有被广泛使用,至少部分原因是底层算法的困难和缺乏广泛可用的实现。当使用连续有限单元时尤其如此。在此,我们讨论了在分布式内存并行机器上全面和通用地实现hp自适应有限元方法所必需的算法。特别是,我们将提出一种适用于连续有限元空间的唯一自由度枚举(dof)的多阶段算法,描述加权负载平衡的考虑因素,并讨论进程之间可变大小数据的传输。我们用数值示例说明了我们的算法的性能,并证明它们可以合理地扩展到至少16 384个消息传递接口(MPI)进程。作为开源库协议的一部分,我们提供了我们算法的参考实现。
Algorithms for Parallel Generic hp-adaptive Finite Element Software
The hp-adaptive finite element method (FEM) – where one independently chooses the mesh size (h) and polynomial degree (p) to be used on each cell – has long been known to have better theoretical convergence properties than either h- or p-adaptive methods alone. However, it is not widely used, owing at least in parts to the difficulty of the underlying algorithms and the lack of widely usable implementations. This is particularly true when used with continuous finite elements.
Herein, we discuss algorithms that are necessary for a comprehensive and generic implementation of hp-adaptive finite element methods on distributed-memory, parallel machines. In particular, we will present a multi-stage algorithm for the unique enumeration of degrees of freedom (DoFs) suitable for continuous finite element spaces, describe considerations for weighted load balancing, and discuss the transfer of variable size data between processes. We illustrate the performance of our algorithms with numerical examples, and demonstrate that they scale reasonably up to at least 16 384 Message Passing Interface (MPI) processes.
We provide a reference implementation of our algorithms as part of the open-source library deal.II.
期刊介绍:
As a scientific journal, ACM Transactions on Mathematical Software (TOMS) documents the theoretical underpinnings of numeric, symbolic, algebraic, and geometric computing applications. It focuses on analysis and construction of algorithms and programs, and the interaction of programs and architecture. Algorithms documented in TOMS are available as the Collected Algorithms of the ACM at calgo.acm.org.