37 reactantNames_(dict.
lookup(
"reactants")),
60 r_[i] = st[reactantNames_[i]];
75 inline Foam::scalar Foam::LangmuirHinshelwoodReactionRate::operator()
83 const scalar c1m =
pow(c[r_[0]], m_[1]);
84 const scalar c2m =
pow(c[r_[1]], m_[2]);
86 const scalar TaByT0 = Ta_[0]/
T;
87 const scalar TaByT1 = Ta_[1]/
T;
88 const scalar TaByT2 = Ta_[2]/
T;
90 const scalar k0 = A_[0]*
pow(T, beta_[0])*
exp(-TaByT0);
91 const scalar k1 = A_[1]*
pow(T, beta_[1])*
exp(-TaByT1);
92 const scalar k2 = A_[2]*
pow(T, beta_[2])*
exp(-TaByT2);
94 return k0/
pow(a_ + k1*c1m + k2*c2m, m_[0]);
106 const scalar c1m =
pow(c[r_[0]], m_[1]);
107 const scalar c2m =
pow(c[r_[1]], m_[2]);
109 const scalar TaByT0 = Ta_[0]/
T;
110 const scalar TaByT1 = Ta_[1]/
T;
111 const scalar TaByT2 = Ta_[2]/
T;
113 const scalar k0 = A_[0]*
pow(T, beta_[0])*
exp(-TaByT0);
114 const scalar k1 = A_[1]*
pow(T, beta_[1])*
exp(-TaByT1);
115 const scalar k2 = A_[2]*
pow(T, beta_[2])*
exp(-TaByT2);
119 (beta_[0] + TaByT0)*k0
120 - m_[0]*k0*((beta_[1] + TaByT1)*k1*c1m + (beta_[2] + TaByT2)*k2*c2m)
121 /(a_ + k1*c1m + k2*c2m)
122 )/(
pow(a_ + k1*c1m + k2*c2m, m_[0])*
T);
129 return NullObjectRef<List<Tuple2<label, scalar>>>();
#define forAll(list, i)
Loop across all elements in list.
virtual Ostream & write(const char)=0
Write character.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Langmuir-Hinshelwood reaction rate for gaseous reactions on surfaces.
A list of keyword definitions, which are a keyword followed by any number of values (e...
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
const dimensionedScalar c
Speed of light in a vacuum.
dimensionedScalar exp(const dimensionedScalar &ds)
void postEvaluate() const
Post-evaluation hook.
LangmuirHinshelwoodReactionRate(const speciesTable &species, const dictionary &dict)
Construct from dictionary.
scalar ddT(const scalar p, const scalar T, const scalarField &c, const label li) const
An Ostream is an abstract base class for all output systems (streams, files, token lists...
const List< Tuple2< label, scalar > > & beta() const
Third-body efficiencies (beta = 1-alpha)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
void dcidc(const scalar p, const scalar T, const scalarField &c, const label li, scalarField &dcidc) const
Species concentration derivative of the pressure dependent term.
void write(Ostream &os) const
Write to stream.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
A wordList with hashed indices for faster lookup by name.
void preEvaluate() const
Pre-evaluation hook.
scalar dcidT(const scalar p, const scalar T, const scalarField &c, const label li) const
Temperature derivative of the pressure dependent term.
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.