PaSR.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-2023 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::PaSR
26 
27 Description
28  Partially stirred reactor turbulent combustion model.
29 
30  This model calculates a finite rate, based on both turbulence and chemistry
31  time scales. Depending on mesh resolution, the Cmix parameter can be used
32  to scale the turbulence mixing time scale.
33 
34 SourceFiles
35  PaSR.C
36 
37 \*---------------------------------------------------------------------------*/
38 
39 #ifndef PaSR_H
40 #define PaSR_H
41 
42 #include "../laminar/laminar.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 namespace combustionModels
49 {
50 
51 /*---------------------------------------------------------------------------*\
52  Class PaSR Declaration
53 \*---------------------------------------------------------------------------*/
54 
55 class PaSR
56 :
57  public laminar
58 {
59  // Private Data
60 
61  //- Mixing constant
62  scalar Cmix_;
63 
64  //- Mixing parameter
65  volScalarField kappa_;
66 
67 
68 public:
69 
70  //- Runtime type information
71  TypeName("PaSR");
72 
73 
74  // Constructors
75 
76  //- Construct from components
77  PaSR
78  (
79  const word& modelType,
82  const word& combustionProperties
83  );
84 
85  //- Disallow default bitwise copy construction
86  PaSR(const PaSR&) = delete;
87 
88 
89  //- Destructor
90  virtual ~PaSR();
91 
92 
93  // Member Functions
94 
95  //- Correct combustion rate
96  virtual void correct();
97 
98  //- Specie consumption rate field
99  virtual tmp<volScalarField::Internal> R(const label speciei) const;
100 
101  //- Specie consumption rate matrix
102  virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
103 
104  //- Heat release rate [kg/m/s^3]
105  virtual tmp<volScalarField> Qdot() const;
106 
107  //- Update properties from given dictionary
108  virtual bool read();
109 
110 
111  // Member Operators
112 
113  //- Disallow default bitwise assignment
114  void operator=(const PaSR&) = delete;
115 };
116 
117 
118 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119 
120 } // End namespace combustionModels
121 } // End namespace Foam
122 
123 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
124 
125 #endif
126 
127 // ************************************************************************* //
Generic GeometricField class.
const fluidMulticomponentThermo & thermo() const
Return const access to the thermo.
Partially stirred reactor turbulent combustion model.
Definition: PaSR.H:57
PaSR(const word &modelType, const fluidMulticomponentThermo &thermo, const compressibleMomentumTransportModel &turb, const word &combustionProperties)
Construct from components.
Definition: PaSR.C:44
virtual void correct()
Correct combustion rate.
Definition: PaSR.C:77
void operator=(const PaSR &)=delete
Disallow default bitwise assignment.
virtual ~PaSR()
Destructor.
Definition: PaSR.C:71
TypeName("PaSR")
Runtime type information.
virtual tmp< volScalarField::Internal > R(const label speciei) const
Specie consumption rate field.
Definition: PaSR.C:108
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s^3].
Definition: PaSR.C:122
virtual bool read()
Update properties from given dictionary.
Definition: PaSR.C:132
Laminar combustion model.
Definition: laminar.H:55
Base class for single-phase compressible turbulence models.
Base-class for multi-component fluid thermodynamic properties.
A class for managing temporary objects.
Definition: tmp.H:55
A class for handling words, derived from string.
Definition: word.H:62
Namespace for OpenFOAM.
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
PtrList< volScalarField > & Y