All Classes Namespaces Files Functions Variables Typedefs Friends Macros Groups
psiQGDReactionThermo.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-2016 OpenFOAM Foundation
9  Copyright (C) 2019 OpenCFD Ltd.
10  Copyright (C) 2016-2019 ISP RAS (www.ispras.ru) UniCFD Group (www.unicfd.ru)
11 -------------------------------------------------------------------------------
12 License
13  This file is part of OpenFOAM.
14 
15  OpenFOAM is free software: you can redistribute it and/or modify it
16  under the terms of the GNU General Public License as published by
17  the Free Software Foundation, either version 3 of the License, or
18  (at your option) any later version.
19 
20  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
21  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
22  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
23  for more details.
24 
25  You should have received a copy of the GNU General Public License
26  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
27 
28 Class
29  Foam::psiQGDReactionThermo
30 
31 Group
32  grpPsiQGDReactionThermo
33 
34 Description
35  Foam::psiQGDReactionThermo
36 
37 SourceFiles
38  psiQGDReactionThermo.C
39 
40 \*---------------------------------------------------------------------------*/
41 
42 #ifndef psiQGDReactionThermo_H
43 #define psiQGDReactionThermo_H
44 
45 #include "psiQGDThermo.H"
46 #include "basicSpecieMixture.H"
47 #include "autoPtr.H"
48 #include "runTimeSelectionTables.H"
49 
50 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
51 
52 namespace Foam
53 {
54 
55 /*---------------------------------------------------------------------------*\
56  Class psiQGDReactionThermo Declaration
57 \*---------------------------------------------------------------------------*/
58 
60 :
61  public psiQGDThermo
62 {
63 
64 public:
65 
66  //- Runtime type information
67  TypeName("psiQGDReactionThermo");
68 
69 
70  //- Declare run-time constructor selection tables
72  (
73  autoPtr,
75  fvMesh,
76  (const fvMesh& mesh, const word& phaseName),
77  (mesh, phaseName)
78  );
79 
80 
81  //- Declare run-time constructor selection table for dictionary based
83  (
84  autoPtr,
86  fvMeshDictPhase,
87  (const fvMesh& mesh, const word& phaseName, const word& dictName),
88  (mesh, phaseName, dictName)
89  );
90 
91 
92  // Constructors
93 
94  //- Construct from mesh and phase name
96  (
97  const fvMesh&,
98  const word& phaseName
99  );
100 
101 
102  //- Construct from mesh,dictionary,phase name with a single temperature
104  (
105  const fvMesh&,
106  const word& phaseName,
107  const word& dictName
108  );
109 
110 
111  // Selectors
112 
113  //- Standard selection based on fvMesh
114  static autoPtr<psiQGDReactionThermo> New
115  (
116  const fvMesh&,
117  const word& phaseName=word::null
118  );
119 
120 
121  //- Selector based on mesh, phase name and dictionary
122  static autoPtr<psiQGDReactionThermo> New
123  (
124  const fvMesh&,
125  const word& phaseName,
126  const word& dictName
127  );
128 
129 
130  //- Destructor
131  virtual ~psiQGDReactionThermo();
132 
133 
134  // Member functions
135 
136  //- Return the composition of the multi-component mixture
137  virtual basicSpecieMixture& composition() = 0;
138 
139  //- Return the composition of the multi-component mixture
140  virtual const basicSpecieMixture& composition() const = 0;
141 };
142 
143 
144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
145 
146 } // End namespace Foam
147 
148 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
149 
150 #endif
151 
152 // ************************************************************************* //
virtual ~psiQGDReactionThermo()
Destructor.
static autoPtr< psiQGDReactionThermo > New(const fvMesh &, const word &phaseName=word::null)
Standard selection based on fvMesh.
virtual basicSpecieMixture & composition()=0
Return the composition of the multi-component mixture.
declareRunTimeSelectionTable(autoPtr, psiQGDReactionThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
Declare run-time constructor selection tables.
TypeName("psiQGDReactionThermo")
Runtime type information.
psiQGDReactionThermo(const fvMesh &, const word &phaseName)
Construct from mesh and phase name.
Class describing thermophysical properties of perfect gas with motion governed by Quasi- Gas dynamics...
Definition: psiQGDThermo.H:56
Foam::psiQGDReactionThermo.