genericFaPatchField.H
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2011-2016 OpenFOAM Foundation
9 Copyright (C) 2019-2021 OpenCFD Ltd.
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27Class
28 Foam::genericFaPatchField
29
30Description
31 This boundary condition provides a generic version of the \c calculated
32 condition, useful as a fallback for handling unknown patch types. Not
33 generally applicable as a user-specified condition.
34
35See also
36 Foam::calculatedFaPatchField
37
38SourceFiles
39 genericFaPatchField.C
40
41\*---------------------------------------------------------------------------*/
42
43#ifndef genericFaPatchField_H
44#define genericFaPatchField_H
45
48
49// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50
51namespace Foam
52{
53
54/*---------------------------------------------------------------------------*\
55 Class genericFaPatch Declaration
56\*---------------------------------------------------------------------------*/
57
58template<class Type>
60:
61 public calculatedFaPatchField<Type>,
63{
64 //- The parent boundary condition type
66
67
68public:
69
70 //- Runtime type information
71 TypeName("generic");
72
73
74 // Constructors
75
76 //- Construct from patch and internal field
78 (
79 const faPatch&,
81 );
82
83 //- Construct from patch, internal field and dictionary
85 (
86 const faPatch&,
88 const dictionary&
89 );
90
91 //- Construct by mapping given patchField<Type> onto a new patch
93 (
95 const faPatch&,
98 );
99
100 //- Construct and return a clone
101 virtual tmp<faPatchField<Type>> clone() const
102 {
104 (
106 );
107 }
108
109 //- Default construct
111
112 //- Construct as copy setting internal field reference
114 (
117 );
118
119 //- Construct and return a clone setting internal field reference
121 (
123 ) const
124 {
126 (
127 new genericFaPatchField<Type>(*this, iF)
128 );
129 }
130
131
132 // Member Functions
133
134 //- Write
135 virtual void write(Ostream&) const;
136
137
138 // Mapping Functions
139
140 //- Map (and resize as needed) from self given a mapping object
141 virtual void autoMap(const faPatchFieldMapper&);
142
143 //- Reverse map the given faPatchField onto this faPatchField
144 virtual void rmap
145 (
146 const faPatchField<Type>&,
147 const labelList&
148 );
149
150
151 // Evaluation Functions
152
153 //- Fatal
154 virtual tmp<Field<Type>>
156
157 //- Fatal
158 virtual tmp<Field<Type>>
160
161 //- Fatal
163
164 //- Fatal
166};
167
168
169// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
170
171} // End namespace Foam
172
173// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
174
175#ifdef NoRepository
176 #include "genericFaPatchField.C"
177#endif
178
179// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
180
181#endif
182
183// ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:62
Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
A FieldMapper for finite-area patch fields.
faPatchField<Type> abstract base class. This class gives a fat-interface to all derived classes cover...
Definition: faPatchField.H:82
Finite area patch class. Used for 2-D non-Euclidian finite area method.
Definition: faPatch.H:78
This boundary condition provides a generic version of the calculated condition, useful as a fallback ...
virtual tmp< faPatchField< Type > > clone() const
Construct and return a clone.
TypeName("generic")
Runtime type information.
tmp< Field< Type > > gradientInternalCoeffs() const
Fatal.
virtual void rmap(const faPatchField< Type > &, const labelList &)
Reverse map the given faPatchField onto this faPatchField.
virtual tmp< Field< Type > > valueInternalCoeffs(const tmp< scalarField > &) const
Fatal.
tmp< Field< Type > > gradientBoundaryCoeffs() const
Fatal.
virtual tmp< Field< Type > > valueBoundaryCoeffs(const tmp< scalarField > &) const
Fatal.
virtual void autoMap(const faPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual tmp< faPatchField< Type > > clone(const DimensionedField< Type, areaMesh > &iF) const
Construct and return a clone setting internal field reference.
genericFaPatchField(const genericFaPatchField< Type > &)=default
Default construct.
Generic infrastructure for reading/writing unknown patch types.
A class for managing temporary objects.
Definition: tmp.H:65
Namespace for OpenFOAM.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73