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

Link to comment
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
Link to comment
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.



Link to comment
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,



Link to comment
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. 

Link to comment
Share on other sites

  • 2 years later...

Hello Jerome,

I realize this post is quite old, but I happened to come across it and realized some updated information might be useful.

In your post from March 1, 2019, you show formation reactions for O2 and H2 and their log Ks, as taken from Thermoddem's phreeqc-format dataset (the first two of three reactions you provide). You claimed these are for formation of the gaseous species, but they are undoubtedly for aqueous species. I couldn't comment on the contents of the phreeqc data at the time, but I am more familiar with phreeqc datasets now. The first two reactions you supplied are within the SOLUTION_SPECIES block and contain the "CO2_llnl_gamma" keyword, which indicates the method to use for calculating activity coefficients of aqueous species. Reactions for gas dissolution appear within a separate PHASES block. Hopefully that clears up the matter.

FYI, the TEdit app in GWB 2021 can now read in phreeqc datasets and convert them to GWB format, for use with the rest of the GWB programs. You might wish to compare reactions balanced in Rxn or pe-pH diagrams constructed in Act2 with the native GWB Thermoddem dataset and that converted from phreeqc. 


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...