Loading...
Searching...
No Matches
maxwellSlipUFvPatchVectorField.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-2012 OpenFOAM Foundation
9 Copyright (C) 2017 OpenCFD Ltd.
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27Class
28 Foam::maxwellSlipUFvPatchVectorField
29
30Description
31 Maxwell slip boundary condition including thermal creep and surface
32 curvature terms that can be optionally switched off.
33
34SourceFiles
35 fixedRhoFvPatchScalarField.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef maxwellSlipUFvPatchVectorField_H
40#define maxwellSlipUFvPatchVectorField_H
41
43#include "Switch.H"
44
45// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46
47namespace Foam
48{
50/*---------------------------------------------------------------------------*\
51 Class maxwellSlipUFvPatch Declaration
52\*---------------------------------------------------------------------------*/
53
55:
56 public partialSlipFvPatchVectorField
57{
58 // Private data
59
60 //- Temperature field name, default = "T"
61 word TName_;
62
63 //- Density field name, default = "rho"
64 word rhoName_;
65
66 //- Compressibility field name, default = "thermo:psi"
67 word psiName_;
68
69 //- Dynamic viscosity field name, default = "thermo:mu"
70 word muName_;
71
72 //- tauMC field name, default = "tauMC"
73 word tauMCName_;
74
75 // Accommodation coefficient
76 scalar accommodationCoeff_;
77
78 // Wall velocity
79 vectorField Uwall_;
80
81 // Include thermal creep term (default on)
82 Switch thermalCreep_;
83
84 // Include boundary curvature term (default on)
85 Switch curvature_;
86
87
88public:
89
90 //- Runtime type information
91 TypeName("maxwellSlipU");
92
93
94 // Constructors
95
96 //- Construct from patch and internal field
98 (
99 const fvPatch&,
101 );
102
103 //- Construct from patch, internal field and dictionary
105 (
106 const fvPatch&,
108 const dictionary&
109 );
110
111 //- Construct by mapping given
112 // maxwellSlipUFvPatchVectorField onto a new patch
114 (
116 const fvPatch&,
118 const fvPatchFieldMapper&
119 );
120
121 //- Construct as copy setting internal field reference
123 (
126 );
128 //- Return a clone
129 virtual tmp<fvPatchField<vector>> clone() const
130 {
131 return fvPatchField<vector>::Clone(*this);
132 }
133
134 //- Clone with an internal field reference
136 (
138 ) const
139 {
140 return fvPatchField<vector>::Clone(*this, iF);
141 }
142
143
144 // Member functions
145
146 //- Update the coefficients associated with the patch field
147 virtual void updateCoeffs();
148
149 //- Write
150 virtual void write(Ostream&) const;
151};
152
153
154// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
156} // End namespace Foam
157
158// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
159
160#endif
161
162// ************************************************************************* //
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 simple wrapper around bool so that it can be read as a word: true/false, on/off,...
Definition Switch.H:81
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
maxwellSlipUFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual tmp< fvPatchField< vector > > clone() const
Return a clone.
TypeName("maxwellSlipU")
Runtime type information.
virtual tmp< fvPatchField< vector > > clone(const DimensionedField< vector, volMesh > &iF) const
Clone with an internal field reference.
maxwellSlipUFvPatchVectorField(const maxwellSlipUFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
Construct by mapping given.
maxwellSlipUFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
maxwellSlipUFvPatchVectorField(const maxwellSlipUFvPatchVectorField &, const DimensionedField< vector, volMesh > &)
Construct as copy setting internal field reference.
virtual void write(Ostream &) const
Write.
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.
Field< vector > vectorField
Specialisation of Field<T> for vector.
runTime write()
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68