laminarFlameSpeed.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-2026 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 Namespace
25  Foam::laminarFlameSpeedModels
26 
27 Description
28  Namespace for laminar flame speed models
29 
30 
31 Class
32  Foam::laminarFlameSpeed
33 
34 Description
35  Abstract class for laminar flame speed
36 
37 SourceFiles
38  laminarFlameSpeed.C
39  laminarFlameSpeedNew.C
40 
41 \*---------------------------------------------------------------------------*/
42 
43 #ifndef laminarFlameSpeed_H
44 #define laminarFlameSpeed_H
45 
47 #include "runTimeSelectionTables.H"
48 
49 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50 
51 namespace Foam
52 {
53 
54 /*---------------------------------------------------------------------------*\
55  Class laminarFlameSpeed Declaration
56 \*---------------------------------------------------------------------------*/
57 
59 {
60 protected:
61 
62  // Protected data
63 
65 
66 
67 public:
68 
69  //- Runtime type information
70  TypeName("laminarFlameSpeed");
71 
72 
73  // Declare run-time constructor selection table
74 
76  (
77  autoPtr,
79  dictionary,
80  (
81  const dictionary& dict,
82  const dictionary& coeffDict,
83  const uRhoMulticomponentThermo& uThermo
84  ),
85  (dict, coeffDict, uThermo)
86  );
87 
88 
89  // Constructors
90 
91  //- Construct from dictionary and uRhoMulticomponentThermo
93  (
94  const dictionary&,
96  );
97 
98  //- Disallow default bitwise copy construction
99  laminarFlameSpeed(const laminarFlameSpeed&) = delete;
100 
101 
102  // Selector
103 
105  (
106  const dictionary&,
108  );
109 
110 
111  //- Destructor
112  virtual ~laminarFlameSpeed();
113 
114 
115  // Member Functions
116 
117  //- Return the laminar flame speed [m/s]
118  virtual tmp<volScalarField> Su
119  (
120  const volScalarField& p,
121  const volScalarField& Tu,
122  const volScalarField& Phi
123  ) const = 0;
124 
125  //- Return the laminar flame speed [m/s]
126  // including EGR effects
127  virtual tmp<volScalarField> Su
128  (
129  const volScalarField& p,
130  const volScalarField& Tu,
131  const volScalarField& Phi,
132  const volScalarField& egr
133  ) const = 0;
134 
135  //- Return the laminar flame speed [m/s]
136  // assuming a single fuel specie
137  virtual tmp<volScalarField> Su() const;
138 
139 
140  // Member Operators
141 
142  //- Disallow default bitwise assignment
143  void operator=(const laminarFlameSpeed&) = delete;
144 };
145 
146 
147 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148 
149 } // End namespace Foam
150 
151 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
152 
153 #endif
154 
155 // ************************************************************************* //
Generic GeometricField class.
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 class for laminar flame speed.
laminarFlameSpeed(const dictionary &, const uRhoMulticomponentThermo &)
Construct from dictionary and uRhoMulticomponentThermo.
void operator=(const laminarFlameSpeed &)=delete
Disallow default bitwise assignment.
virtual tmp< volScalarField > Su() const
Return the laminar flame speed [m/s].
const uRhoMulticomponentThermo & uThermo_
TypeName("laminarFlameSpeed")
Runtime type information.
declareRunTimeSelectionTable(autoPtr, laminarFlameSpeed, dictionary,(const dictionary &dict, const dictionary &coeffDict, const uRhoMulticomponentThermo &uThermo),(dict, coeffDict, uThermo))
virtual ~laminarFlameSpeed()
Destructor.
static autoPtr< laminarFlameSpeed > New(const dictionary &, const uRhoMulticomponentThermo &)
A class for managing temporary objects.
Definition: tmp.H:55
Base-class for combustion fluid thermodynamic properties based on compressibility.
Namespace for OpenFOAM.
Macros to ease declaration of run-time selection tables.
dictionary dict
volScalarField & p