Skip to main content

sorptionWallFunction

Description

The sorptionWallFunction is a boundary condition that provides a wall boundary condition to specify scalar/concentration gradient for turbulent and laminar flows.

The governing equation of the boundary condition is:

C=CCpΔy=FaΔy \nabla C = \frac{C^* - C_p}{\Delta_y} = \frac{F}{a \Delta_y}

with:

C=CsurfK C^* = \frac{C_{surf}}{K}

and with the mass-transfer coefficient is calculated for turbulent flows:

a=Cμ0.25kp0.5yblended+ a = \frac{C_\mu^{0.25} k_p^{0.5}}{y^+_{blended}}

or for laminar-flow and molecular-diffusion-only states:

a=Dmy1 a = \frac{D_m}{y_1}

where:

PropertyDescription
C\nabla CGradient of concentration
CC^*Wall-adjacent concentration
CpC_pNear-wall cell concentration
Δy\Delta_yFirst-cell centre wall distance
FFFlux of concentration
aaMass-transfer coefficient
CsurfC_{surf}Wall-surface concentration
KKAdsorption or absorption/permeation coefficient
CμC_\muEmpirical model coefficient
kpk_pTurbulent kinetic energy in near-wall cell
yblended+y^+_{blended}Non-dimensional blended near-wall cell height
DmD_mMolecular-diffusion coefficient
y1y_1First-cell centre wall distance

References

Standard model for exponential blending (tag:FDC):

Foat, T., Drodge, J., Charleson, A., Whatmore, B.,
Pownall, S., Glover, P., ... & Marr, A. (2022).
Predicting vapour transport from semi-volatile organic
compounds concealed within permeable packaging.
International Journal of Heat and Mass Transfer, 183, 122012.
DOI:10.1016/j.ijheatmasstransfer.2021.122012

Standard model for stepwise blending (tag:F):

Foat, T. (2021).
Modelling vapour transport in indoor environments for
improved detection of explosives using dogs.
Doctoral dissertation. University of Southampton.
URI:http://eprints.soton.ac.uk/id/eprint/456709

Usage

The condition requires entries in both the boundary and field files.

Boundary file

<patchName>
{
type patch;
...
}

Field file

<patchName>
{
// Mandatory entries
type compressible::sorptionWallFunction;
Sc <scalar>;
Sct <scalar>;
kAbs <PatchFunction1<scalar>>;

// Optional entries
laminar <bool>;
D <scalar>;
kName <word>;
nuName <word>;

// Inherited entries
Cmu <scalar>;
kappa <scalar>;
E <scalar>;
blending <word>;
...
}

where:

PropertyDescriptionTypeRequiredDefault
typeType name: compressible::sorptionWallFunctionwordyes-
ScSchmidt numberscalaryes-
SctTurbulent Schmidt numberscalaryes-
kAbsAdsorption or absorption/permeation coefficientPatchFunction1<scalar>yes-
laminarFlag to calculate mass-transfer coefficient under the laminar-flow or -diffusion-only statesboolnofalse
kNameName of operand turbulent kinetic energy fieldwordnok
nuNameName of operand kinematic viscosity fieldwordnonu

The inherited entries are elaborated in:

  • fixedGradientFvPatchField.H
  • wallFunctionCoefficients.H
  • wallFunctionBlenders.H
  • PatchFunction1.H

Further information

Tutorial:

  • N/A

Source code:

API:

History: Introduced in version v2212