Jump to content
Geochemist's Workbench Support Forum

Calculating alkalinity in GWB


Lufuno

Recommended Posts

Hello,

If you would like to determine alkalinity, one way to go about it is to set up a titration path system in React, with your initial fluid composition set in the basis. You can titrate an acid like HCl until the pH reaches the designated endpoint and determine the alkalinity based on the equivalents of acid added. For an example of this, please see the acidity and alkalinity unit on the GWB Academy.

Note that the GWB programs (SpecE8, React, Phase2, X1t, X2t) will calculate carbonate alkalinity based on the speciation of carbonate species when they are present in your system. You can find carbonate alkalinity in the output text file or under variable type Chemical parameters in Gtplot.

Hope this helps,
Jia Wang
Aqueous Solutions

Link to comment
Share on other sites

  • 3 weeks later...

Hello Jia

Thank you for the pointer on the alkalinity calculation. After following the example listed in the GWB Academy, I have a couple of questions:

1. Why is the 'No Precipitation' option selected in the alkalinity titration (Config --> Options)?

2. I am attaching an example file for which the water chemistry reported had an unusually high Total Alkalinity of 4687 mg/L as HCO3- which does not reconcile with the measured pH of 6.1. In practice, Sulfuric Acid is used as the titrant and can result in sulfate scale precipitation, giving erroneous results. So I compared 4 React cases with 2 titrants (HCl and H2SO4) using both options (Allow Precipitation and No Precipitation). I find that irrespective of titrant (HCl or H2SO4), the prediction of carbonate alkalinity is the same for a given option (either Allow Precipitation or No Precipitation). Further, the prediction of carbonate alkalinity is around 650 mg/kg CaCO3 when 'Allow Precipitation' is checked vs 1800 mg/kg CaCO3 when 'No Precipitation' is permitted. Why is there such a difference, despite the fact that in either case of titrant, carbonate species are not above saturation?

Thank you

Anoop

On 6/27/2023 at 10:24 AM, Jia Wang said:

Hello,

If you would like to determine alkalinity, one way to go about it is to set up a titration path system in React, with your initial fluid composition set in the basis. You can titrate an acid like HCl until the pH reaches the designated endpoint and determine the alkalinity based on the equivalents of acid added. For an example of this, please see the acidity and alkalinity unit on the GWB Academy.

Note that the GWB programs (SpecE8, React, Phase2, X1t, X2t) will calculate carbonate alkalinity based on the speciation of carbonate species when they are present in your system. You can find carbonate alkalinity in the output text file or under variable type Chemical parameters in Gtplot.

Hope this helps,
Jia Wang
Aqueous Solutions

 

GSS_SSAU - Average.rea SSAU Alkalinity Reconciliation.pptx

Link to comment
Share on other sites

Dear Anoop,

The Academy disabled precipitation to keep the system entirely in the fluid phase for simplifying the example and allowing direct comparison of titration to alkalinity. In reality, precipitation can absolutely affect alkalinity as species from solution are removed.

As for the second part, I think it makes more sense to think about them in reverse. A quick explanation regarding how the software calculates the initial equilibrium state. Before any reaction takes place, the GWB software will calculate the equilibrium state of the fluid with the given composition. If precipitation is enabled in React, the program will first calculate the equilibrium state and output a results block to the text output file. If there are minerals that are oversaturated, the program will iterate to solve for the true equilibrium state and precipitate minerals until there are no longer any minerals saturated with respect to the fluid. Running your attached example and opening the output text results file, I can see that several minerals are precipitated at true equilibrium. Two of which are carbonate minerals, dolomite and strontianite, which will affect the total amount of carbonates in fluid and reduces the carbonate alkalinity in solution. This falls in line with your observation of the initial carbonate alkalinity reported when precipitation is checked vs not.

I am not entirely sure what you mean by this: "I find that irrespective of titrant (HCl or H2SO4), the prediction of carbonate alkalinity is the same for a given option (either Allow Precipitation or No Precipitation).". When I look at your slides, I see that carbonate alkalinity ultimately depletes to near zero at the same amount of acid added but the curve on the plots are not the same. Just focusing on the HCl titration experiments, you can see that in the case where no precipitation is allowed, the alkalinity starts at 1800 mg/kg and drops linearly as HCl is titrated in. In the plot where precipitation was enabled, the carbonate alkalinity is held relatively stable until approximately 25 mmol of HCl was added. This effect is due to the carbonate minerals that precipitated in the initial equilibrium calculation that is now dissolving back into the fluid. If you plot Minerals (under Variable type), you will see they are completely dissolved when 25 mmol of HCl was added.

Hope this helps,
Jia Wang
Aqueous Solutions LLC

Link to comment
Share on other sites

  • 1 month later...

Hello Jia, 

Same question, how can I calculate the alkalinity with GWB knowing that I can't do the titration?

I am doing complicated experiments where it is impossible for me to measure the alkalinity right after the experiment. I still can have the pH, TDS and the chemical composition.

I am trying by using HCO3- to reach the charge balance but I wonder if there is any other method to find the alkalinity

 

Thanks for reading

Link to comment
Share on other sites

Hi Jerome,

I am not quite following your logic here. If you have the pH, TDS, and the chemical composition of your fluid, the most straightforward approach is to set up the fluid in React (Basis pane) and add a strong acid like HCl (Reactants pane) until you get to the endpoint pH. The equivalents of acid needed to reach that endpoint reflects the alkalinity of your fluid. Are you saying that this approach does not work for you?

When you say "using HCO3-" to reach charge balance, do you mean you're adding HCO3- to your system or setting HCO3- as the charge balancing ion?

Best regards,
Jia Wang

Link to comment
Share on other sites

No, I can't use this approach for my experiments, I have special conditions that don't allow me to measure the pH for a few minutes, I only have a few seconds to do it. I can still do it, but I know that the measurement won't reflect the reality of the solution during my experiment.

Yes, I set HCO3- as the equilibrium charge and see how much I need to reach equilibrium

 

Best regards,

Jerome

Link to comment
Share on other sites

Hello Jerome,

I am still having some difficulty following your simulation setup here. It sounds like you can measure pH and composition in your fluid at certain points of your experiment. Perhaps you can use React to simulate your experiment so that you can predict the condition of your fluid when you are not able to make a direct measurement? Once you have done so, you can use that to simulate a titration run in React. You can pick up the results from a React simulation as a starting using the pickup function. For more information on the pickup function, please see the GWB Command Reference.

As for setting HCO3- as the charge balancing ion, I am not sure how this would work at all when you don't have any constraint for pH. Without pH, the program can't calculate protonation and deprotonation reactions between various carbon species (e.g. HCO3- = H+ + CO3--), as they involve H+. If you can constrain the H+ component by assuming that it is in equilibrium with a gas or mineral, that will allow the software to calculate carbonate alkalinity.

Hope this helps,
Jia

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.

Guest
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.

Loading...
×
×
  • Create New...