linear.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-2018 OpenFOAM Foundation
9 Copyright (C) 2021 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::wallBoilingModels::partitioningModels::linear
29
30Description
31 A linear model for wall heat flux partitioning based on
32 Ioilev et al. (2007) for boiling flows.
33
34 Reference:
35 \verbatim
36 Ioilev, A., Samigulin, M., Ustinenko, V.,
37 Kucherova, P., Tentner, A., Lo, S., & Splawski, A. (2007).
38 Advances in the modeling of cladding heat transfer
39 and critical heat flux in boiling water reactor fuel assemblies.
40 In Proc. 12th International Topical Meeting on Nuclear Reactor
41 Thermal Hydraulics (NURETH-12).
42 Pittsburgh, Pennsylvania, USA.
43 \endverbatim
44
45Usage
46 Example of the model specification:
47 \verbatim
48 partitioningModel
49 {
50 // Mandatory entries
51 type linear;
52 alphaLiquid1 <scalar>;
53 alphaLiquid0 <scalar>;
54 }
55 \endverbatim
56
57 where the entries mean:
58 \table
59 Property | Description | Type | Reqd | Deflt
60 type | Type name: linear | word | yes | -
61 alphaLiquid1 | Model parameters for threshold liquid phase fraction <!--
62 --> | scalar | yes | -
63 alphaLiquid0 | Model parameters for threshold liquid phase fraction <!--
64 --> | scalar | yes | -
65 \endtable
66
67Note
68 - Proposed threshold liquid fractions:
69 - alphaLiquid1 0.1
70 - alphaLiquid0 0.05
71
72SourceFiles
73 linear.C
74
75\*---------------------------------------------------------------------------*/
76
77#ifndef linear_H
78#define linear_H
79
80#include "partitioningModel.H"
81
82// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
83
84namespace Foam
85{
86namespace wallBoilingModels
87{
88namespace partitioningModels
89{
90
91/*---------------------------------------------------------------------------*\
92 Class linear Declaration
93\*---------------------------------------------------------------------------*/
94
95class linear
96:
97 public partitioningModel
98{
99 // Private Data
100
101 //- Model parameters for threshold liquid phase fraction
102 scalar alphaLiquid1_;
103
104 //- Model parameters for threshold liquid phase fraction
105 scalar alphaLiquid0_;
106
107
108 // Private Member Functions
109
110 //- No copy construct
111 linear(const linear&) = delete;
112
113 //- No copy assignment
114 void operator=(const linear&) = delete;
115
116
117public:
118
119 //- Runtime type information
120 TypeName("linear");
121
123 // Constructors
124
125 //- Construct from a dictionary
126 linear(const dictionary& dict);
127
128
129 //- Destructor
130 virtual ~linear() = default;
131
132
133 // Member Functions
134
135 //- Calculate and return the wall heat-flux partitioning
136 virtual tmp<scalarField> fLiquid(const scalarField& alphaLiquid) const;
137
138 // I-O
139
140 //- Write
141 virtual void write(Ostream& os) const;
142};
143
144
145// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
146
147} // End namespace partitioningModels
148} // End namespace wallBoilingModels
149} // End namespace Foam
150
151// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
152
153#endif
154
155// ************************************************************************* //
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:62
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
A class for managing temporary objects.
Definition: tmp.H:65
Base class for wall heat flux partitioning models.
A linear model for wall heat flux partitioning based on Ioilev et al. (2007) for boiling flows.
Definition: linear.H:125
virtual tmp< scalarField > fLiquid(const scalarField &alphaLiquid) const
Calculate and return the wall heat-flux partitioning.
Definition: linear.C:68
TypeName("linear")
Runtime type information.
OBJstream os(runTime.globalPath()/outputName)
Namespace for OpenFOAM.
runTime write()
dictionary dict
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73