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 | Copyright (C) 2012 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 Class
25  Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField
26 
27 Description
28  Film velocity boundary condition for inclined films that imposes a
29  sinusoidal perturbation on top of a mean flow rate, where the velocity is
30  calculated using the Nusselt solution.
31 
32 SourceFiles
33  inclinedFilmNusseltInletVelocityFvPatchVectorField.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef inclinedFilmNusseltInletVelocityFvPatchVectorField_H
38 #define inclinedFilmNusseltInletVelocityFvPatchVectorField_H
39 
40 #include "fvPatchFields.H"
42 #include "DataEntry.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 
49 /*---------------------------------------------------------------------------*\
50  Class inclinedFilmNusseltInletVelocityFvPatchVectorField Declaration
51 \*---------------------------------------------------------------------------*/
52 
54 :
55  public fixedValueFvPatchVectorField
56 {
57  // Private data
58 
59  //- Mean mass flow rate per unit length [kg/s/m]
60  autoPtr<DataEntry<scalar> > GammaMean_;
61 
62  //- Perturbation amplitude [m]
64 
65  //- Perturbation frequency [rad/s/m]
67 
68 
69 public:
70 
71  //- Runtime type information
72  TypeName("inclinedFilmNusseltInletVelocity");
73 
74 
75  // Constructors
76 
77  //- Construct from patch and internal field
79  (
80  const fvPatch&,
82  );
83 
84  //- Construct from patch, internal field and dictionary
86  (
87  const fvPatch&,
89  const dictionary&
90  );
91 
92  //- Construct by mapping given
93  // inclinedFilmNusseltInletVelocityFvPatchVectorField onto a new patch
95  (
97  const fvPatch&,
99  const fvPatchFieldMapper&
100  );
101 
102  //- Construct as copy
104  (
106  );
107 
108  //- Construct and return a clone
109  virtual tmp<fvPatchVectorField> clone() const
110  {
112  (
114  );
115  }
116 
117  //- Construct as copy setting internal field reference
119  (
122  );
123 
124  //- Construct and return a clone setting internal field reference
126  (
128  ) const
129  {
131  (
133  (
134  *this, iF
135  )
136  );
137  }
138 
139 
140  // Member functions
141 
142  //- Update the coefficients associated with the patch field
143  virtual void updateCoeffs();
144 
145  //- Write
146  virtual void write(Ostream&) const;
147 };
148 
149 
150 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
151 
152 } // End namespace Foam
153 
154 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
155 
156 #endif
157 
158 // ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
TypeName("inclinedFilmNusseltInletVelocity")
Runtime type information.
Foam::fvPatchFieldMapper.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition: dictionary.H:137
virtual tmp< fvPatchVectorField > clone() const
Construct and return a clone.
Namespace for OpenFOAM.
inclinedFilmNusseltInletVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
Definition: Ostream.H:53
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:61
Film velocity boundary condition for inclined films that imposes a sinusoidal perturbation on top of ...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: PtrList.H:117
A class for managing temporary objects.
Definition: PtrList.H:118