Litcius/Paper detail

MOOSE: Enabling massively parallel multiphysics simulation

Cody Permann, Derek Gaston, David Andrš, Robert Carlsen, Fande Kong, Alexander Lindsay, Jason Miller, John W. Peterson, Andrew E. Slaughter, Roy H. Stogner, Richard Martineau

2020SoftwareX658 citationsDOIOpen Access PDF

Abstract

Harnessing modern parallel computing resources to achieve complex multiphysics 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.

Topics & Concepts

MultiphysicsComputer scienceMassively parallelComputational scienceNonlinear systemDistributed computingFinite element methodParallel computingPhysicsQuantum mechanicsThermodynamicsAdvanced Numerical Methods in Computational MathematicsDistributed and Parallel Computing SystemsComputational Fluid Dynamics and Aerodynamics