MOOSE (software)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Moose Multiphysics.png
MOOSE Peacock input.png
The MOOSE GUI Peacock.
Original author(s) Derek Gaston
Developer(s) Idaho National Laboratory and contributors.
Initial release June 10, 2008; 6 years ago (2008-06-10)
Stable release continuous release
Development status Active
Operating system Linux, Mac OS X, Unix
Available in C++
Type Finite Element Analysis Simulator
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.



  • 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

External links[edit]


  1. ^ "MOOSE Framework - Open Source Multiphysics". Idaho National Laboratory. Retrieved 2013-03-28.