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 | Copyright (C) 2011-2015 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 combustion model. The model calculates a finite
29  rate, based on both turbulence and chemistry time scales. Depending on
30  mesh resolution, the Cmix parameter can be used to scale the turbulence
31  mixing time scale.
32 
33 SourceFiles
34  PaSR.C
35 
36 \*---------------------------------------------------------------------------*/
37 
38 #ifndef PaSR_H
39 #define PaSR_H
40 
41 #include "../laminar/laminar.H"
42 
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 
45 namespace Foam
46 {
47 namespace combustionModels
48 {
49 
50 /*---------------------------------------------------------------------------*\
51  Class PaSR Declaration
52 \*---------------------------------------------------------------------------*/
53 
54 template<class Type>
55 class PaSR
56 :
57  public laminar<Type>
58 {
59  // Private data
60 
61  //- Mixing constant
62  scalar Cmix_;
63 
64  //- Turbulent reaction switch
66 
67  //- Mixing parameter
69 
70 
71  // Private Member Functions
72 
73  //- Disallow copy construct
74  PaSR(const PaSR&);
75 
76  //- Disallow default bitwise assignment
77  void operator=(const PaSR&);
78 
79 
80 public:
81 
82  //- Runtime type information
83  TypeName("PaSR");
84 
85 
86  // Constructors
87 
88  //- Construct from components
89  PaSR(const word& modelType, const fvMesh& mesh, const word& phaseName);
90 
91 
92  //- Destructor
93  virtual ~PaSR();
94 
95 
96  // Member Functions
97 
98  // Evolution
99 
100  //- Correct combustion rate
101  virtual void correct();
102 
103  //- Fuel consumption rate matrix.
104  virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
105 
106  //- Heat release rate calculated from fuel consumption rate matrix
107  virtual tmp<volScalarField> dQ() const;
108 
109  //- Return source for enthalpy equation [kg/m/s3]
110  virtual tmp<volScalarField> Sh() const;
111 
112 
113  // IO
114 
115  //- Update properties from given dictionary
116  virtual bool read();
117 };
118 
119 
120 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
121 
122 } // End namespace combustionModels
123 } // End namespace Foam
124 
125 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
126 
127 #ifdef NoRepository
128 # include "PaSR.C"
129 #endif
130 
131 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
132 
133 #endif
134 
135 // ************************************************************************* //
Foam::Switch
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
Definition: Switch.H:60
Foam::combustionModels::PaSR::R
virtual tmp< fvScalarMatrix > R(volScalarField &Y) const
Fuel consumption rate matrix.
Definition: PaSR.C:110
Foam::word
A class for handling words, derived from string.
Definition: word.H:59
Foam::combustionModels::PaSR::TypeName
TypeName("PaSR")
Runtime type information.
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:118
Foam::combustionModels::PaSR::kappa_
volScalarField kappa_
Mixing parameter.
Definition: PaSR.H:67
Foam::combustionModels::PaSR::turbulentReaction_
Switch turbulentReaction_
Turbulent reaction switch.
Definition: PaSR.H:64
Foam::combustionModels::PaSR::~PaSR
virtual ~PaSR()
Destructor.
Definition: PaSR.C:61
Foam::combustionModels::laminar
Laminar combustion model.
Definition: laminar.H:49
Foam::combustionModels::PaSR::dQ
virtual tmp< volScalarField > dQ() const
Heat release rate calculated from fuel consumption rate matrix.
Definition: PaSR.C:118
Foam::combustionModels::PaSR::Cmix_
scalar Cmix_
Mixing constant.
Definition: PaSR.H:61
Foam::combustionModels::PaSR::PaSR
PaSR(const PaSR &)
Disallow copy construct.
Foam::combustionModels::PaSR::operator=
void operator=(const PaSR &)
Disallow default bitwise assignment.
Foam::combustionModels::PaSR
Partially stirred reactor combustion model. The model calculates a finite rate, based on both turbule...
Definition: PaSR.H:54
mesh
dynamicFvMesh & mesh
Definition: createDynamicFvMesh.H:18
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:78
Foam
Namespace for OpenFOAM.
Definition: combustionModel.C:30
Foam::combustionModels::PaSR::read
virtual bool read()
Update properties from given dictionary.
Definition: PaSR.C:147
PaSR.C
Foam::GeometricField
Generic GeometricField class.
Definition: surfaceFieldsFwd.H:52
Foam::combustionModels::PaSR::correct
virtual void correct()
Correct combustion rate.
Definition: PaSR.C:68
Y
PtrList< volScalarField > & Y
Definition: createFields.H:36
Foam::combustionModels::PaSR::Sh
virtual tmp< volScalarField > Sh() const
Return source for enthalpy equation [kg/m/s3].
Definition: PaSR.C:133