ALBANY: USING COMPONENT-BASED DESIGN TO DEVELOP A FLEXIBLE, GENERIC MULTIPHYSICS ANALYSIS CODE

作者:Salinger Andrew G; Bartlett Roscoe A; Bradley Andrew M; Chen Qiushi; Demeshko Irina P; Gao Xujiao; Hansen Glen A; Mota Alejandro; Muller Richard P; Nielsen Erik; Ostien Jakob T; Pawlowski Roger P; Perego Mauro; Phipps Eric T; Sun WaiChing; Tezaur Irina K
来源:International Journal for Multiscale Computational Engineering, 2016, 14(4): 415-438.
DOI:10.1615/IntJMultCompEng.2016017040

摘要

Albany is a multiphysics code constructed by assembling a set of reusable, general components. It is an implicit, unstructured grid finite element code that hosts a set of advanced features that are readily combined within a single analysis run. Albany uses template-based generic programming methods to provide extensibility and flexibility; it employs a generic residual evaluation interface to support the easy addition and modification of physics. This interface is coupled to powerful automatic differentiation utilities that are used to implement efficient nonlinear solvers and preconditioners, and also to enable sensitivity analysis and embedded uncertainty quantification capabilities as part of the forward solve. The flexible application programming interfaces in Albany couple to two different adaptive mesh libraries; it internally employs generic integration machinery that supports tetrahedral, hexahedral, and hybrid meshes of user specified order. We present the overall design of Albany, and focus on the specifics of the integration of many of its advanced features. As Albany and the components that form it are openly available on the internet, it is our goal that the reader might find some of the design concepts useful in their own work. Albany results in a code that enables the rapid development of parallel, numerically efficient multiphysics software tools. In discussing the features and details of the integration of many of the components involved, we show the reader the wide variety of solution components that are available and what is possible when they are combined within a simulation capability.

  • 出版日期2016