37 reactantNames_(dict.
lookup(
"reactants")),
60 r_[i] = st[reactantNames_[i]];
67 inline Foam::scalar Foam::LangmuirHinshelwoodReactionRate::operator()
75 const scalar c0m =
pow(c[r_[0]], m_[0]);
76 const scalar c1m =
pow(c[r_[1]], m_[1]);
78 const scalar TaByT0 = Ta_[0]/
T;
79 const scalar TaByT1 = Ta_[1]/
T;
80 const scalar TaByT2 = Ta_[2]/
T;
82 const scalar k0 = A_[0]*
pow(T, beta_[0])*
exp(-TaByT0);
83 const scalar k1 = A_[1]*
pow(T, beta_[1])*
exp(-TaByT1);
84 const scalar k2 = A_[2]*
pow(T, beta_[2])*
exp(-TaByT2);
86 return k0/
pow(a_ + k1*c0m + k2*c1m, m_[2]);
98 const scalar c0m =
pow(c[r_[0]], m_[0]);
99 const scalar c1m =
pow(c[r_[1]], m_[1]);
101 const scalar TaByT0 = Ta_[0]/
T;
102 const scalar TaByT1 = Ta_[1]/
T;
103 const scalar TaByT2 = Ta_[2]/
T;
105 const scalar k0 = A_[0]*
pow(T, beta_[0])*
exp(-TaByT0);
106 const scalar k1 = A_[1]*
pow(T, beta_[1])*
exp(-TaByT1);
107 const scalar k2 = A_[2]*
pow(T, beta_[2])*
exp(-TaByT2);
111 (beta_[0] + TaByT0)*k0
112 - m_[2]*k0*((beta_[1] + TaByT1)*k1*c0m + (beta_[2] + TaByT2)*k2*c1m)
113 /(a_ + k1*c0m + k2*c1m)
114 )/(
pow(a_ + k1*c0m + k2*c1m, m_[2])*
T);
121 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)
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 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.
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.