initial commit for version 1.6.x patch release
[OpenFOAM-1.6.x.git] / src / thermophysicalModels / specie / reaction / Reactions / IrreversibleReaction / IrreversibleReaction.C
blob58e28a2bc18201f4cc61bd199fd32827017b4e30
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
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
19     for more details.
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
25 Description
26     
27 \*---------------------------------------------------------------------------*/
29 #include "IrreversibleReaction.H"
31 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
33 namespace Foam
36 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
38 // Construct from components
39 template<class ReactionThermo, class ReactionRate>
40 IrreversibleReaction<ReactionThermo, ReactionRate>::IrreversibleReaction
42     const Reaction<ReactionThermo>& reaction,
43     const ReactionRate& k
46     Reaction<ReactionThermo>(reaction),
47     k_(k)
51 // Construct from components
52 template<class ReactionThermo, class ReactionRate>
53 IrreversibleReaction<ReactionThermo, ReactionRate>::IrreversibleReaction
55     const speciesTable& species,
56     const HashPtrTable<ReactionThermo>& thermoDatabase,
57     Istream& is
60     Reaction<ReactionThermo>(species, thermoDatabase, is),
61     k_(species, is)
65 // Construct as copy given new speciesTable
66 template<class ReactionThermo, class ReactionRate>
67 IrreversibleReaction<ReactionThermo, ReactionRate>::IrreversibleReaction
69     const IrreversibleReaction<ReactionThermo, ReactionRate>& irr,
70     const speciesTable& species
73     Reaction<ReactionThermo>(irr, species),
74     k_(irr.k_)
78 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
80 template<class ReactionThermo, class ReactionRate>
81 scalar IrreversibleReaction<ReactionThermo, ReactionRate>::kf
83     const scalar T,
84     const scalar p,
85     const scalarField& c
86 ) const
88     return k_(T, p, c);
92 template<class ReactionThermo, class ReactionRate>
93 void IrreversibleReaction<ReactionThermo, ReactionRate>::write
95     Ostream& os
96 ) const
98     Reaction<ReactionThermo>::write(os);
99     os  << token::SPACE << k_;
103 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105 } // End namespace Foam
107 // ************************************************************************* //