PaSR.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-2017 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 Class
27  Foam::combustionModels::PaSR
28 
29 Group
30  grpCombustionModels
31 
32 Description
33  Partially stirred reactor turbulent combustion model.
34 
35  This model calculates a finite rate, based on both turbulence and chemistry
36  time scales. Depending on mesh resolution, the Cmix parameter can be used
37  to scale the turbulence mixing time scale.
38 
39 SourceFiles
40  PaSR.C
41 
42 \*---------------------------------------------------------------------------*/
43 
44 #ifndef PaSR_H
45 #define PaSR_H
46 
47 #include "../laminar/laminar.H"
48 
49 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50 
51 namespace Foam
52 {
53 namespace combustionModels
54 {
55 
56 /*---------------------------------------------------------------------------*\
57  Class PaSR Declaration
58 \*---------------------------------------------------------------------------*/
59 
60 template<class ReactionThermo>
61 class PaSR
62 :
63  public laminar<ReactionThermo>
64 {
65  // Private data
66 
67  //- Mixing constant
68  scalar Cmix_;
69 
70  //- Mixing parameter
71  volScalarField kappa_;
72 
73 
74  // Private Member Functions
75 
76  //- No copy construct
77  PaSR(const PaSR&) = delete;
78 
79  //- No copy assignment
80  void operator=(const PaSR&) = delete;
81 
82 
83 public:
84 
85  //- Runtime type information
86  TypeName("PaSR");
87 
88 
89  // Constructors
90 
91  //- Construct from components
92  PaSR
93  (
94  const word& modelType,
95  ReactionThermo& thermo,
97  const word& combustionProperties
98  );
99 
100 
101  //- Destructor
102  virtual ~PaSR();
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/s3]
114  virtual tmp<volScalarField> Qdot() const;
115 
116  //- Update properties from given dictionary
117  virtual bool read();
118 };
119 
120 
121 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
122 
123 } // End namespace combustionModels
124 } // End namespace Foam
125 
126 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
127 
128 #ifdef NoRepository
129  #include "PaSR.C"
130 #endif
131 
132 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
133 
134 #endif
135 
136 // ************************************************************************* //
Foam::combustionModels::PaSR::R
virtual tmp< fvScalarMatrix > R(volScalarField &Y) const
Fuel consumption rate matrix.
Definition: PaSR.C:108
Foam::combustionModels::PaSR::Qdot
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s3].
Definition: PaSR.C:116
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::combustionModels::PaSR::TypeName
TypeName("PaSR")
Runtime type information.
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:61
thermo
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
Foam::combustionModels::PaSR::~PaSR
virtual ~PaSR()
Destructor.
Definition: PaSR.C:63
Foam::combustionModels::laminar
Laminar combustion model.
Definition: laminar.H:56
Foam::combustionModels::PaSR
Partially stirred reactor turbulent combustion model.
Definition: PaSR.H:60
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Y
PtrList< volScalarField > & Y
Definition: createFieldRefs.H:7
Foam::combustionModels::PaSR::read
virtual bool read()
Update properties from given dictionary.
Definition: PaSR.C:130
PaSR.C
Foam::GeometricField< scalar, fvPatchField, volMesh >
turb
compressible::turbulenceModel & turb
Definition: setRegionFluidFields.H:10
Foam::compressibleTurbulenceModel
Abstract base class for turbulence models (RAS, LES and laminar).
Definition: compressibleTurbulenceModel.H:54
Foam::combustionModels::PaSR::correct
virtual void correct()
Correct combustion rate.
Definition: PaSR.C:70