Loading...
Searching...
No Matches
waveAlphaFvPatchScalarField.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) 2016 OpenCFD Ltd.
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::waveAlphaFvPatchScalarField
28
29Description
30
31 Example of the boundary condition specification:
32 \verbatim
33 inlet
34 {
35 type waveAlpha;
36 value uniform (0 0 0);
37 }
38 \endverbatim
39
40Usage
41 \table
42 Property | Description | Required | Default value
43 type | type: waveAlpha | yes |
44 waveDict | Dictionary specifying wave variables | no | waveProperties
45 \endtable
46
47Note
48 - The value is positive inwards
49 - May not work correctly for transonic inlets
50 - Strange behaviour with potentialFoam since the U equation is not solved
51
52SourceFiles
53 waveAlphaFvPatchScalarField.C
54
55\*---------------------------------------------------------------------------*/
56
57#ifndef waveAlphaFvPatchScalarField_H
58#define waveAlphaFvPatchScalarField_H
59
61
62// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
63
64namespace Foam
65{
66/*---------------------------------------------------------------------------*\
67 class waveAlphaFvPatchScalarField Declaration
68\*---------------------------------------------------------------------------*/
69
71:
72 public fixedValueFvPatchScalarField
73{
74 // Private data
75
76 //- Dictionary name
77 word waveDictName_;
78
79
80public:
81
82 //- Runtime type information
83 TypeName("waveAlpha");
84
85
86 // Constructors
87
88 //- Construct from patch and internal field
90 (
91 const fvPatch&,
93 );
94
95 //- Construct from patch, internal field and dictionary
97 (
98 const fvPatch&,
100 const dictionary&
101 );
102
103 //- Construct by mapping given
104 // waveAlphaFvPatchScalarField
105 // onto a new patch
107 (
109 const fvPatch&,
111 const fvPatchFieldMapper&
112 );
113
114 //- Construct as copy
116 (
118 );
119
120 //- Construct as copy setting internal field reference
122 (
125 );
126
127 //- Return a clone
128 virtual tmp<fvPatchField<scalar>> clone() const
129 {
130 return fvPatchField<scalar>::Clone(*this);
131 }
132
133 //- Clone with an internal field reference
135 (
137 ) const
138 {
139 return fvPatchField<scalar>::Clone(*this, iF);
140 }
141
142
143 // Member functions
144
145 //- Update the coefficients associated with the patch field
146 virtual void updateCoeffs();
147
148 //- Write
149 virtual void write(Ostream&) const;
150};
151
152
153// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
154
155} // End namespace Foam
156
157// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
158
159#endif
160
161// ************************************************************************* //
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
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
A class for managing temporary objects.
Definition tmp.H:75
Example of the boundary condition specification:
waveAlphaFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
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.
TypeName("waveAlpha")
Runtime type information.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
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