All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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-2021 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 "autoPtr.H"
39 #include "combustionModel.H"
40 #include "basicChemistryModel.H"
41 
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43 
44 namespace Foam
45 {
46 namespace combustionModels
47 {
48 
49 /*---------------------------------------------------------------------------*\
50  Class laminar Declaration
51 \*---------------------------------------------------------------------------*/
52 
53 class laminar
54 :
55  public combustionModel
56 {
57  // Private Data
58 
59  //- Run chemistry correction on every outer iteration. Default false.
60  bool outerCorrect_;
61 
62  //- Integrate reaction rate over the time-step
63  // using the selected ODE solver. Default true.
64  bool integrateReactionRate_;
65 
66  //- Maximum integration time permitted. Default vGreat.
67  scalar maxIntegrationTime_;
68 
69  //- The time index of the last correction
70  label timeIndex_;
71 
72 protected:
73 
74  // Protected Data
75 
76  //- Pointer to chemistry model
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,
94  const word& combustionProperties
95  );
96 
97  //- Disallow default bitwise copy construction
98  laminar(const laminar&);
99 
100 
101  //- Destructor
102  virtual ~laminar();
103 
104 
105  // Member Functions
106 
107  //- Correct combustion rate
108  virtual void correct();
109 
110  //- Fuel consumption rate matrix.
111  virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
112 
113  //- Heat release rate [kg/m/s^3]
114  virtual tmp<volScalarField> Qdot() const;
115 
116  //- Update properties from given dictionary
117  virtual bool read();
118 
119 
120  // Member Operators
121 
122  //- Disallow default bitwise assignment
123  void operator=(const laminar&) = delete;
124 };
125 
126 
127 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
128 
129 } // End namespace combustionModels
130 } // End namespace Foam
131 
132 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
133 
134 #endif
135 
136 // ************************************************************************* //
virtual void correct()
Correct combustion rate.
Definition: laminar.C:94
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Definition: label.H:59
autoPtr< basicChemistryModel > chemistryPtr_
Pointer to chemistry model.
Definition: laminar.H:76
void operator=(const laminar &)=delete
Disallow default bitwise assignment.
Base-class for multi-component fluid thermodynamic properties.
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s^3].
Definition: laminar.C:139
Laminar combustion model.
Definition: laminar.H:52
A class for handling words, derived from string.
Definition: word.H:59
laminar(const word &modelType, const fluidReactionThermo &thermo, const compressibleMomentumTransportModel &turb, const word &combustionProperties)
Construct from components.
Definition: laminar.C:46
Base class for combustion models.
virtual ~laminar()
Destructor.
Definition: laminar.C:88
PtrList< volScalarField > & Y
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: PtrList.H:52
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:127
Abstract base class for turbulence models (RAS, LES and laminar).
Namespace for OpenFOAM.
virtual bool read()
Update properties from given dictionary.
Definition: laminar.C:145
const fluidReactionThermo & thermo() const
Return const access to the thermo.