The Fluid Properties module within the Multiphysics Object-Oriented Simulation Environment (MOOSE) is used to compute fluid properties for numerous applications, ranging from nuclear reactor thermal hydraulics to geothermal energy. Those applications drove the development of the module to enable numerous different fluid equations of states, property lookups with primitive and conserved flow variable to cater to pressure and density-driven solvers, and an object-oriented design facilitating expansion and maintenance. Each fluid property is implemented in its own class but inherits capabilities such as automatic differentiation, automated out-of-bounds handling or variable conversion capabilities. This paper presents the module, its design, its user and developer interface, its content in terms of fluids and properties, and several of its applications showing its major role in the MOOSE simulation ecosystem. Program summaryProgram title: MOOSE Fluid Properties moduleCPC Library link to program files:https://doi.org/10.17632/cwzhsyp6pd.1Developer's repository link:https://github.com/idaholab/moose/tree/next/modules/fluid_propertiesLicensing provisions: LGPLProgramming language: C++, PythonNature of problem: The simulation of thermal hydraulics of advanced nuclear reactor systems, such as heat pipe micro-reactors or molten-salt cooled pebble bed reactors, requires a wide variety of discretizations of the fluid flow equations, from 1D thermal hydraulics to computational fluid dynamics at various levels of fidelity, with a wide variety of coolants. Applications are developed within the MOOSE C++ framework by Argonne and Idaho National Laboratories to simulate these reactors for research and design purposes. These applications (Sockeye, SAM, others) rely on MOOSE for the computation of fluid properties. The fluid properties module contains properties for most advanced nuclear reactor coolants, including an interface to the Molten Salt Thermodynamics Database (MSTDB) developed by Oak Ridge National Laboratory. Single phase, two phase, and gas mixtures fluid properties are computed by the module.Solution method: The fluid properties module includes numerous numerical methods to support the wide range of applications, notably forward automatic differentiation, conversion methods between pressure and density-driven variable sets, spline-based table lookups which are the current state of the art for the fast computation of fluid properties. The integration with MOOSE facilitates uncertainty quantification with regards to the fluid properties and optimization studies with regards to the fluid composition.
Read full abstract