Jump to content
Geochemist's Workbench Support Forum

Problem with H2/H+ stability limit in Act2 at T<>25°C?

Recommended Posts

Tracing a pe-Ph plot at 90°C I was wondering if there is no problem with the stability limit of water with Hydrogen. It not seem to be consistent with the database used. In my example, I used Thermoddem database from BRGM but when calculating the equation of the line, there is a mistake. In particular there seems to have a problem between the logK of the H2/H+ reaction and the equations which should be pe=-logK / 2 - pH for  H2(g) = 2H+ + 2e- and for a H2 fugacity of one bar. However it seems to miss the minus of log K and the absolute value seems not to be the good one if you take an other database than the default one. When plotting a reaction path in this diagram where H2 and H2O co-exist, the dots do not follow the equilibrium line and are in the stability field of H2 which seems to confirm the problem.

Thanks for your help

Share this post

Link to post
Share on other sites


I think the lower stability limit is being drawn correctly. A nice feature of Act2 is that it can draw the water stability limits at a pressure of your choice, rather than assuming 1atm all the time. By default, Act2 uses pressure taken from the header tables of the thermo dataset in calculating the position of the water limits. This pressure in the Thermoddem tables is ever-so-slightly different from 1 atm. As a result, the log f H2(g) term in the equilibrium equation for the lower limit doesn’t disappear completely, as you assume. Your perceived problem is because the log K for the reaction H2(g) = 2H+ + 2e- is ~ 0 at your temperature of interest. Here are the log K values for the reaction H2(g) = 2H+ + 2e- calculated at the principal temperatures, using the Thermoddem dataset:

Log K's:
0 C    0.0000        150 C   0.0008
25 C  0.0000        200 C   0.0030
60 C  0.0000        250 C   0.0071
100 C -0.0000      300 C   0.0143

You can verify this yourself by loading the dataset into Rxn and typing 

react H2(g)
swap e- for O2(aq)

 or by adding the log Ks for the following reactions that appear directly in the dataset: 

.5 x [2 H2O = 4e- + O2(g) + 4H+, the half-cell reaction in the header section of the dataset]
.5 x [O2(g) = O2(aq)]
1 x [H2(g) + .5O2(aq) = H2O]

When you run a calculation at a non-principal temperature, the program fits all the data to a polynomial. At 90 C, your log K works out to -1.785E-05, a very small number. So we have a small log K term added to another really small log f H2(g), so the y intercept in Act2’s output isn’t simply the log K/2. 

You don’t notice the effect of the pressure term in the upper stability limit because the log K is so much larger than the log f O2(g) term. You don’t see a problem with the lower limit in the default dataset for the same reason - the log Ks for the H2(g) reaction are far enough from 0. In any case, if you set pressure directly to 1 atm in your script,  the term will go away and you should get a y-intercept exactly equal to the log K/2 in the text output, though it won’t affect your plot in any noticeable way. 
Hope this helps,

Brian Farrell
Aqueous Solutions LLC

  • Like 1

Share this post

Link to post
Share on other sites

Hi Brian

Thanks for this precise answer. But I have one question and one remark. The question is: how can I know in the database if the O2 or H2 is either gas or aqueous in the proposed reactions (question of newbie but even referring to the master species, I don't find the rule).

Second, I did your calculations since I build up my graphs with Excel (😅!). But I have not the same results.

Let's take the reactions in Thermoddem:

2H2O =  O2(g) + 4H+ + 4e-    log K(25) = -85.98 logK(90) -68.43

1.000H2O     - 0.500O2(aq)     = H2(g)     log K(25) =-46.07  logK(90) -37.42

O2 = 1.000O2   log K(25) =-2.893  logK(90) -3.1

0.5*(-85.98)+1*(+46.07)+1*0.5*(-2.89)=1.63 at 25°C and not O.

At 90°C the logK is 1.66.

Do you see in which step I do the mistake?

Thanks again and sorry for this waste of time.



Share this post

Link to post
Share on other sites

Hi Jerome,

You're welcome. I just downloaded the dataset from here: http://thermoddem.brgm.fr/databases/geochemists-workbench. The log K values I see don't match what you describe. Are you working with a different version of the dataset? 

FYI, since this is an older format dataset (the second line of the dataset has the oct94 tag, and it has a .dat extension), it opens up by default in a text editor like Notepad. If you view it there, you'll see it includes the Eh or half-cell reaction in the header tables. That reaction is 2 H2O = 4e- + O2(g) + 4H+. The reaction and more detailed information are included in the Thermo Datasets chapter of the GWB Reference Manual. The more recent dataset formats (oct 13 and jul17) end with .tdat extensions, and they'll open up by default in TEdit, the graphical thermo data editor. With either format, though, you can right-click on the file and open with another program. I say this because newer format dataset don't contain the Eh reaction. Instead, it's rebalanced as the free electron reaction. That reaction can be written in several ways, but the GWB apps including TEdit will take that old Eh reaction and balance it as e- + .25 O2(aq) + H+ = .5 H2O. The log K values from the header table are divided by -4, then. Just want to clear up any confusion there.

With that complication out of the way, the dataset I downloaded has (aq) or (g) appended to the names of the aqueous and gaseous O2 and H2 species, respectively. There is a little flexibility in redox coupling reactions, such as using O2(aq), O2(g), or e- when O2(aq) is in the basis species, or H2(aq), H2(g), or e- when H2(aq) is in the basis. But in any case, the reactions should be explicit whether a gaseous or aqueous form is used. 

If your dataset is different, and you'd like me to take another look at your problem, please attach the dataset along with your Act2 script.

Hope this helps,



Share this post

Link to post
Share on other sites

Hi Brian

Actually I work with the same DB in GWB but I took the log K from Phreecq DB which should be the same... I attached the one where I found my data.

In the header the BDD date is june 2017 for both:

Base de Donnee Thermoddem_MAJ2016_final6d




Share this post

Link to post
Share on other sites

Hmm, hopefully both Thermoddem datasets are equivalent. Perhaps it's only a matter of the Phreeqc dataset using O2(g) in certain places instead of O2(aq), or vice versa. I'm not sure I have more to contribute regarding the Phreeqc dataset, but if you have more questions about Act2 or the GWB in general, let me know. 

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now