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::hPsiMixtureThermo
29 Foam::hPsiMixtureThermo
34 \*---------------------------------------------------------------------------*/
36 #ifndef hPsiMixtureThermo_H
37 #define hPsiMixtureThermo_H
39 #include "hCombustionThermo.H"
41 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 /*---------------------------------------------------------------------------*\
47 Class hPsiMixtureThermo Declaration
48 \*---------------------------------------------------------------------------*/
50 template<class MixtureType>
51 class hPsiMixtureThermo
53 public hCombustionThermo,
56 // Private member functions
60 //- Construct as copy (not implemented)
61 hPsiMixtureThermo(const hPsiMixtureThermo<MixtureType>&);
66 //- Runtime type information
67 TypeName("hPsiMixtureThermo");
72 //- Construct from mesh
73 hPsiMixtureThermo(const fvMesh&);
77 virtual ~hPsiMixtureThermo();
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;
131 //- Read thermophysicalProperties dictionary
136 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
138 } // End namespace Foam
140 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
143 # include "hPsiMixtureThermo.C"
146 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
150 // ************************************************************************* //