Jump to content
Geochemist's Workbench Support Forum

Basic scripts for kinetic mineral dissolution

Recommended Posts

Dear Jia or Brian,

I am trying to develop a reaction path model for chemical weathering of a sandstone. I want to write BASIC scripts that will provide the very general rate laws for an individual mineral that account for differences in weathering rate as a function of pH. This will involve providing pre-exponential factors (A) and activation energy terms (EA) different pH ranges in the BASIC Script (for example, see Fig. 1 in the attached paper in which a1, a2, and a3 are the pre exponential factors at acidic, neutral, and basic pH, E1, E2, and E3 are the corresponding activation energies, and n1 and n2 are exponents for the promoting species, H+ and OH- at acidic and basic pH). I will plan to set the surface area for each mineral as a constant using the approach of Lasaga (1984).

In the past I have done some similar, but for more specific and simpler rate expression in which I defined the rate constant and surface area in a React script and called on the rate expression from a BASIC script (see examples) below. My very simple BASIC script for anorthite dissolution is attached, and an example of how I called this up in a react script is also attached (i.e., Basalt Dissolution2.rea). My question is whether I need to specify the rate constant, or in this case, the pre exponential term and the activation energy in the react script since I want to be able to have different versions of each in my BASIC script so that my BASIC script could be applied to systems where pH is changing as is temperature.

Best wishes,


Zhang et al., 2019.pdf Lasaga, 1984.pdf Anorthite_Rate.bas Basalt Dissolution2.rea

Link to comment
Share on other sites

Hello Karen,

BASIC scripts are very versatile and can be used to return a rate provided the information are in the script. If you would like have pH and temperature affect the reaction rate of the mineral as shown in Fig 1. of the paper, you can specify the pre-exponential factors and activation energy terms as variables in your Basic script and then use those variables in your rate law expression to calculate the overall rate. You do not need to specify the pre-exponential factors or the activation energy in the React input script itself if you are already doing so in the Basic script. Just note that you will want to call the variables you specified in your script in your rate law instead of the internal parameters (i.e. "pre_exp", "act_en") .

Hope this helps,
Jia Wang
Aqueous Solutions LLC

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