makeDimensionedFvPatchFieldFunctions.C
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2026 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 \*---------------------------------------------------------------------------*/
25 
28 #include "fvMesh.H"
29 #include "fvPatchField.H"
30 #include "fvsPatchField.H"
32 
39 
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41 
42 #define makeDimensionedFvPatchFieldFunctions(Type, nullArg) \
43  \
44  typedef DimensionedField<Type, fvPatch, Field> \
45  DimensionedField##Type##fvPatch##Field; \
46  defineDimensionedFieldFunction \
47  ( \
48  DimensionedField##Type##fvPatch##Field \
49  ); \
50  namespace DimensionedFieldFunctions \
51  { \
52  addDimensionedFieldFunction \
53  ( \
54  TimeFunction, \
55  DimensionedField##Type##fvPatch##Field \
56  ); \
57  addDimensionedFieldFunction \
58  ( \
59  Zonal, \
60  DimensionedField##Type##fvPatch##Field \
61  ); \
62  addDimensionedFieldFunction \
63  ( \
64  DistanceFunction, \
65  DimensionedField##Type##fvPatch##Field \
66  ); \
67  addDimensionedFieldFunction \
68  ( \
69  Coded, \
70  DimensionedField##Type##fvPatch##Field \
71  ); \
72  addDimensionedFieldFunction \
73  ( \
74  Surfaces, \
75  DimensionedField##Type##fvPatch##Field \
76  ); \
77  addDimensionedFieldFunction \
78  ( \
79  FieldFunction, \
80  DimensionedField##Type##fvPatch##Field \
81  ); \
82  }
83 
84 namespace Foam
85 {
87 }
88 
89 
90 // ************************************************************************* //
Macros for easy insertion into run-time selection tables.
#define makeDimensionedFvPatchFieldFunctions(Type, nullArg)
Namespace for OpenFOAM.
FOR_ALL_FIELD_TYPES(makeDimensionedPointFieldFunctions)