29. SPECIES_BC Namelist

29.1. Overview

The SPECIES_BC namelist is used to define boundary conditions for the species diffusion model at external boundaries. Each instance of the namelist defines a particular condition to impose on a species component over a subset of the domain boundary. The boundary subset \(\Gamma\) is specified using mesh face sets. The namelist variable face_set_ids takes a list of face set IDs, and the boundary condition is imposed on all faces belonging to those face sets. Note that ExodusII mesh side sets are imported into Truchas as face sets with the same IDs. The species component is specified using the comp namelist variable.

Required/Optional:

Required

Single/Multiple Instances:

Multiple

The following types of boundary conditions can be defined. The outward unit normal to the boundary \(\Gamma\) is denoted \(\hat{n}\). The mass flux is defined as \(\vec{f}_\mathrm{mass} \equiv -D_j(\nabla\phi_j + S_j\nabla T)\cdot\hat{n}\).

External boundaries

  • Concentration. A concentration Dirichlet condition for species component \(j\)

    \(\phi_j = c\) on \(\Gamma\)

    is defined by setting type to 'concentration'. The boundary value \(c\) is specified using either conc for a constant value, or conc_func for a function.

  • Flux. A total concentration flux condition for species component \(j\)

    \(\vec{f}_\mathrm{mass} = q\) on \(\Gamma\),

    is defined by setting type to 'flux'. The concentration flux \(q\) is specified using either flux for a constant value, or flux_func for a function.

  • Mass Transfer: An external mass transfer flux condition on species component \(j\)

    \(\vec{f}_\mathrm{mass} = k_j(\phi_j - \phi_{\infty,j})\) on \(\Gamma\)

    is defined by setting type to 'mtc'. The mass transfer coefficient \(k_j\) for species \(j\) is specified using either mtc or mtc_func. The ambient concentration \(\phi_{\infty,j}\) for species \(j\) is specified using either ambient_conc or ambient_conc_func.

The specified species concentration boundary conditions are not allowed to overlap, and they must completely cover the computational boundary.

Internal interfaces

Internal interfaces are merely coincident pairs of conforming external mesh boundaries. These are modifications to the mesh created by Truchas and are defined using the Interface_Side_Sets parameter from the MESH namelist. Only the side set IDs referenced there can be used in the definition of the following interface condition.

  • Interface Mass Transfer: An interface mass transfer condition models mass transfer across an imperfect contact between two bodies or across a thin subscale material layer lying along an interface \(\Gamma\). It imposes continuity of the mass flux \(\vec{f}_\mathrm{mass}\) across the interface \(\Gamma\) and gives this flux as

    \(\vec{f}_\mathrm{mass} = k_j[\phi_j]\) on \(\Gamma\)

    where \([\phi_j]\) is the jump in \(\phi_j\) across \(\Gamma\) in the direction \(\hat{n}\). It is defined by setting type to 'interface-mtc'. The mass transfer coefficient \(k_j\) for species \(j\) is specified using either mtc for a constant value, or mtc_func for a function.

29.2. Components

name

Description:

A unique name used to identify a particular instance of this namelist.

Type:

string (31 characters max)

Default:

none

comp

Description:

The species component this boundary condition applies to.

Type:

integer

Default:

1

face_set_ids

Description:

A list of face set IDs that define the portion of the boundary where the boundary condition will be imposed.

Type:

integer list (32 max)

Default:

none

type

Description:

The type of boundary condition. The available options are:

  • 'concentration': Concentration is prescribed on the boundary. Use conc or conc_func to specify its value.

  • 'flux': Total outward concentration flux is prescribed on the boundary. Use flux or flux_func to specify its value.

  • 'mtc': External mass transfer condition. Use mtc or mtc_func to set the mass transfer coefficient, and ambient_conc or ambient_conc_func to set the ambinet concentration.

Type:

string

Default:

none

conc

Description:

The constant value of boundary concentration for a concentration-type boundary condition. To specify a function, use conc_func instead.

Type:

real

Default:

none

conc_func

Description:

The name of a FUNCTION namelist namelist defining a function that gives the boundary concentration for a concentration-type boundary condition. The function is expected to be a function of \((t,x,y,z)\).

Type:

string

Default:

none

flux

Description:

The constant value of the total outward boundary concentration flux for a flux-type boundary condition. To specify a function, use flux_func instead.

Type:

real

Default:

none

flux_func

Description:

The name of a FUNCTION namelist namelist defining a function that gives the total outward boundary concentration flux for a flux-type boundary condition. The function is expected to be a function of \((t,x,y,z)\).

Type:

string

Default:

none

mtc

Description:

The constant value of the mass transfer coefficient for a mass transfer-type boundary condition. To specify a function, use mtc_func instead.

Type:

real

Default:

none

mtc_func

Description:

The name of a FUNCTION namelist namelist defining a function that gives the mass transfer coefficient for a mass transfer-type boundary condition. The function is expected to be a function of \((T,\phi_j,t,x,y,z)\). When used as an interface condition, \(T\) and \(\phi_j\) are taken to be the maximums on either side of the interface. When heat transfer is not active, \(T\) is taken to be 0.

Type:

string

Default:

none

ambient_conc

Description:

The constant value of the ambient concentration for species component \(j\) for a mass transfer-type boundary condition. To specify a function, use ambient_conc_func instead.

Type:

real

Default:

none

ambient_conc_func

Description:

The name of a FUNCTION namelist namelist defining a function that gives the ambient concentration for species component \(j\) for a mass transfer-type boundary condition. The function is expected to be a function of \((t,x,y,z)\).

Type:

string

Default:

none