Loading...
Searching...
No Matches
inclinedFilmNusseltHeightFvPatchScalarField.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::inclinedFilmNusseltHeightFvPatchScalarField
28
29Description
30 Film height boundary condition for inclined films that imposes a
31 sinusoidal perturbation on top of a mean flow rate, where the height is
32 calculated using the Nusselt solution.
33
34SourceFiles
35 inclinedFilmNusseltHeightFvPatchScalarField.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef inclinedFilmNusseltHeightFvPatchScalarField_H
40#define inclinedFilmNusseltHeightFvPatchScalarField_H
41
42#include "fvPatchFields.H"
44#include "Function1.H"
45
46// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47
48namespace Foam
49{
51/*---------------------------------------------------------------------------*\
52 Class inclinedFilmNusseltHeightFvPatchScalarField Declaration
53\*---------------------------------------------------------------------------*/
54
56:
57 public fixedValueFvPatchScalarField
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("inclinedFilmNusseltHeight");
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 // inclinedFilmNusseltHeightFvPatchScalarField onto a new patch
100 (
102 const fvPatch&,
104 const fvPatchFieldMapper&
105 );
106
107 //- Construct as copy
109 (
111 );
112
113 //- Construct as copy setting internal field reference
115 (
118 );
119
120 //- Return a clone
121 virtual tmp<fvPatchField<scalar>> clone() const
122 {
123 return fvPatchField<scalar>::Clone(*this);
124 }
125
126 //- Clone with an internal field reference
128 (
130 ) const
131 {
132 return fvPatchField<scalar>::Clone(*this, iF);
133 }
134
135
136 // Member functions
137
138 //- Update the coefficients associated with the patch field
139 virtual void updateCoeffs();
140
141 //- Write
142 virtual void write(Ostream&) const;
143};
144
145
146// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148} // End namespace Foam
149
150// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
151
152#endif
153
154// ************************************************************************* //
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:59
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition autoPtr.H:65
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition dictionary.H:133
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
virtual tmp< fvPatchField< scalar > > clone(const DimensionedField< scalar, volMesh > &iF) const
Clone with an internal field reference.
virtual tmp< fvPatchField< scalar > > clone() const
Return a clone.
inclinedFilmNusseltHeightFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
TypeName("inclinedFilmNusseltHeight")
Runtime type information.
A class for managing temporary objects.
Definition tmp.H:75
A class for handling words, derived from Foam::string.
Definition word.H:66
Namespace for OpenFOAM.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68