transport.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) 2011-2024 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::XiModels::transport
26 
27 Description
28  Transport model for flame wrinkling \c Xi
29 
30  See Foam::XiModel for more details on flame wrinkling modelling.
31 
32  References:
33  \verbatim
34  Weller, H. G. (1993).
35  The development of a new flame area combustion model
36  using conditional averaging.
37  Thermo-fluids section report TF 9307.
38 
39  Weller, H. G., Tabor, G., Gosman, A. D., & Fureby, C. (1998, January).
40  Application of a flame-wrinkling LES combustion model
41  to a turbulent mixing layer.
42  In Symposium (International) on combustion
43  (Vol. 27, No. 1, pp. 899-907). Elsevier.
44  \endverbatim
45 
46 SourceFiles
47  transport.C
48 
49 \*---------------------------------------------------------------------------*/
50 
51 #ifndef transport_H
52 #define transport_H
53 
54 #include "XiModel.H"
55 
56 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
57 
58 namespace Foam
59 {
60 
61 class XiEqModel;
62 class XiProfile;
63 class XiGModel;
64 
65 namespace XiModels
66 {
67 
68 /*---------------------------------------------------------------------------*\
69  Class transport Declaration
70 \*---------------------------------------------------------------------------*/
71 
72 class transport
73 :
74  public XiModel
75 {
76  // Private Data
77 
78  autoPtr<XiEqModel> XiEqModel_;
79  autoPtr<XiProfile> XiProfile_;
80  autoPtr<XiGModel> XiGModel_;
81 
82 
83 protected:
84 
85  //- Update coefficients from given dictionary
86  virtual bool readCoeffs(const dictionary& dict);
87 
88 
89 public:
90 
91  //- Runtime type information
92  TypeName("transport");
93 
94 
95  // Constructors
96 
97  //- Construct from components
98  transport
99  (
100  const dictionary& dict,
103  const volScalarField& Su
104  );
105 
106  //- Disallow default bitwise copy construction
107  transport(const transport&) = delete;
108 
109 
110  //- Destructor
111  virtual ~transport();
112 
113 
114  // Member Functions
115 
116  //- Return the flame diffusivity
117  virtual tmp<volScalarField> Db() const;
118 
119  //- Add Xi to the multivariateSurfaceInterpolationScheme table
120  virtual void addXi
121  (
123  )
124  {
125  fields.add(Xi_);
126  }
127 
128  //- Correct the flame-wrinkling Xi
129  virtual void correct();
130 
131 
132  // Member Operators
133 
134  //- Disallow default bitwise assignment
135  void operator=(const transport&) = delete;
136 };
137 
138 
139 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140 
141 } // End namespace XiModels
142 } // End namespace Foam
143 
144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
145 
146 #endif
147 
148 // ************************************************************************* //
Generic GeometricField class.
Templated abstract base class for thermophysical transport models.
Base-class for all Xi models used by the b-Xi combustion model.
Definition: XiModel.H:117
volScalarField Xi_
Flame wrinkling field.
Definition: XiModel.H:139
Transport model for flame wrinkling Xi.
Definition: transport.H:74
transport(const dictionary &dict, const psiuMulticomponentThermo &thermo, const fluidThermoThermophysicalTransportModel &turbulence, const volScalarField &Su)
Construct from components.
Definition: transport.C:61
void operator=(const transport &)=delete
Disallow default bitwise assignment.
virtual void correct()
Correct the flame-wrinkling Xi.
Definition: transport.C:92
TypeName("transport")
Runtime type information.
virtual void addXi(multivariateSurfaceInterpolationScheme< scalar >::fieldTable &fields)
Add Xi to the multivariateSurfaceInterpolationScheme table.
Definition: transport.H:120
virtual bool readCoeffs(const dictionary &dict)
Update coefficients from given dictionary.
Definition: transport.C:50
virtual tmp< volScalarField > Db() const
Return the flame diffusivity.
Definition: transport.C:86
virtual ~transport()
Destructor.
Definition: transport.C:80
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 keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Definition: dictionary.H:162
Abstract base class for multi-variate surface interpolation schemes.
Base-class for combustion fluid thermodynamic properties based on compressibility.
A class for managing temporary objects.
Definition: tmp.H:55
Info<< "Calculating turbulent flame speed field St\n"<< endl;volScalarField St(IOobject("St", runTime.name(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), flameWrinkling->Xi() *Su);multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
Definition: createFields.H:234
tmp< VolField< Type > > Su(const VolField< Type > &su, const VolField< Type > &vf)
Definition: fvcSup.C:44
Namespace for OpenFOAM.
dictionary dict
autoPtr< incompressible::momentumTransportModel > turbulence(incompressible::momentumTransportModel::New(U, phi, viscosity))
fluidMulticomponentThermo & thermo
Definition: createFields.H:31