1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 -------------------------------------------------------------------------------
10 OpenFOAM is free software: you can redistribute it and/or modify it
11 under the terms of the GNU General Public License as published by
12 the Free Software Foundation, either version 3 of the License, or
13 (at your option) any later version.
15 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
20 You should have received a copy of the GNU General Public License
21 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
24 Foam::combustionModels::infinitelyFastChemistry
27 Simple infinitely fast chemistry combustion model based on the principle
28 mixed is burnt. Additional parameter C is used to distribute the heat
32 infinitelyFastChemistry.C
34 \*---------------------------------------------------------------------------*/
36 #ifndef infinitelyFastChemistry_H
37 #define infinitelyFastChemistry_H
39 #include "combustionModel.H"
40 #include "singleStepReactingMixture.H"
41 #include "thermoPhysicsTypes.H"
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 namespace combustionModels
50 /*---------------------------------------------------------------------------*\
51 Class infinitelyFastChemistry Declaration
52 \*---------------------------------------------------------------------------*/
54 class infinitelyFastChemistry
56 public combustionModel
63 //- Reference to singleStepReactingMixture mixture
64 singleStepReactingMixture<gasThermoPhysics>& singleMixture_;
66 //- Normalised consumption rate of (fu - fres)
67 volScalarField wFuelNorm_;
70 // Private Member Functions
72 //- Disallow copy construct
73 infinitelyFastChemistry(const infinitelyFastChemistry&);
75 //- Disallow default bitwise assignment
76 void operator=(const infinitelyFastChemistry&);
81 //- Runtime type information
82 TypeName("infinitelyFastChemistry");
87 //- Construct from components
88 infinitelyFastChemistry
90 const dictionary& combustionProps,
91 hsCombustionThermo& thermo,
92 const compressible::turbulenceModel& turbulence,
93 const surfaceScalarField& phi,
94 const volScalarField& rho
99 virtual ~infinitelyFastChemistry();
106 //- Correct combustion rate
107 virtual void correct();
109 //- Fuel consumption rate matrix, i.e. source term for fuel equation
110 virtual tmp<fvScalarMatrix> R(volScalarField& Y) const;
112 //- Heat release rate calculated from fuel consumption rate matrix
113 virtual tmp<volScalarField> dQ() const;
115 //- Return normalised consumption rate of (fu - fres)
116 virtual tmp<volScalarField> wFuelNorm() const;
121 //- Update properties from given dictionary
122 virtual bool read(const dictionary& combustionProperties);
126 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
128 } // End namespace combustionModels
129 } // End namespace Foam
131 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
135 // ************************************************************************* //