[version 12][version 11][version 10][version 9][version 8][version 7][version 6]
6.2 Geometric constraints
Section 5.3 describes the mesh boundary, which is split into patches and written in the mesh boundary file. Each patch includes a type entry which can be specified as a generic patch, a wall or a geometric constraint, e.g. empty, symmetry, cyclic etc.
For each geometric constraint type for a patch in the mesh, there is an equivalent boundary condition type that must be applied to the same patch in the boundaryField of a field file. The type names in the mesh and boundaryField are the same, e.g. the symmetry boundary condition must be applied to a symmetry patch.
To simplify the configuration of field files, OpenFOAM includes a file named setConstraintTypes in the $FOAM_ETC/caseDicts of the installation. The setConstraintTypes file contains the following entries.
10{
11 type cyclic;
12}
13
14cyclicSlip
15{
16 type cyclicSlip;
17}
18
19nonConformalCyclic
20{
21 type nonConformalCyclic;
22 value $internalField;
23}
24
25nonConformalError
26{
27 type nonConformalError;
28}
29
30empty
31{
32 type empty;
33}
34
35processor
36{
37 type processor;
38 value $internalField;
39}
40
41processorCyclic
42{
43 type processorCyclic;
44 value $internalField;
45}
46
47nonConformalProcessorCyclic
48{
49 type nonConformalProcessorCyclic;
50 value $internalField;
51}
52
53symmetryPlane
54{
55 type symmetryPlane;
56}
57
58symmetry
59{
60 type symmetry;
61}
62
63wedge
64{
65 type wedge;
66}
67
68internal
69{
70 type internal;
71}
72
73
74// ************************************************************************* //
The file exploits the fact that a patch which is a geometric constraint is automatically included in a group of the constraint name, e.g. a symmetry patch is in a group named symmetry. The entries therefore set a boundary type for each constraint group (to the name of the group). All constraint conditions are covered by an entry for each condition.
The user can then include this file inside the boundaryField of their field files. Since the file is in the $FOAM_ETC directory it can be included using the special #includeEtc directive, e.g. in the boundaryField entry below.
boundaryField
{
inlet
{
type zeroGradient;
}
outlet
{
type fixedValue;
value uniform 0;
}
wall
{
type zeroGradient;
}
#includeEtc "caseDicts/setConstraintTypes"
}