Loading...
Searching...
No Matches
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-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::combustionModels::PaSR
28
29Group
30 grpCombustionModels
31
32Description
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
39SourceFiles
40 PaSR.C
41
42\*---------------------------------------------------------------------------*/
43
44#ifndef PaSR_H
45#define PaSR_H
46
47#include "../laminar/laminar.H"
48
49// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50
51namespace Foam
52{
53namespace combustionModels
54{
55
56/*---------------------------------------------------------------------------*\
57 Class PaSR Declaration
58\*---------------------------------------------------------------------------*/
59
60template<class ReactionThermo>
61class 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
83public:
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// ************************************************************************* //
#define R(A, B, C, D, E, F, K, M)
compressible::turbulenceModel & turb
virtual ReactionThermo & thermo()
Return access to the thermo package.
virtual void correct()
Correct combustion rate.
Definition PaSR.C:64
virtual ~PaSR()
Destructor.
Definition PaSR.C:57
TypeName("PaSR")
Runtime type information.
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:125
Abstract base class for turbulence models (RAS, LES and laminar).
A class for managing temporary objects.
Definition tmp.H:75
A class for handling words, derived from Foam::string.
Definition word.H:66
PtrList< volScalarField > & Y
Namespace for OpenFOAM.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition typeInfo.H:68