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-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::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 template<class ReactionThermo>
56 class PaSR
57 :
58  public laminar<ReactionThermo>
59 {
60  // Private data
61 
62  //- Mixing constant
63  scalar Cmix_;
64 
65  //- Mixing parameter
66  volScalarField kappa_;
67 
68 
69  // Private Member Functions
70 
71  //- Disallow copy construct
72  PaSR(const PaSR&);
73 
74  //- Disallow default bitwise assignment
75  void operator=(const PaSR&);
76 
77 
78 public:
79 
80  //- Runtime type information
81  TypeName("PaSR");
82 
83 
84  // Constructors
85 
86  //- Construct from components
87  PaSR
88  (
89  const word& modelType,
90  ReactionThermo& thermo,
91  const compressibleTurbulenceModel& turb,
92  const word& combustionProperties
93  );
94 
95 
96  //- Destructor
97  virtual ~PaSR();
98 
99 
100  // Member Functions
101 
102  //- Correct combustion rate
103  virtual void correct();
104 
105  //- Fuel consumption rate matrix.
106  virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
107 
108  //- Heat release rate [kg/m/s3]
109  virtual tmp<volScalarField> Qdot() const;
110 
111  //- Update properties from given dictionary
112  virtual bool read();
113 };
114 
115 
116 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
117 
118 } // End namespace combustionModels
119 } // End namespace Foam
120 
121 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
122 
123 #ifdef NoRepository
124  #include "PaSR.C"
125 #endif
126 
127 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
128 
129 #endif
130 
131 // ************************************************************************* //
virtual tmp< fvScalarMatrix > R(volScalarField &Y) const
Fuel consumption rate matrix.
Definition: PaSR.C:105
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s3].
Definition: PaSR.C:113
virtual bool read()
Update properties from given dictionary.
Definition: PaSR.C:127
Partially stirred reactor turbulent combustion model.
Definition: PaSR.H:55
Laminar combustion model.
Definition: laminar.H:51
A class for handling words, derived from string.
Definition: word.H:59
Abstract base class for turbulence models (RAS, LES and laminar).
virtual void correct()
Correct combustion rate.
Definition: PaSR.C:67
PtrList< volScalarField > & Y
TypeName("PaSR")
Runtime type information.
virtual ~PaSR()
Destructor.
Definition: PaSR.C:60
A class for managing temporary objects.
Definition: PtrList.H:53
Namespace for OpenFOAM.
virtual ReactionThermo & thermo()
Return access to the thermo package.