inclinedFilmNusseltInletVelocityFvPatchVectorField.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) 2012-2016 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::inclinedFilmNusseltInletVelocityFvPatchVectorField
28
29Description
30 Film velocity boundary condition for inclined films that imposes a
31 sinusoidal perturbation on top of a mean flow rate, where the velocity is
32 calculated using the Nusselt solution.
33
34SourceFiles
35 inclinedFilmNusseltInletVelocityFvPatchVectorField.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef inclinedFilmNusseltInletVelocityFvPatchVectorField_H
40#define inclinedFilmNusseltInletVelocityFvPatchVectorField_H
41
42#include "fvPatchFields.H"
44#include "Function1.H"
45
46// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47
48namespace Foam
49{
50
51/*---------------------------------------------------------------------------*\
52 Class inclinedFilmNusseltInletVelocityFvPatchVectorField Declaration
53\*---------------------------------------------------------------------------*/
56:
57 public fixedValueFvPatchVectorField
58{
59 // Private data
60
61 //- Name of film region
62 word filmRegionName_;
63
64 //- Mean mass flow rate per unit length [kg/s/m]
65 autoPtr<Function1<scalar>> GammaMean_;
66
67 //- Perturbation amplitude [m]
69
70 //- Perturbation frequency [rad/s/m]
72
73
74public:
75
76 //- Runtime type information
77 TypeName("inclinedFilmNusseltInletVelocity");
78
79
80 // Constructors
81
82 //- Construct from patch and internal field
84 (
85 const fvPatch&,
87 );
88
89 //- Construct from patch, internal field and dictionary
91 (
92 const fvPatch&,
94 const dictionary&
95 );
96
97 //- Construct by mapping given
98 // inclinedFilmNusseltInletVelocityFvPatchVectorField onto a new patch
100 (
102 const fvPatch&,
104 const fvPatchFieldMapper&
105 );
106
107 //- Construct as copy
109 (
111 );
112
113 //- Construct and return a clone
114 virtual tmp<fvPatchVectorField> clone() const
115 {
117 (
119 );
120 }
121
122 //- Construct as copy setting internal field reference
124 (
127 );
128
129 //- Construct and return a clone setting internal field reference
131 (
133 ) const
134 {
136 (
138 (
139 *this, iF
140 )
141 );
142 }
143
144
145 // Member functions
146
147 //- Update the coefficients associated with the patch field
148 virtual void updateCoeffs();
149
150 //- Write
151 virtual void write(Ostream&) const;
152};
153
154
155// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
156
157} // End namespace Foam
158
159// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
160
161#endif
162
163// ************************************************************************* //
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
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: autoPtr.H:66
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
A FieldMapper for finite-volume patch fields.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:71
Film velocity boundary condition for inclined films that imposes a sinusoidal perturbation on top of ...
TypeName("inclinedFilmNusseltInletVelocity")
Runtime type information.
virtual tmp< fvPatchVectorField > clone(const DimensionedField< vector, volMesh > &iF) const
Construct and return a clone setting internal field reference.
virtual tmp< fvPatchVectorField > clone() const
Construct and return a clone.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A class for managing temporary objects.
Definition: tmp.H:65
A class for handling words, derived from Foam::string.
Definition: word.H:68
Namespace for OpenFOAM.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73