FickianFourier.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) 2020-2022 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::laminarThermophysicalTransportModels::FickianFourier
26 
27 Description
28  Multi-component Fickian and Fourier based temperature gradient heat flux
29  models with optional Soret thermal diffusion of species for laminar flow.
30 
31  The mixture diffusion coefficients are specified as Function2<scalar>s of
32  pressure and temperature but independent of composition.
33 
34  The heat flux source is implemented as an implicit energy correction to the
35  temperature gradient based flux source. At convergence the energy
36  correction is 0.
37 
38 Usage
39  \verbatim
40  laminar
41  {
42  model FickianFourier;
43 
44  mixtureDiffusionCoefficients yes;
45 
46  Dm // [m^2/s]
47  {
48  O2 1e-2;
49  O3 5e-2;
50  N2 1e-2;
51  }
52 
53  DT // [kg/m/s] Optional
54  {
55  O2 1e-2;
56  O3 5e-2;
57  N2 1e-2;
58  }
59  }
60  \endverbatim
61 
62  or if binary mass diffusion coefficient functions are available they can be
63  mixed to form the mass diffusion coefficients w.r.t. the mixture:
64 
65  \verbatim
66  laminar
67  {
68  model FickianFourier;
69 
70  mixtureDiffusionCoefficients no;
71 
72  D // [m^2/s]
73  {
74  O2-O2 1e-2;
75  O3-O3 5e-2;
76  N2-N2 1e-2;
77  O3-O2 5e-2;
78  O3-N2 5e-2;
79  O2-N2 1e-2;
80  }
81 
82  DT // [kg/m/s] Optional
83  {
84  O2 1e-2;
85  O3 5e-2;
86  N2 1e-2;
87  }
88  }
89  \endverbatim
90 
91 SourceFiles
92  FickianFourier.C
93 
94 \*---------------------------------------------------------------------------*/
95 
96 #include "Fickian.H"
97 #include "unityLewisFourier.H"
98 
99 #ifndef FickianFourier_H
100 #define FickianFourier_H
101 
102 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
103 
104 namespace Foam
105 {
106 namespace laminarThermophysicalTransportModels
107 {
108 
109 /*---------------------------------------------------------------------------*\
110  Class FickianFourier Declaration
111 \*---------------------------------------------------------------------------*/
112 
113 template<class laminarThermophysicalTransportModel>
114 class FickianFourier
115 :
116  public Fickian
117  <
118  unityLewisFourier<laminarThermophysicalTransportModel>
119  >
120 {
121 
122 protected:
123 
124  // Protected data
125 
126  // Model coefficients
127 
128  //- Turbulent Schmidt number []
130 
131 
132 public:
133 
135  alphaField;
136 
137  typedef typename
140 
142  thermoModel;
143 
144 
145  //- Runtime type information
146  TypeName("FickianFourier");
147 
148 
149  // Constructors
150 
151  //- Construct from a momentum transport model and a thermo model
153  (
154  const momentumTransportModel& momentumTransport,
155  const thermoModel& thermo
156  );
157 
158 
159  //- Destructor
160  virtual ~FickianFourier()
161  {}
162 
163 
164  // Member Functions
165 
166  //- Read thermophysicalTransport dictionary
167  virtual bool read();
168 };
169 
170 
171 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
172 
173 } // End namespace laminarThermophysicalTransportModels
174 } // End namespace Foam
175 
176 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
177 
178 #ifdef NoRepository
179  #include "FickianFourier.C"
180 #endif
181 
182 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
183 
184 #endif
185 
186 // ************************************************************************* //
BasicThermophysicalTransportModel::alphaField alphaField
BasicThermophysicalTransportModel::thermoModel thermoModel
BasicThermophysicalTransportModel::momentumTransportModel momentumTransportModel
Multi-component Fickian and Fourier based temperature gradient heat flux models with optional Soret t...
FickianFourier(const momentumTransportModel &momentumTransport, const thermoModel &thermo)
Construct from a momentum transport model and a thermo model.
laminarThermophysicalTransportModel::thermoModel thermoModel
laminarThermophysicalTransportModel::alphaField alphaField
TypeName("FickianFourier")
Runtime type information.
laminarThermophysicalTransportModel::momentumTransportModel momentumTransportModel
dimensionedScalar Sct_
Turbulent Schmidt number [].
virtual bool read()
Read thermophysicalTransport dictionary.
Namespace for OpenFOAM.
fluidMulticomponentThermo & thermo
Definition: createFields.H:31