Description🔗
The advective
is a general boundary condition to simulate non-reflecting
advective outflow condition, based on solving the material derivative of
the given field on the boundary.
Usage🔗
The condition requires entries in both the boundary
and field files.
Boundary file🔗
<patchName>
{
type patch;
...
}
Field file🔗
<patchName>
{
// Mandatory entries
type advective;
// Optional entries
phi <word>;
rho <word>;
lInf <scalar>;
// Conditional entries
// when lInf is given
fieldInf <Type>;
// Inherited entries
...
}
where:
Property | Description | Type | Required | Default |
---|---|---|---|---|
type |
Type name: advective
|
word | yes | - |
phi |
Name of the flux transporting the field | word | no | phi |
rho |
Name of the density field used to normalise the mass flux | word | no | rho |
lInf |
Relaxation length-scale | scalar | no | -GREAT |
fieldInf |
Field value of the far-field | Type | no | Zero |
The inherited entries are elaborated in:
-
mixedFvPatchFields.H
- The standard (
backward
,Euler
,CrankNicolson
,localEuler
) time schemes are supported. - The relaxation length-scale
lInf
and the far-field valuefieldInf
are to optionally relax the value at the boundary to a specified far-field value. - If
lInf
is specified,fieldInf
will be required. -
rho
is only required in the case of a mass-based flux. - The advection velocity is assumed to be normal to the boundary.
Method🔗
The material derivative is solved for the given field:
\[\frac{D \phi}{D t} \approx \frac{\partial \phi}{\partial t} + U_n \cdot \frac{\partial \phi}{\partial \mathbf{n}} = 0\]where:
Property | Type |
---|---|
\(\phi\) | Field |
\(U_n\) | Advection velocity component normal to boundary |
\(\mathbf{n}\) | Outward-pointing unit boundary-normal vector |
Further information🔗
Tutorial:
Source code:
API:
History:
- Introduced in version 1.5