1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2009-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::hRhoMixtureThermo
29 Foam::hRhoMixtureThermo
34 \*---------------------------------------------------------------------------*/
36 #ifndef hRhoMixtureThermo_H
37 #define hRhoMixtureThermo_H
39 #include "hReactionThermo.H"
41 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 /*---------------------------------------------------------------------------*\
47 Class hRhoMixtureThermo Declaration
48 \*---------------------------------------------------------------------------*/
50 template<class MixtureType>
51 class hRhoMixtureThermo
53 public hReactionThermo,
56 // Private member functions
60 //- Construct as copy (not implemented)
61 hRhoMixtureThermo(const hRhoMixtureThermo<MixtureType>&);
66 //- Runtime type information
67 TypeName("hRhoMixtureThermo");
72 //- Construct from mesh
73 hRhoMixtureThermo(const fvMesh&);
77 virtual ~hRhoMixtureThermo();
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 //- Chemical enthalpy [J/kg]
98 virtual tmp<volScalarField> hc() const;
101 // Fields derived from thermodynamic state variables
103 //- Enthalpy for cell-set [J/kg]
104 virtual tmp<scalarField> h
106 const scalarField& T,
107 const labelList& cells
110 //- Enthalpy for patch [J/kg]
111 virtual tmp<scalarField> h
113 const scalarField& T,
117 //- Heat capacity at constant pressure for patch [J/kg/K]
118 virtual tmp<scalarField> Cp
120 const scalarField& T,
124 //- Heat capacity at constant pressure [J/kg/K]
125 virtual tmp<volScalarField> Cp() const;
128 //- Read thermophysicalProperties dictionary
133 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
135 } // End namespace Foam
137 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140 # include "hRhoMixtureThermo.C"
143 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
147 // ************************************************************************* //