laminarFlameSpeed.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) 2011-2012 OpenFOAM Foundation
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 Namespace
27  Foam::laminarFlameSpeedModels
28 
29 Description
30  Namespace for laminar flame speed models
31 
32 
33 Class
34  Foam::laminarFlameSpeed
35 
36 Description
37  Abstract class for laminar flame speed
38 
39 SourceFiles
40  laminarFlameSpeed.C
41  laminarFlameSpeedNew.C
42 
43 \*---------------------------------------------------------------------------*/
44 
45 #ifndef laminarFlameSpeed_H
46 #define laminarFlameSpeed_H
47 
48 #include "psiuReactionThermo.H"
49 #include "autoPtr.H"
50 #include "runTimeSelectionTables.H"
51 
52 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
53 
54 namespace Foam
55 {
56 
57 /*---------------------------------------------------------------------------*\
58  Class laminarFlameSpeed Declaration
59 \*---------------------------------------------------------------------------*/
60 
62 {
63 
64 protected:
65 
66  // Protected data
67 
69 
70  //- Fuel
71  word fuel_;
72 
73  //- Equivalence ratio of a homogeneous mixture
75 
76 
77 private:
78 
79  // Private Member Functions
80 
81  //- Construct as copy (not implemented)
83  void operator=(const laminarFlameSpeed&);
84 
85 
86 public:
87 
88  //- Runtime type information
89  TypeName("laminarFlameSpeed");
90 
91 
92  // Declare run-time constructor selection table
93 
95  (
96  autoPtr,
98  dictionary,
99  (
100  const dictionary& dict,
101  const psiuReactionThermo& ct
102  ),
103  (dict, ct)
104  );
105 
106 
107  // Constructors
108 
109  //- Construct from dictionary and psiuReactionThermo
111  (
112  const dictionary&,
113  const psiuReactionThermo&
114  );
115 
116 
117  // Selector
118 
120  (
121  const psiuReactionThermo&
122  );
123 
124 
125  //- Destructor
126  virtual ~laminarFlameSpeed();
127 
128 
129  // Member functions
130 
131  //- Return the laminar flame speed [m/s]
132  virtual tmp<volScalarField> operator()() const = 0;
133 };
134 
135 
136 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
137 
138 } // End namespace Foam
139 
140 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
141 
142 #endif
143 
144 // ************************************************************************* //
dictionary dict
virtual tmp< volScalarField > operator()() const =0
Return the laminar flame speed [m/s].
A list of keyword definitions, which are a keyword followed by a number of values (eg...
Definition: dictionary.H:129
scalar equivalenceRatio_
Equivalence ratio of a homogeneous mixture.
A class for handling words, derived from Foam::string.
Definition: word.H:63
declareRunTimeSelectionTable(autoPtr, laminarFlameSpeed, dictionary,(const dictionary &dict, const psiuReactionThermo &ct),(dict, ct))
TypeName("laminarFlameSpeed")
Runtime type information.
static autoPtr< laminarFlameSpeed > New(const psiuReactionThermo &)
Foam::psiuReactionThermo.
Abstract class for laminar flame speed.
const psiuReactionThermo & psiuReactionThermo_
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Definition: HashPtrTable.H:48
Macros to ease declaration of run-time selection tables.
A class for managing temporary objects.
Definition: HashPtrTable.H:50
virtual ~laminarFlameSpeed()
Destructor.
Namespace for OpenFOAM.