MOOSE (software)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Moose Multiphysics.png
The MOOSE GUI Peacock
The MOOSE GUI Peacock
Original author(s) Derek Gaston
Developer(s) Idaho National Laboratory and contributors
Initial release June 10, 2008; 9 years ago (2008-06-10)
Operating system Linux, Mac OS X, Unix
Available in C++
Type Finite element analysis
License LGPL

MOOSE (Multiphysics Object Oriented Simulation Environment) is an object-oriented C++ finite element framework for the development of tightly coupled multiphysics solvers from Idaho National Laboratory.[1] MOOSE makes use of the PETSc non-linear solver package and libmesh to provide the finite element discretization.

A key design aspect of MOOSE is the decomposition of weak form residual equations into separate terms that are each represented by compute kernels. The combination of these kernels into complete residuals describing the problem to be solved is performed at run time. This allows modifications such as toggling of mechanisms and the addition of new physics without recompilation. MOOSE comes with an extensive library of kernels providing residual terms for solid mechanics, Navier–Stokes equations, phase field models and more.



The development of MOOSE at Idaho National Laboratory (INL), beginning in May 2008, has resulted in a unique approach to computational engineering that combines computer science with a strong underlying mathematical description in a unique way that allows scientists and engineers to develop engineering simulation tools in a fraction of the time previously required.[2] The heart of MOOSE is the Kernel. A Kernel is a “piece” of physics. To add new physics to an application built using MOOSE, all that is required is to supply a new Kernel that describes the discrete form of the equation. It’s usually convenient to think of a Kernel as a mathematical operator, such as a Laplacian or a convection term in a partial differential equation (PDE). Kernels may be swapped or coupled together to achieve different application goals. These Kernels, which now number in the hundreds, allow a scientist or engineer to develop an application rapidly.

For a new application, existing Kernels are selected as-is, or modified as necessary, and “plugged” in. An advection-diffusion-reaction equation is of the same mathematical form no matter what application it is being used for. Typically, only the form of the coefficients or the dependencies on other physics need to be defined; rarely must complete Kernels be constructed from scratch. With MOOSE, only the Kernel development is required from the scientist or engineer (application developer). MOOSE is designed to do everything else for the application developer, such as finite element discretization of the PDEs, the nonlinear solver, and the parallel high performance computing.

The idea of naming MOOSE-based applications after Idaho indigenous animal species is loosely based on Los Alamos National Laboratory's 1970s – 1990s approach to naming their codes after Native American tribes and artifacts, such as APACHE, CONCHAS, and the KIVA series of codes. There are now over twenty MOOSE-based application animals in various stages of development, ranging from recently obtaining preliminary results to being nationally recognized as state-of-the-art efforts (such as BISON, PEREGRINE, and MARMOT for fuels performance modeling & simulation activities).


MOOSE / BISON simulation: A piece of a fuel pellet has chipped away (center left) due to a manufacturing defect or damage incurred while it was in transit. The damaged pellet surface induces a high-stress state in the adjacent cladding. As a result, the pellets warm up and densify before swelling back out due to fission products building up inside of them, further stressing the surrounding fuel cladding.

MOOSE is a development and run-time environment for the solution of multi-physics systems that involve multiple physical models or multiple simultaneous physical phenomena. The systems are generally represented (modeled) as a system of fully coupled nonlinear partial differential equation systems (an example of a multi-physics system is the thermal feedback effect upon neutronics cross-sections where the cross-sections are a function of the heat transfer). Inside MOOSE, the Jacobian-Free Newton Krylov (JFNK) method is implemented as a parallel nonlinear solver that naturally supports effective coupling between physics equation systems (or Kernels).[3] The physics Kernels are designed to contribute to the nonlinear residual, which is then minimized inside of MOOSE. MOOSE provides a comprehensive set of finite element support capabilities (libMesh) and provides for mesh adaptation and parallel execution. The framework heavily leverages software libraries from the Department of Energy (DOE) and the National Nuclear Security Administration (NNSA), such as the nonlinear solver capabilities in either the Portable, Extensible Toolkit for Scientific Computation (PETSc) project or the Trilinos project.

ELK (Extended Library of Kernels)[edit]

ELK is a library for common Kernels, boundary conditions and material base classes.[4]

YAK (Yet Another Kernel)[edit]

YAK is a library of common actions, Kernels, boundary conditions, and material base classes for radiation transport applications. YAK is currently linked with RattleSnake (multi-group radiation Sn transport), Pronghorn (multi-group diffusion), and Critter (multi-length scale temperature feedback).



