1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
7 -------------------------------------------------------------------------------
9 This file is part of OpenFOAM.
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 the
13 Free Software Foundation; either version 2 of the License, or (at your
14 option) any later version.
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
21 You should have received a copy of the GNU General Public License
22 along with OpenFOAM; if not, write to the Free Software Foundation,
23 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
26 Foam::hhuMixtureThermo
29 Foam::hhuMixtureThermo
34 \*---------------------------------------------------------------------------*/
36 #ifndef hhuMixtureThermo_H
37 #define hhuMixtureThermo_H
39 //#include "hPsiMixtureThermo.H"
41 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 /*---------------------------------------------------------------------------*\
47 Class hhuMixtureThermo Declaration
48 \*---------------------------------------------------------------------------*/
50 template<class MixtureType>
51 class hhuMixtureThermo
53 public hhuCombustionThermo,
56 // Private member functions
60 //- Construct as copy (not implemented)
61 hhuMixtureThermo(const hhuMixtureThermo<MixtureType>&);
66 //- Runtime type information
67 TypeName("hhuMixtureThermo");
72 //- Construct from mesh
73 hhuMixtureThermo(const fvMesh&);
77 virtual ~hhuMixtureThermo();
82 //- Return the compostion of the multi-component mixture
83 virtual basicMultiComponentMixture& composition()
88 //- Return the compostion of the multi-component mixture
89 virtual const basicMultiComponentMixture& composition() const
95 virtual void correct();
97 //- Sensible enthalpy [J/kg]
98 virtual tmp<volScalarField> hs() const;
100 //- Chemical enthalpy [J/kg]
101 virtual tmp<volScalarField> hc() const;
104 // Fields derived from thermodynamic state variables
106 //- Enthalpy for cell-set [J/kg]
107 virtual tmp<scalarField> h
109 const scalarField& T,
110 const labelList& cells
113 //- Enthalpy for patch [J/kg]
114 virtual tmp<scalarField> h
116 const scalarField& T,
120 //- Heat capacity at constant pressure for patch [J/kg/K]
121 virtual tmp<scalarField> Cp
123 const scalarField& T,
127 //- Heat capacity at constant pressure [J/kg/K]
128 virtual tmp<volScalarField> Cp() const;
130 //- Unburnt gas enthalpy for cell-set [J/kg]
131 virtual tmp<scalarField> hu
133 const scalarField& T,
134 const labelList& cells
137 //- Unburnt gas enthalpy for patch [J/kg]
138 virtual tmp<scalarField> hu
140 const scalarField& T,
145 //- Burnt gas temperature [K]
146 virtual tmp<volScalarField> Tb() const;
148 //- Unburnt gas compressibility [s^2/m^2]
149 virtual tmp<volScalarField> psiu() const;
151 //- Burnt gas compressibility [s^2/m^2]
152 virtual tmp<volScalarField> psib() const;
155 // Access to transport variables
157 //- Dynamic viscosity of unburnt gas [kg/ms]
158 virtual tmp<volScalarField> muu() const;
160 //- Dynamic viscosity of burnt gas [kg/ms]
161 virtual tmp<volScalarField> mub() const;
164 //- Read thermophysicalProperties dictionary
169 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
171 } // End namespace Foam
173 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
176 # include "hhuMixtureThermo.C"
179 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
183 // ************************************************************************* //