-
MOOSE: Enabling Massively Parallel Multiphysics Simulation
Authors:
Cody J. Permann,
Derek R. Gaston,
David Andrs,
Robert W. Carlsen,
Fande Kong,
Alexander D. Lindsay,
Jason M. Miller,
John W. Peterson,
Andrew E. Slaughter,
Roy H. Stogner,
Richard C. Martineau
Abstract:
Harnessing modern parallel computing resources to achieve complex multi-physics simulations is a daunting task. The Multiphysics Object Oriented Simulation Environment (MOOSE) aims to enable such development by providing simplified interfaces for specification of partial differential equations, boundary conditions, material properties, and all aspects of a simulation without the need to consider t…
▽ More
Harnessing modern parallel computing resources to achieve complex multi-physics simulations is a daunting task. The Multiphysics Object Oriented Simulation Environment (MOOSE) aims to enable such development by providing simplified interfaces for specification of partial differential equations, boundary conditions, material properties, and all aspects of a simulation without the need to consider the parallel, adaptive, nonlinear, finite-element solve that is handled internally. Through the use of interfaces and inheritance, each portion of a simulation becomes reusable and composable in a manner that allows disparate research groups to share code and create an ecosystem of growing capability that lowers the barrier for the creation of multiphysics simulation codes. Included within the framework is a unique capability for building multiscale, multiphysics simulations through simultaneous execution of multiple sub-applications with data transfers between the scales. Other capabilities include automatic differentiation, scaling to a large number of processors, hybrid parallelism, and mesh adaptivity. To date, MOOSE-based applications have been created in areas of science and engineering such as nuclear physics, geothermal science, magneto-hydrodynamics, seismic events, compressible and incompressible fluid flow, microstructure evolution, and advanced manufacturing processes.
△ Less
Submitted 11 November, 2019;
originally announced November 2019.
-
A general-purpose hierarchical mesh partitioning method with node balancing strategies for large-scale numerical simulations
Authors:
Fande Kong,
Roy H. Stogner,
Derek R. Gaston,
John W. Peterson,
Cody J. Permann,
Andrew E. Slaughter,
Richard C. Martineau
Abstract:
Large-scale parallel numerical simulations are essential for a wide range of engineering problems that involve complex, coupled physical processes interacting across a broad range of spatial and temporal scales. The data structures involved in such simulations (meshes, sparse matrices, etc.) are frequently represented as graphs, and these graphs must be optimally partitioned across the available c…
▽ More
Large-scale parallel numerical simulations are essential for a wide range of engineering problems that involve complex, coupled physical processes interacting across a broad range of spatial and temporal scales. The data structures involved in such simulations (meshes, sparse matrices, etc.) are frequently represented as graphs, and these graphs must be optimally partitioned across the available computational resources in order for the underlying calculations to scale efficiently. Partitions which minimize the number of graph edges that are cut (edge-cuts) while simultaneously maintaining a balance in the amount of work (i.e. graph nodes) assigned to each processor core are desirable, and the performance of most existing partitioning software begins to degrade in this metric for partitions with more than than $O(10^3)$ processor cores. In this work, we consider a general-purpose hierarchical partitioner which takes into account the existence of multiple processor cores and shared memory in a compute node while partitioning a graph into an arbitrary number of subgraphs. We demonstrate that our algorithms significantly improve the preconditioning efficiency and overall performance of realistic numerical simulations running on up to 32,768 processor cores with nearly $10^9$ unknowns.
△ Less
Submitted 10 October, 2018; v1 submitted 7 September, 2018;
originally announced September 2018.
-
A $C^1$-continuous finite element formulation for solving the Jeffery-Hamel boundary value problem
Authors:
John W. Peterson,
Roy H. Stogner
Abstract:
The third-order Jeffery-Hamel ODE governing the flow of an incompressible fluid in a two-dimensional wedge is briefly derived, and a C^1 finite element formulation of the equation is developed. This formulation has several advantages, including a natural framework for enforcing the boundary conditions, a numerically efficient solution procedure, and suitability for implementation within well-estab…
▽ More
The third-order Jeffery-Hamel ODE governing the flow of an incompressible fluid in a two-dimensional wedge is briefly derived, and a C^1 finite element formulation of the equation is developed. This formulation has several advantages, including a natural framework for enforcing the boundary conditions, a numerically efficient solution procedure, and suitability for implementation within well-established, open, scientific computing tools. The finite element formulation is shown to be non-coercive, and therefore not ideal for proving existence, uniqueness, or a priori error estimates, but the numerical solutions computed with quartic Hermite elements are nevertheless found to converge to reference solutions at nearly optimal rates (O(h^4) in both L^2 and H^1 norms). Further work is required to better understand the cause of the suboptimal convergence rates, and a linear model problem which exhibits analogous characteristics is also discussed as a possible starting point for future theoretical analyses.
△ Less
Submitted 19 December, 2016;
originally announced December 2016.
-
GRINS: A Multiphysics Framework Based on the libMesh Finite Element Library
Authors:
Paul T. Bauman,
Roy H. Stogner
Abstract:
The progression of scientific computing resources has enabled the numerical approximation of mathematical models describing complex physical phenomena. A significant portion of researcher time is typically dedicated to the development of software to compute the numerical solutions. This work describes a flexible C++ software framework, built on the libMesh finite element library, designed to allev…
▽ More
The progression of scientific computing resources has enabled the numerical approximation of mathematical models describing complex physical phenomena. A significant portion of researcher time is typically dedicated to the development of software to compute the numerical solutions. This work describes a flexible C++ software framework, built on the libMesh finite element library, designed to alleviate developer burden and provide easy access to modern computational algorithms, including quantity-of-interest-driven parallel adaptive mesh refinement on unstructured grids and adjoint-based sensitivities. Other software environments are highlighted and the current work motivated; in particular, the present work is an attempt to balance software infrastructure and user flexibility. The applicable class of problems and design of the software components is discussed in detail. Several examples demonstrate the effectiveness of the design, including applications that incorporate uncertainty. Current and planned developments are discussed.
△ Less
Submitted 19 June, 2015;
originally announced June 2015.