BISON was the first MOOSE-based application "animal," and is a finite element-based nuclear fuel performance code applicable to a variety of fuel forms including light water reactor fuel rods, TRISO fuel particles, and metallic rod and plate fuel.[5][6][7] It solves the fully coupled equations of thermomechanics and species diffusion and includes important fuel physics such as fission gas release and material property degradation with burnup. BISON is based on the MOOSE framework[8] and can therefore efficiently solve problems on either two-dimensional axisymmetric or three-dimensional geometries using standard workstations or large high performance computers. Plasticity, irradiation growth, and thermal and irradiation creep models are implemented for clad materials. Models are also available to simulate gap heat transfer, mechanical contact, and the evolution of the gap/plenum pressure with plenum volume, gas temperature, and fission gas addition. BISON is also coupled to a MOOSE-based mesoscale phase field material property simulation capability.[9][10]


MARMOT is a finite element-based phase field code for modeling irradiation-induced microstructure evolution. MARMOT predicts the effect of radiation damage on microstructure evolution, including void nucleation and growth, bubble growth, grain boundary migration, and gas diffusion and segregation. The phase field equations can be coupled with heat conduction and solid mechanics from ELK to consider the effect of temperature and stress gradients on the evolution. In addition, MARMOT calculates the effect of the microstructure evolution on various bulk material properties, including thermal conductivity and porosity. Once the bulk properties have been calculated, they can be passed to BISON for a fuel performance simulation. This coupling between MARMOT and BISON has been achieved in the hybrid code BARMOT.[11][12][13]


FALCON is being developed to enable simulation of the tightly coupled fluid-rock behavior in hydrothermal and engineered geothermal system (EGS) reservoirs, targeting the dynamics of fracture stimulation, fluid flow, rock deformation, and heat transport in a single integrated code, with the ultimate goal of providing a tool that can be used to test the viability of EGS in the United States and worldwide.[14][15][16] Reliable reservoir performance predictions of EGS systems require accurate and robust modeling for the coupled thermal-hydrological-mechanical processes. Conventionally, these types of problems are solved using operator splitting methods, usually by coupling a subsurface flow and heat transport simulator with a solid mechanics simulator via input files.[17][18][19][20] FALCON eliminates the need for using operator splitting methods to simulate these systems, and the scalability of MOOSE supported applications allows for simulating these tightly coupled processes at the reservoir scale, allowing for examination of the system as a whole (something the operator splitting methodologies generally cannot do).[21][22]


ReActive Transport (RAT) has been developed to solve reactive transport problems in subsurface porous media that involves highly nonlinearly coupled physical processes of fluid flow, solute transport, biogeochemical reactions and media-solution interactions. These problems are common in various subsurface-engineered systems, such as engineered environmental remediation, enhanced geothermal systems and carbon dioxide geological sequestration. Currently, the physics that could be coupled in RAT include: single-phase fluid flow in porous media, advection, dispersion and diffusion transport, aqueous kinetic reaction, aqueous equilibrium reaction, kinetic mineral precipitation/dissolution reaction, and Carmen-Kozeny porosity-permeability relationship.[23][24]


RELAP-7 is the next-generation tool in the RELAP safety/systems analysis application series and is based upon the MOOSE development and runtime environment framework.[25][26] RELAP-7 will retain and improve the basic analysis capability of RELAP5. The four major improvements are 1) A well-posed seven-equation two-phase flow model (liquid, gas, and interface pressures) versus the obsolete ill-posed six-equation flow model (non-physical mixture sound speed) found in RELAP5; 2) Improved numerical approximations resulting in second-order accuracy in both space and time versus the first order approximations in RELAP5; 3) Implicit tightly coupled time integration for long duration transients, such as providing plant behavior for full life fuel cycle evaluations; and 4) the ability to easily couple to multi-dimensional core simulators being developed in other programs (NEAMS, CASL, ATR LEP).[27][28][29]


