interfaceSaturationTemperatureModel.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::interfaceSaturationTemperatureModel
26 
27 Description
28  Wrapper around saturationTemperatureModel to facilitate convenient
29  construction on interfaces
30 
31 SourceFiles
32  interfaceSaturationTemperatureModel.C
33  interfaceSaturationTemperatureModelNew.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef interfaceSaturationTemperatureModel_H
38 #define interfaceSaturationTemperatureModel_H
39 
40 #include "volFields.H"
41 #include "dictionary.H"
42 #include "phaseInterface.H"
44 
45 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 
47 namespace Foam
48 {
49 
50 /*---------------------------------------------------------------------------*\
51  Class interfaceSaturationTemperatureModel Declaration
52 \*---------------------------------------------------------------------------*/
53 
55 :
56  public regIOobject
57 {
58  // Private Data
59 
60  //- The saturation temperature model
61  autoPtr<saturationTemperatureModel> saturationModel_;
62 
63  //- The interface
64  const phaseInterface interface_;
65 
66 
67 public:
68 
69  //- Runtime type information
70  TypeName("saturationTemperatureModel");
71 
72 
73  //- Declare runtime construction
75  (
76  autoPtr,
78  dictionary,
79  (
80  const dictionary& dict,
82  ),
83  (dict, interface)
84  );
85 
86 
87  // Constructors
88 
89  //- Construct from a dictionary and an interface
91  (
92  const dictionary& dict,
94  );
95 
96  // Selectors
97 
99  (
100  const dictionary& dict,
101  const phaseInterface& interface,
102  const bool outer=true
103  );
104 
105  //- Destructor
107 
108 
109  // Member Functions
110 
111  //- Access the interface
112  const phaseInterface& interface() const;
113 
114  //- Saturation temperature
116 
117  // Dummy write for regIOobject
118  bool writeData(Ostream& os) const;
119 };
120 
121 
122 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
123 
124 } // End namespace Foam
125 
126 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
127 
128 #endif
129 
130 // ************************************************************************* //
Generic GeometricField class.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:57
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: autoPtr.H:51
A list of keyword definitions, which are a keyword followed by any number of values (e....
Definition: dictionary.H:162
Wrapper around saturationTemperatureModel to facilitate convenient construction on interfaces.
declareRunTimeSelectionTable(autoPtr, interfaceSaturationTemperatureModel, dictionary,(const dictionary &dict, const phaseInterface &interface),(dict, interface))
Declare runtime construction.
const phaseInterface & interface() const
Access the interface.
bool writeData(Ostream &os) const
Pure virtual writaData function.
tmp< volScalarField > Tsat(const volScalarField &p) const
Saturation temperature.
TypeName("saturationTemperatureModel")
Runtime type information.
static autoPtr< interfaceSaturationTemperatureModel > New(const dictionary &dict, const phaseInterface &interface, const bool outer=true)
interfaceSaturationTemperatureModel(const dictionary &dict, const phaseInterface &interface)
Construct from a dictionary and an interface.
Class to represent an interface between phases. Derivations can further specify the configuration of ...
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
Definition: regIOobject.H:55
A class for managing temporary objects.
Definition: tmp.H:55
Namespace for OpenFOAM.
void outer(FieldField< Field1, typename outerProduct< Type1, Type2 >::type > &f, const FieldField< Field1, Type1 > &f1, const FieldField< Field2, Type2 > &f2)
dictionary dict
volScalarField & p