mappedVelocityFluxFixedValueFvPatchField.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::mappedVelocityFluxFixedValueFvPatchField
28 
29 Group
30  grpInletBoundaryConditions grpCoupledBoundaryConditions
31 
32 Description
33  This boundary condition maps the velocity and flux from a neighbour patch
34  to this patch
35 
36 Usage
37  \table
38  Property | Description | Required | Default value
39  phi | flux field name | no | phi
40  \endtable
41 
42  Example of the boundary condition specification:
43  \verbatim
44  <patchName>
45  {
46  type mappedVelocityFlux;
47  phi phi;
48  value uniform 0; // place holder
49  }
50  \endverbatim
51 
52  The underlying sample mode should be set to \c nearestPatchFace or
53  \c nearestFace
54 
55 Note
56  This boundary condition can only be applied to patches that are of
57  the \c mappedPolyPatch type.
58 
59 See also
60  Foam::mappedPatchBase
61  Foam::mappedPolyPatch
62  Foam::mappedFvPatch
63  Foam::fixedValueFvPatchVectorField
64 
65 SourceFiles
66  mappedVelocityFluxFixedValueFvPatchField.C
67 
68 \*---------------------------------------------------------------------------*/
69 
70 #ifndef mappedVelocityFluxFixedValueFvPatchField_H
71 #define mappedVelocityFluxFixedValueFvPatchField_H
72 
74 #include "mappedFvPatch.H"
75 
76 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
77 
78 namespace Foam
79 {
80 
81 /*---------------------------------------------------------------------------*\
82  Class mappedVelocityFluxFixedValueFvPatch Declaration
83 \*---------------------------------------------------------------------------*/
84 
85 class mappedVelocityFluxFixedValueFvPatchField
86 :
87  public fixedValueFvPatchVectorField
88 {
89  // Private data
90 
91  //- Name of flux field
92  word phiName_;
93 
94 public:
95 
96  //- Runtime type information
97  TypeName("mappedVelocityFlux");
98 
99 
100  // Constructors
101 
102  //- Construct from patch and internal field
104  (
105  const fvPatch&,
107  );
108 
109  //- Construct from patch, internal field and dictionary
111  (
112  const fvPatch&,
114  const dictionary&
115  );
116 
117  //- Construct by mapping given
118  // mappedVelocityFluxFixedValueFvPatchField
119  // onto a new patch
121  (
123  const fvPatch&,
125  const fvPatchFieldMapper&
126  );
127 
128  //- Construct as copy
130  (
132  );
133 
134  //- Construct and return a clone
135  virtual tmp<fvPatchVectorField> clone() const
136  {
138  (
140  );
141  }
142 
143  //- Construct as copy setting internal field reference
145  (
148  );
149 
150  //- Construct and return a clone setting internal field reference
152  (
154  ) const
155  {
157  (
159  );
160  }
161 
162 
163  // Member functions
164 
165  // Evaluation functions
166 
167  //- Update the coefficients associated with the patch field
168  virtual void updateCoeffs();
169 
170  //- Write
171  virtual void write(Ostream&) const;
172 };
173 
174 
175 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
176 
177 } // End namespace Foam
178 
179 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
180 
181 #endif
182 
183 // ************************************************************************* //
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:61
mappedFvPatch.H
Foam::mappedVelocityFluxFixedValueFvPatchField::updateCoeffs
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Definition: mappedVelocityFluxFixedValueFvPatchField.C:141
Foam::mappedVelocityFluxFixedValueFvPatchField::TypeName
TypeName("mappedVelocityFlux")
Runtime type information.
Foam::mappedVelocityFluxFixedValueFvPatchField
This boundary condition maps the velocity and flux from a neighbour patch to this patch.
Definition: mappedVelocityFluxFixedValueFvPatchField.H:94
Foam::fvPatch
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:65
Foam::mappedVelocityFluxFixedValueFvPatchField::write
virtual void write(Ostream &) const
Write.
Definition: mappedVelocityFluxFixedValueFvPatchField.C:235
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::mappedVelocityFluxFixedValueFvPatchField::mappedVelocityFluxFixedValueFvPatchField
mappedVelocityFluxFixedValueFvPatchField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
Definition: mappedVelocityFluxFixedValueFvPatchField.C:41
fixedValueFvPatchFields.H
Foam::fvPatchFieldMapper
Foam::fvPatchFieldMapper.
Definition: fvPatchFieldMapper.H:47
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:56
Foam::DimensionedField
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Definition: DimensionedField.H:54
Foam::mappedVelocityFluxFixedValueFvPatchField::clone
virtual tmp< fvPatchVectorField > clone() const
Construct and return a clone.
Definition: mappedVelocityFluxFixedValueFvPatchField.H:144