Pronghorn was originally developed for simulation of the gas-cooled pebble-bed VHTR concept. The current capabilities of Pronghorn include transient and steady coupled porous fluid flow and solid-state heat conduction with a standard multi-group diffusion model (i.e., fixed-source, criticality, and time-dependent).[30] Recently added capabilities include a nonlinear acceleration scheme for criticality problems and a simple thermal-fluid model for the prismatic reactor concept. Future capabilities will include a more advanced multi-phase flow type of model (to study thermal boundary layer effects) and a radiation transport model. The physics can be solved in three-dimensional Cartesian (x, y, z) or cylindrical (r, q , z) space, with precursor and adiabatic thermal feedback models. This code has been validated against the PBMR400 benchmark problem. Using Pronghorn, rod ejection simulations have been conducted for thermal-fluids/neutronics for both pebble-bed and prismatic gas-cooled reactors and simple thermal-neutronics coupled LWR benchmark problems.[31][32]


  • Fully coupled, fully implicit multiphysics solver
  • Dimension independent physics
  • Automatically parallel (largest runs >100,000 CPU cores)
  • Modular development simplifies code reuse
  • Built-in mesh adaptivity
  • Continuous and Discontinuous Galerkin (DG) (at the same time)
  • Intuitive parallel multiscale solves (see videos below)
  • Dimension agnostic, parallel geometric search (for contact related applications)
  • Flexible, plugable graphical user interface
  • ~30 plugable interfaces allow specialization of every part of the solve


  1. ^ "MOOSE Framework - Open Source Multiphysics". Idaho National Laboratory. Retrieved 2013-03-28. 
  2. ^ [1][dead link]
  3. ^ [2]
  4. ^ "MOOSE instructions - EVOWiki". 2012-04-17. Retrieved 2012-12-11. 
  5. ^ "Journal of Nuclear Materials - Multidimensional multiphysics simulation of nuclear fuel behavior". Journal of Nuclear Materials. 423: 149–163. 2012-01-19. doi:10.1016/j.jnucmat.2012.01.012. Retrieved 2012-12-11. 
  6. ^ [3][dead link]
  7. ^ "Journal of Nuclear Materials - Three dimensional coupled simulation of thermomechanics, heat, and oxygen diffusion in UO2 nuclear fuel rods". Journal of Nuclear Materials. 392: 6–15. doi:10.1016/j.jnucmat.2009.03.035. Retrieved 2012-12-11. 
  8. ^ "Nuclear Engineering and Design - MOOSE: A parallel computational framework for coupled systems of nonlinear equations". Nuclear Engineering and Design. 239: 1768–1778. 2009-07-19. doi:10.1016/j.nucengdes.2009.05.021. Retrieved 2012-12-11. 
  9. ^ "Computational Materials Science - An object-oriented finite element framework for multiphysics phase field simulations". Computational Materials Science. 51: 20–29. 2011-08-28. doi:10.1016/j.commatsci.2011.07.028. Retrieved 2012-12-11. 
  10. ^ "Nuclear Engineering and Design - A coupling methodology for mesoscale-informed nuclear fuel performance codes". Nuclear Engineering and Design. 240: 2877–2883. 2010-07-03. doi:10.1016/j.nucengdes.2010.06.005. Retrieved 2012-12-11. 
  11. ^ Tonks, MR; Gaston, D; Millett, PC; Andrs, D; Talbot, P (2012). "An object-oriented finite element framework for multiphysics phase field simulations". Computational Materials Science. 51: 20–29. doi:10.1016/j.commatsci.2011.07.028. 
  12. ^ K Chockalingam, MR Tonks, JD Hales, DR Gaston, PC Millett, L Zhang. 2012. Crystal plasticity with Jacobian-Free Newton–Krylov. Computational Mechanics 0178-7675:1–10.
  13. ^ Zhang, L; Tonks, MR; Millett, PC; Zhang, Y; Chockalingam, K; Biner, B (2012). "Phase-field modeling of temperature gradient driven pore migration coupling with thermal conduction". Computational Materials Science. 56: 161–165. doi:10.1016/j.commatsci.2012.01.002. 
  14. ^ "ESTSC - Find the latest in U.S. Department of Energy Software". Retrieved 2012-12-11. 
  15. ^ Podgorney, R.K, H. Huang, and D. Gaston, 2010, Massively Parallel Fully Coupled Modeling of Coupled Thermal-Hydro-Mechanical Processes for Enhanced Geothermal System Reservoirs, 35th Stanford Geothermal Workshop, Stanford, CA, February 2010
  16. ^ Gaston, D., L. Guo, H. Huang, R. Johnson, H. Park, R. Podgorney, M. Tonks, and R, Williamson. 2010. Parallel algorithms and software for nuclear, energy, and environmental applications Part I: Multiphysics Algorithms, Communications in Computational Physics
  17. ^ Gaston, D., L. Guo, H. Huang, R. Johnson, H. Park, R. Podgorney, M. Tonks, and R, Williamson. 2010. Parallel algorithms and software for nuclear, energy, and environmental applications Part II: Multiphysics Software, Communications in Computational Physics
  18. ^ Podgorney, R.K, G. Gunnarsson, and H. Huang, 2011, Numerical Simulation of temperature dependent fluid reinjection behavior, Hellisheidi geothermal field, Southwest Iceland, Geothermal Resources Council 35th Annual Meeting, San Diego, CA, October 23–26, 2011
  19. ^ Huang, H., P. Meakin, Podgorney, R.K, S. Deng, and C. Lu. 2011, Physics-based modeling of fracturing and permeability evolution in engineered geothermal systems, Geothermal Resources Council 35th Annual Meeting, San Diego, CA, October 23–26, 2011
  20. ^ Podgorney, R.K, C. Lu, and H. Huang. 2012, Thermo-hydro-mechncial modeling of working fluid injection and thermal energy extraction in EGS fractures and rock matrix, 37th Stanford Geothermal Workshop, Stanford, CA, February 2012.
  21. ^ Podgorney, R.K, H. Huang, and D. Gaston, 2010, FALCON: A Hybrid Finite Element-Discrete Element Physics Based Model for Simultaneously Solving Fully Coupled Multiphase Fluid Flow, Heat Transport, Rock Deformation, and Fracturing, Geothermal Resources Council 34th Annual Meeting, Sacramento, CA, October 24–27, 2010
  22. ^ Podgorney, R.K, H. Huang, and D. Gaston, 2010, Physics-Based Modeling for Coupled Thermo-Hydro-Mechanical Problems in Geologic Media: An Application for Enhanced Geothermal System, Geological Society of America Annual Meeting, Denver CO, Oct 31-Nov. 3, 2010
  23. ^ [4][dead link]
  24. ^ "Reactive Transport Modeling of Induced Calcite Precipitation Reaction Fronts in". Bibcode:2010AGUFM.H51C0911G. Retrieved 2012-12-11. 
  25. ^ "NEAMS Update" (PDF). April 2012. Retrieved 2016-09-27. 
  26. ^ [5][dead link]
  27. ^ "NEAMS Update" (PDF). January 2012. Retrieved 2016-09-27. 
  28. ^ [6][dead link]
  29. ^ "Microsoft Word - Demonstration of a Steady State PWR Problem with RELAP7 r3.docx" (PDF). Retrieved 2016-09-27. 
  30. ^ [7][dead link]
  31. ^ H. Park , D. Gaston , S. Kadiouglu, D. Knoll, D. Lebrun-Grandie , R. Martineau and W. Taitano", "Tightly Coupled Multiphysics Simulation for Pebble Bed Reactors," American Nuclear Society 2009 International Conference on Advances in Mathematics, Computational Methods, and Reactor Physics, Saratoga Springs, NY, May 3–7, 2009.
  32. ^ [8][dead link]


  • Tonks, M.; Gaston, D.; Millett, P.; Andrs, D.; Talbot, P. (2012). "An object-oriented finite element framework for multiphysics phase field simulations". Comp. Mat. Sci. 51 (1): 20–29. doi:10.1016/j.commatsci.2011.07.028. 
  • Williamson, R.; Hales, J.; Novascone, S.; Tonks, M.; Gaston, D.; Permann, C.; Andrs, D.; Martineau, R. "Multidimensional Multiphysics Simulation of Nuclear Fuel Behavior". Journal of Nuclear Materials. 423 (149–163): 2012. doi:10.1016/j.jnucmat.2012.01.012. 
  • L. Guo, H. Huang, D. Gaston, and G. Redden. "Modeling of calcite precipitation driven by bacteria-facilitated urea hydrolysis in a flow column using a fully coupled, fully implicit parallel reactive transport simulator. In Eos Transactions American Geophysical Union, 90(52), Fall Meeting Supplement, AGU 90(52), San Francisco, CA, Dec 14-18 2009.
  • R. Podgorney, H. Huang, and D. Gaston. Massively parallel fully coupled implicit modeling of coupled thermal-hydrological-mechanical processes for enhanced geothermal system reservoirs. In Proceedings, 35th Stanford Geothermal Workshop, Stanford University, Palo Alto, CA, Feb 1-3 2010.
  • H. Park, D. Knoll, D. Gaston, and R. Martineau. "Tightly Coupled Multiphysics Algorithms for Pebble Bed Reactors. Nuclear Science and Engineering, 166(2):118-133,

External links[edit]