pressureInletUniformVelocityFvPatchVectorField.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 -------------------------------------------------------------------------------
10 License
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 
26 Class
27  Foam::pressureInletUniformVelocityFvPatchVectorField
28 
29 Group
30  grpInletBoundaryConditions
31 
32 Description
33  This velocity inlet boundary condition is applied to patches where the
34  pressure is specified. The uniform inflow velocity is obtained by
35  averaging the flux over the patch, and then applying it in the direction
36  normal to the patch faces.
37 
38 Usage
39  Example of the boundary condition specification:
40  \verbatim
41  <patchName>
42  {
43  type pressureInletUniformVelocity;
44  value uniform 0;
45  }
46  \endverbatim
47 
48 SourceFiles
49  pressureInletUniformVelocityFvPatchVectorField.C
50 
51 \*---------------------------------------------------------------------------*/
52 
53 #ifndef pressureInletUniformVelocityFvPatchVectorField_H
54 #define pressureInletUniformVelocityFvPatchVectorField_H
55 
57 
58 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
59 
60 namespace Foam
61 {
62 
63 /*---------------------------------------------------------------------------*\
64  Class pressureInletUniformVelocityFvPatchVectorField Declaration
65 \*---------------------------------------------------------------------------*/
66 
68 :
70 {
71 
72 public:
73 
74  //- Runtime type information
75  TypeName("pressureInletUniformVelocity");
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
96  // pressureInletUniformVelocityFvPatchVectorField onto a new patch
98  (
100  const fvPatch&,
102  const fvPatchFieldMapper&
103  );
104 
105  //- Construct as copy
107  (
109  );
110 
111  //- Construct as copy setting internal field reference
113  (
116  );
117 
118  //- Return a clone
119  virtual tmp<fvPatchField<vector>> clone() const
120  {
121  return fvPatchField<vector>::Clone(*this);
122  }
123 
124  //- Clone with an internal field reference
126  (
128  ) const
129  {
130  return fvPatchField<vector>::Clone(*this, iF);
131  }
132 
133 
134  // Member Functions
135 
136  //- True: this patch field is altered by assignment
137  virtual bool assignable() const { return true; }
139 
140  //- Update the coefficients associated with the patch field
141  virtual void updateCoeffs();
142 
143 
144  // Member operators
145 
146  virtual void operator=(const fvPatchField<vector>& pvf);
147 };
148 
149 
150 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
152 } // End namespace Foam
153 
154 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
155 
156 #endif
157 
158 // ************************************************************************* //
A list of keyword definitions, which are a keyword followed by a number of values (eg...
Definition: dictionary.H:129
virtual bool assignable() const
True: this patch field is altered by assignment.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:70
static tmp< fvPatchField< Type > > Clone(const DerivedPatchField &pf, Args &&... args)
Clone a patch field, optionally with internal field reference etc.
Definition: fvPatchField.H:597
A FieldMapper for finite-volume patch fields.
This velocity inlet boundary condition is applied to patches where the pressure is specified...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
TypeName("pressureInletUniformVelocity")
Runtime type information.
This velocity inlet boundary condition is applied to patches where the pressure is specified...
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
pressureInletUniformVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
A class for managing temporary objects.
Definition: HashPtrTable.H:50
virtual tmp< fvPatchField< vector > > clone() const
Return a clone.
Namespace for OpenFOAM.