• The Darcy pressure and heat conduction equations have been developed independently up to this point.
  • In this step, we couple them together. $$$$-\nabla \cdot \frac{\mathbf{K}}{\mu} \nabla p = 0 \\ C\left( \frac{\partial T}{\partial t} + \epsilon \vec{u}\cdot\nabla T \right) - \nabla \cdot k \nabla T = 0$$$$
  • Objects have been created for everything except the $$$\vec{u}\cdot\nabla T$$$ term.
  • A Kernel, DarcyConvection, will be developed for this term.
  • We will also develop a more sophisticated Material that takes the heterogenous nature of our column into account.

Multiphysics Coupling

Coupling Code

step06_coupled_darcy_heat_conduction/include/kernels/DarcyConvection.h

step06_coupled_darcy_heat_conduction/src/kernels/DarcyConvection.C

step06_coupled_darcy_heat_conduction/include/materials/PackedColumn.h

step06_coupled_darcy_heat_conduction/src/materials/PackedColumn.C

Transient Function Inlet (6b)

  • MOOSE supports the use of function strings, e.g. cos(x), in the input file via ParsedFunction objects.
  • It is also possible to create C++ Function objects that may be used by other objects

Functions

Oscillating inlet/outlet Pressure Input File

step06_coupled_darcy_heat_conduction/problems/step6b_transient_inflow.i

Create a Test

  • A simple test of DarcyConvection is created by:
    • Creating an artificial pressure field using an AuxVariable
    • Reducing the number of timesteps from the problem above

tutorials/darcy_thermo_mech/step06_coupled_darcy_heat_conduction/tests/kernels/darcy_convection/tests

tutorials/darcy_thermo_mech/step06_coupled_darcy_heat_conduction/tests/kernels/darcy_convection/darcy_convection.i