• Instead of passing constant parameters to our pressure diffusion Kernel, we can use the Material system to supply the values.
  • This allows for properties that vary in space and can be coupled to variables in the simulation.

MOOSE Material System

Darcy Pressure Material and Properties

  • For the Darcy example, we need two Material properties: permeability and viscosity.
  • These can both be computed by the same Material object: PackedColumn.
  • As in the reference article, permeability varies with the size of the steel balls. We'll use a LinearInterpolation object to implement this.

Source Code

PackedColumn.h

PackedColumn.C

DarcyPressure.h

DarcyPressure.C

step3.i

Create a Test

  • Modify the test from Step 2
  • DarcyPressure now requires material properties, so create a GenericConstantMaterial in the input file and the test passes.

/tutorials/darcy_thermo_mech/step03_darcy_material/tests/kernels/darcy_pressure/darcy_pressure.i

  • Create a simple test that uses the material created.

tutorials/darcy_thermo_mech/step03_darcy_material/tests/materials/packed_column/tests

tutorials/darcy_thermo_mech/step03_darcy_material/tests/materials/packed_column/packed_column.i