atl_eqn_heat_module Module

A module describing the heat equation.

The heat equation is the simple scalar equation that utilizes the Laplacian operator in space:

Where represents the temperature. The only parameter that needs to be configured for this equation is the diffusivity parameter . Thus the equation table for the heat equation takes the following form:

  equation = {
    name = 'heat',
    k = 1
  }

The heat equation is implemented for 1, 2 and 3 dimensions, which are configured by choosing the corresponding name:

  • heat (3D)
  • heat_2d (2D)
  • heat_1d (1D)


Derived Types

type, public ::  atl_heat_type

Components

Type Visibility Attributes Name Initial
real(kind=rk), public :: k

Thermal diffusivity of the medium.

type(atl_materialFun_type), public :: penalization

Penalization terms


Subroutines

public subroutine atl_load_heat(heat, conf, eq_table)

subroutine to initialize an equation of type heat equation as defined in the configuration file

Arguments

Type IntentOptional Attributes Name
type(atl_heat_type), intent(out) :: heat

Resulting description of the heat equation parameters.

type(flu_State) :: conf

Handle to the configuration script, to load the parameters from.

integer, intent(in) :: eq_table

Handle to the table containing the description for the equation system.

public subroutine atl_save_heat(me, eqn_name, conf)

Arguments

Type IntentOptional Attributes Name
type(atl_heat_type), intent(in) :: me
character(len=*), intent(in) :: eqn_name
type(aot_out_type) :: conf