alphatPhaseChangeWallFunctionBase.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2015-2023 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::compressible::alphatPhaseChangeWallFunctionBase
26 
27 Description
28  Abstract base-class for all alphatWallFunctions supporting phase-change.
29 
30 SourceFiles
31  alphatPhaseChangeWallFunctionBase.C
32 
33 \*---------------------------------------------------------------------------*/
34 
35 #ifndef alphatPhaseChangeWallFunctionBase_H
36 #define alphatPhaseChangeWallFunctionBase_H
37 
38 #include "fvPatchFields.H"
39 
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41 
42 namespace Foam
43 {
44 
45 class phaseInterface;
46 
47 namespace compressible
48 {
49 
50 /*---------------------------------------------------------------------------*\
51  Class alphatPhaseChangeWallFunctionBase Declaration
52 \*---------------------------------------------------------------------------*/
53 
55 {
56 protected:
57 
58  // Protected data
59 
60  //- Name of the phase
61  const word phaseName_;
62 
63  //- Name of the other phase
64  const word otherPhaseName_;
65 
66 
67 public:
68 
69  //- Runtime type information
70  TypeName("compressible::alphatPhaseChangeWallFunctionBase");
71 
72 
73  // Constructors
74 
75  //- Construct null
77 
78  //- Construct from a patch, an internal field and a dictionary
80  (
81  const fvPatch& p,
83  const dictionary&
84  );
85 
86 
87  // Destructor
89 
90 
91  // Member Functions
92 
93  //- Is there phase change mass transfer for this interface?
94  bool activeInterface(const phaseInterface&) const;
95 
96  //- Return the rate of phase-change
97  virtual const scalarField& dmdtf() const = 0;
98 
99  //- Write
100  virtual void write(Ostream&) const;
101 };
102 
103 
104 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105 
106 } // End namespace compressible
107 } // End namespace Foam
108 
109 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
110 
111 #endif
112 
113 // ************************************************************************* //
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:57
Abstract base-class for all alphatWallFunctions supporting phase-change.
bool activeInterface(const phaseInterface &) const
Is there phase change mass transfer for this interface?
TypeName("compressible::alphatPhaseChangeWallFunctionBase")
Runtime type information.
virtual const scalarField & dmdtf() const =0
Return the rate of phase-change.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Definition: dictionary.H:160
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:64
Class to represent an interface between phases. Derivations can further specify the configuration of ...
A class for handling words, derived from string.
Definition: word.H:62
Namespace for OpenFOAM.
volScalarField & p