Loading...
Searching...
No Matches
extrapolatedCalculatedFvPatchField.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) 2016-2017 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
11 This file is part of OpenFOAM.
12
13 OpenFOAM is free software: you can redistribute it and/or modify it
14 under the terms of the GNU General Public License as published by
15 the Free Software Foundation, either version 3 of the License, or
16 (at your option) any later version.
17
18 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26Class
27 Foam::extrapolatedCalculatedFvPatchField
28
29Group
30 grpGenericBoundaryConditions
31
32Description
33 This boundary condition applies a zero-gradient condition from the patch
34 internal field onto the patch faces when \c evaluated but may also be
35 assigned. \c snGrad returns the patch gradient evaluated from the current
36 internal and patch field values rather than returning zero.
37
38Usage
39 Example of the boundary condition specification:
40 \verbatim
41 <patchName>
42 {
43 type extrapolatedCalculated;
44 }
45 \endverbatim
46
47SourceFiles
48 extrapolatedCalculatedFvPatchField.C
49
50\*---------------------------------------------------------------------------*/
51
52#ifndef Foam_extrapolatedCalculatedFvPatchField_H
53#define Foam_extrapolatedCalculatedFvPatchField_H
54
56
57// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
58
59namespace Foam
60{
61
62/*---------------------------------------------------------------------------*\
63 Class extrapolatedCalculatedFvPatchField Declaration
64\*---------------------------------------------------------------------------*/
65
66template<class Type>
68:
69 public calculatedFvPatchField<Type>
70{
71public:
72
73 //- Runtime type information
74 TypeName("extrapolatedCalculated");
75 // fieldTypes::extrapolatedCalculatedTypeName_()
76
77
78 // Constructors
79
80 //- Construct from patch and internal field
82 (
83 const fvPatch&,
85 );
86
87 //- Construct from patch, internal field and dictionary
89 (
90 const fvPatch&,
92 const dictionary&
93 );
94
95 //- Construct by mapping given patch field onto a new patch
97 (
99 const fvPatch&,
101 const fvPatchFieldMapper&
102 );
103
104 //- Construct as copy
106 (
108 );
109
110 //- Construct as copy setting internal field reference
112 (
115 );
116
117 //- Return a clone
118 virtual tmp<fvPatchField<Type>> clone() const
119 {
120 return fvPatchField<Type>::Clone(*this);
121 }
122
123 //- Clone with an internal field reference
125 (
127 ) const
128 {
129 return fvPatchField<Type>::Clone(*this, iF);
130 }
131
132
133 // Member functions
134
135 //- Evaluate the patch field
136 virtual void evaluate
137 (
139 );
140};
141
142
143// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
144
145} // End namespace Foam
146
147// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148
149#ifdef NoRepository
151#endif
152
153// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
154
155#endif
156
157// ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
commsTypes
Communications types.
Definition UPstream.H:81
@ buffered
"buffered" : (MPI_Bsend, MPI_Recv)
Definition UPstream.H:82
calculatedFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition dictionary.H:133
extrapolatedCalculatedFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
TypeName("extrapolatedCalculated")
Runtime type information.
virtual tmp< fvPatchField< Type > > clone() const
Return a clone.
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::buffered)
Evaluate the patch field.
virtual tmp< fvPatchField< Type > > clone(const DimensionedField< Type, volMesh > &iF) const
Clone with an internal field reference.
A FieldMapper for finite-volume patch fields.
static tmp< fvPatchField< Type > > Clone(const DerivedPatchField &pf, Args &&... args)
Clone a patch field, optionally with internal field reference etc.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition fvPatch.H:71
A class for managing temporary objects.
Definition tmp.H:75
Namespace for OpenFOAM.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68