laminar.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) 2013-2018 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::combustionModels::laminar
26 
27 Description
28  Laminar combustion model.
29 
30 SourceFiles
31  laminar.C
32 
33 \*---------------------------------------------------------------------------*/
34 
35 #ifndef laminar_H
36 #define laminar_H
37 
38 #include "ChemistryCombustion.H"
39 
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
41 
42 namespace Foam
43 {
44 namespace combustionModels
45 {
46 
47 /*---------------------------------------------------------------------------*\
48  Class laminar Declaration
49 \*---------------------------------------------------------------------------*/
50 
51 template<class ReactionThermo>
52 class laminar
53 :
54  public ChemistryCombustion<ReactionThermo>
55 {
56  // Private data
57 
58  //- Integrate reaction rate over the time-step
59  // using the selected ODE solver
60  bool integrateReactionRate_;
61 
62 protected:
63 
64  // Protected Member Functions
65 
66  //- Return the chemical time scale
67  tmp<volScalarField> tc() const;
68 
69 private:
70 
71  // Private Member Functions
72 
73  //- Disallow copy construct
74  laminar(const laminar&);
75 
76  //- Disallow default bitwise assignment
77  void operator=(const laminar&);
78 
79 
80 public:
81 
82  //- Runtime type information
83  TypeName("laminar");
84 
85 
86  // Constructors
87 
88  //- Construct from components
89  laminar
90  (
91  const word& modelType,
92  ReactionThermo& thermo,
93  const compressibleTurbulenceModel& turb,
94  const word& combustionProperties
95  );
96 
97 
98  //- Destructor
99  virtual ~laminar();
100 
101 
102  // Member Functions
103 
104  //- Correct combustion rate
105  virtual void correct();
106 
107  //- Fuel consumption rate matrix.
108  virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
109 
110  //- Heat release rate [kg/m/s3]
111  virtual tmp<volScalarField> Qdot() const;
112 
113  //- Update properties from given dictionary
114  virtual bool read();
115 };
116 
117 
118 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119 
120 } // End namespace combustionModels
121 } // End namespace Foam
122 
123 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
124 
125 #ifdef NoRepository
126  #include "laminar.C"
127 #endif
128 
129 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
130 
131 #endif
132 
133 // ************************************************************************* //
virtual void correct()
Correct combustion rate.
Definition: laminar.C:82
tmp< volScalarField > tc() const
Return the chemical time scale.
Definition: laminar.C:75
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s3].
Definition: laminar.C:145
Laminar combustion model.
Definition: laminar.H:51
A class for handling words, derived from string.
Definition: word.H:59
Chemistry model wrapper for combustion models.
Abstract base class for turbulence models (RAS, LES and laminar).
virtual ~laminar()
Destructor.
Definition: laminar.C:67
PtrList< volScalarField > & Y
A class for managing temporary objects.
Definition: PtrList.H:53
TypeName("laminar")
Runtime type information.
virtual tmp< fvScalarMatrix > R(volScalarField &Y) const
Fuel consumption rate matrix.
Definition: laminar.C:125
Namespace for OpenFOAM.
virtual bool read()
Update properties from given dictionary.
Definition: laminar.C:175
virtual ReactionThermo & thermo()
Return access to the thermo package.