00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 namespace Foam
00032 {
00033
00034
00035
00036
00037 inline thirdBodyArrheniusReactionRate::thirdBodyArrheniusReactionRate
00038 (
00039 const scalar A,
00040 const scalar beta,
00041 const scalar Ta,
00042 const thirdBodyEfficiencies& tbes
00043 )
00044 :
00045 ArrheniusReactionRate(A, beta, Ta),
00046 thirdBodyEfficiencies_(tbes)
00047 {}
00048
00049
00050
00051 inline thirdBodyArrheniusReactionRate::thirdBodyArrheniusReactionRate
00052 (
00053 const speciesTable& species,
00054 Istream& is
00055 )
00056 :
00057 ArrheniusReactionRate
00058 (
00059 species,
00060 is.readBegin("thirdBodyArrheniusReactionRate(Istream&)")
00061 ),
00062 thirdBodyEfficiencies_(species, is)
00063 {
00064 is.readEnd("thirdBodyArrheniusReactionRate(Istream&)");
00065 }
00066
00067
00068
00069
00070 inline scalar thirdBodyArrheniusReactionRate::operator()
00071 (
00072 const scalar T,
00073 const scalar p,
00074 const scalarField& c
00075 ) const
00076 {
00077 return
00078 thirdBodyEfficiencies_.M(c)
00079 *ArrheniusReactionRate::operator()(T, p, c);
00080 }
00081
00082
00083 inline Ostream& operator<<(Ostream& os, const thirdBodyArrheniusReactionRate& arr)
00084 {
00085 os << token::BEGIN_LIST
00086 << static_cast<const ArrheniusReactionRate&>(arr)
00087 << token::SPACE << arr.thirdBodyEfficiencies_
00088 << token::END_LIST;
00089 return os;
00090 }
00091
00092
00093
00094
00095 }
00096
00097