libMesh: a C++ library for parallel adaptive mesh refinement/coarsening simulations

libMesh: a C++ library for parallel adaptive mesh refinement/coarsening simulations
复制标题

DOI:
10.1007/s00366-006-0049-3
复制
发表时间:
2006-01-01
影响因子:
8.7
通讯作者:
Carey, Graham F.
Carey, Graham F.
中科院分区:
工程技术2区
文献类型:
--
作者:
Kirk, Benjamin S.;Peterson, John W.;Carey, Graham F.

文献摘要

被引文献

相似文献

在本文中,我们描述了用于并行自适应有限元应用的 libMesh (http://libmesh.sourceforge.net) 框架。 libMesh 是一个开源软件库,旨在使用自适应网格细化和粗化策略促进多尺度、多物理场应用的串行和并行仿真。主要的软件开发是在德克萨斯大学的 CFDLab (http://cfdlab.ae.utexas.edu) 中进行,但与其他开源软件项目一样;美国其他地方和国外正在做出贡献。本文的主要目标是:(1)提供一个描述libMesh及其底层哲学和软件设计方法的基本参考源; (2) 为应用分析人员和开发人员提供关于自适应网格细化和粗化(AMR/C)方案的足够细节和参考; (3) 描述并行实现和数据结构,支持域分解、消息传递以及与并行 AMR/C 动态重新分区相关的细节的讨论。简要讨论了与 C++ 编程范式、不同应用程序的可重用性、自适应建模、与物理无关的错误指示器和类似概念相关的其他方面。最后,介绍了使用该库的一些应用程序的结果,并讨论了未来的研究领域。
In this paper we describe the libMesh (http://libmesh.sourceforge.net)framework for parallel adaptive finite element applications. libMesh is an open-source software library that has been developed to facilitate serial and parallel simulation of multiscale, multiphysics applications using adaptive mesh refinement and coarsening strategies. The main software development is being carried out in the CFDLab (http://cfdlab.ae.utexas.edu) at the University of Texas, but as with other open-source software projects; contributions are being made elsewhere in the US and abroad. The main goals of this article are: (1) to provide a basic reference source that describes libMesh and the underlying philosophy and software design approach; (2) to give sufficient detail and references on the adaptive mesh refinement and coarsening (AMR/ C) scheme for applications analysts and developers; and (3) to describe the parallel implementation and data structures with supporting discussion of domain decomposition, message passing, and details related to dynamic repartitioning for parallel AMR/C. Other aspects related to C++ programming paradigms, reusability for diverse applications, adaptive modeling, physics-independent error indicators, and similar concepts are briefly discussed. Finally, results from some applications using the library are presented and areas of future research are discussed.