# MOOSE Modules

-   MOOSE comes with a library of community-developed physics modules.
-   The purpose of the modules is to encapsulate common kernels, boundary conditions, etc. to prevent code duplication.
-   Examples include: heat conduction, solid mechanics, Navier-Stokes, and others.
-   *No* export controlled physics (i.e. neutronics) should be put into the MOOSE modules.
-   The modules are organized so that your application can link against only those which it requires.

[](---)
# MOOSE Modules Anatomy

```text
$ ls moose/modules
  chemical_reactions
  combined
  contact
  fluid_mass_energy_balance
  heat_conduction
  linear_elasticity
  navier_stokes
  phase_field
  richards
  solid_mechanics
  tensor_mechanics
  water_steam_eos
```

-   All applications are set up to use the MOOSE modules.
-   If you need assistance adding or removing unneeded modules from your application, please contact us and we'll be happy to help.

[](---)
# MOOSE Modules Anatomy - cont.

-   The contents of each module are the same as any MOOSE application:

```bash
$ ls moose/modules/solid_mechanics
  Makefile
  doc
  include
  lib
  plugins
  run_tests
  src
  tests
```

-   Application codes specify the modules they want to use in their Makefiles with the following syntax:

```puppet

    ################################## MODULES ####################################
    # SOLID_MECHANICS   := yes
    # LINEAR_ELASTICITY := yes
```

[](---)
# MOOSE modules: Solid Mechanics Example

[](.footnotesize[)
[](.left-50[)

[image:153]

[](.right-50[)

[image:155]

[](.left-50[)

[image:154]

[](])
[](])
[](])
[](])

[](.footnotesize[)
[](.right-50[)

-   Available in `modules/solidmechanics`
-   Stats:
    -   127,650 elements, 25,227 nodes
-   Features:
    -   Large displacement formulation
    -   Plasticity
    -   Creep

[](])
[](])

[](---)
# MOOSE modules: Flow Example

[](.footnotesize[)
[](.left-50[)

[image:156]

[](.right-50[)

[image:157]

[](.left-50[)

[image:158]

[](])
[](])
[](])
[](])

[](.footnotesize[)
[](.right-50[)

-   Available in `modules/navierstokes`
-   Subsonic Test Case:
    -   Mach 0.5 over a circular arc
    -   Euler equations
    -   8,232 elements, 9,675 nodes

[](])
[](])