[I thought I sent this email already, but it is not appearing in the online history so I am sending it again, and editing some of what I wrote.]
We should be a bit careful with our wording on this issue.
(1)
You wrote:
"Since the
gas phase species are not accounted for as species with positions and
the pressure cannot be included in the "conditions", the rate constant
in kmcos is expressed as k_ads_kmcos = k_ads*P_A. As a result it contains partial pressure."
What
you are saying is correct, though it's not the wording I would use. As you probably noticed, during adding of
processes in kmcos we have an argument named "rate constant" . That argument corresponds to the kmc transition frequency when the conditions are met. My personal preference is to call the kmc variable a transition frequency, and to only use the word "rate constant" for the physical chemistry concept. The physical chemistry concept of rate constants has concentrations for all reactants. So I would prefer if the kmcos argument name becomes changed, which will avoid confusion for people in the future. Your equation and understanding seem to be correct.
(2)
"Now consider the reversed reaction. The rate of this reaction (rate_b=k_b[*A]) is rate_des = k_des*Theta2. In this case, the rate constant in kmcos should be expressed as k_des_kmcos = k_des ?"
This
is correct under certain circumstances: if the transition frequency
(when the conditions are met) are the same as the rate constant, then
yes, they will be equal. For a first order desorption process, they will
be the same.
For
second order process, k_des can be written in absolute units (like
molecules/m^2) or in relative units (like theta). If using relative
units, then k_des_kmcos=k_des even for second order process.
(3)
"If I use the K_std = k_ads/k_des relation, I can rewrite it as k_des_kmcos = k_ads/K_std."
For the third equation, I might have to be a bit careful.
K_std means the thermodynamic rate constant. That means that
K_std= e^-Delta(G/RT) = [Products]*standard-state/[reactants]*standard-state
and also means that k_ads and k_des must be written with the correct
units to support this equation. So if you write everything out, and find
that the units are all working correctly then you can probably make
k_des_kmcos = k_ads/K_std. But it depends on which units you use for the various terms.
One
way I can suggest to improve your understanding (and to make a kmcos
example or add an exercise for a kmcos example) is to calculate Langmuir
adsorption for simple adsorption desorption. If you create a simple
adsorption desorption case for a single site type, then you can
calculate with pencil and paper (or excel) which pressure will be
required to reach coverage of 0.75 and 0.50, then you can check if you
get that coverage when putting the kmcos simulation at that pressure.
I
think it would be great if we had a "MyFirstAdsorptionEquilibrium"
example in kmcos, and if it explained some of these issues. It would
also be good to show what happens when somebody makes a mistake with the
units.
My initial
impression is that the pressure should not normally appear in the
desorption rate constant even with the approach we discussed. However,
in the example you gave, we see this:
rate_constant='p_COgas*bar*A/2/sqrt(2*pi*umass*m_CO/beta)*exp(beta*(E_CO_cus-GibbsGas_COgas)*eV)')
So
I would suggest to first try to understand simple adsorption desorption
case with single site available for adsorption (without using GibbsGas
feature). Then, if you want to, you can make a second version of your
example where you add in the GibbsGas feature to see if pressure needs
to be included in k_des_kmcos or if it is a mistake to include pressure
there.