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
74  scalar equivalenceRatio_;
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 // ************************************************************************* //
psiuReactionThermo.H
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::laminarFlameSpeed::operator()
virtual tmp< volScalarField > operator()() const =0
Return the laminar flame speed [m/s].
Foam::laminarFlameSpeed::fuel_
word fuel_
Fuel.
Definition: laminarFlameSpeed.H:70
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:61
Foam::psiuReactionThermo
Foam::psiuReactionThermo.
Definition: psiuReactionThermo.H:55
Foam::laminarFlameSpeed::equivalenceRatio_
scalar equivalenceRatio_
Equivalence ratio of a homogeneous mixture.
Definition: laminarFlameSpeed.H:73
Foam::laminarFlameSpeed::psiuReactionThermo_
const psiuReactionThermo & psiuReactionThermo_
Definition: laminarFlameSpeed.H:67
Foam::laminarFlameSpeed::TypeName
TypeName("laminarFlameSpeed")
Runtime type information.
Foam::laminarFlameSpeed::~laminarFlameSpeed
virtual ~laminarFlameSpeed()
Destructor.
Definition: laminarFlameSpeed.C:63
dict
dictionary dict
Definition: searchingEngine.H:14
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::autoPtr
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: HashPtrTable.H:53
Foam::laminarFlameSpeed::declareRunTimeSelectionTable
declareRunTimeSelectionTable(autoPtr, laminarFlameSpeed, dictionary,(const dictionary &dict, const psiuReactionThermo &ct),(dict, ct))
runTimeSelectionTables.H
Macros to ease declaration of run-time selection tables.
Foam::laminarFlameSpeed
Abstract class for laminar flame speed.
Definition: laminarFlameSpeed.H:60
Foam::laminarFlameSpeed::New
static autoPtr< laminarFlameSpeed > New(const psiuReactionThermo &)
Definition: laminarFlameSpeedNew.C:34
autoPtr.H