From 5c6d1c5ab15b34ba3ed3daff4864925064141150 Mon Sep 17 00:00:00 2001 From: David Parkhurst Date: Fri, 15 Mar 2024 15:32:39 -0600 Subject: [PATCH] Tony's changes Mar 15, 2024 --- kinetic_rates.dat | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/kinetic_rates.dat b/kinetic_rates.dat index 025e403a..6f9ae3e6 100644 --- a/kinetic_rates.dat +++ b/kinetic_rates.dat @@ -1,7 +1,6 @@ -# Subroutines for calculating mineral dissolution rates from Palandri and Kharaka (2004) and Sverdrup et al. (2019). -# It facilitates to use the kinetic rates for various minerals compiled by these authors. +# Subroutines for calculating mineral dissolution rates from compilations by Palandri and Kharaka (2004), Sverdrup et al. (2019), and Hermanska et al., 2022, 2023. # Numbers can be copied from the tables in the publications; when unavailable enter -30 for log_k, 0 for exponents and 1 for other parameters. - # The data are entered in a KINETICS block with -parms. For example: + # The data are entered in a KINETICS block with -parms. For example for the Albite rate of Palandri and Kharaka, Table 13: # KINETICS 1 # Albite_PK @@ -17,12 +16,12 @@ # RATES # Albite_PK # Palandri and Kharaka, 2004 # 10 if parm(1) = 1 then affinity = 1 else affinity = 1 - SR("Albite") : if affinity < parm(1) then SAVE 0 : END - # 20 put(affinity, -99, 1) # store number in memory + # 20 put(affinity, -99, 1) # store value in memory # 30 for i = 2 to 11 : put(parm(i), -99, i) : next i # 40 SAVE calc_value("Palandri_rate") # -end -# For an example file using the rates, see: kinetic_rates.phr +# For an example file using the rates, see: kinetic_rates.phr in https://www.hydrochemistry.eu/exmpls/kin_silicates.html # References # Palandri, J.L. and Kharaka, J.K. (2004). A compilation of rate parameters of water-mineral interaction kinetics for application to geochemical modeling. USGS Open-File Report 2004-1068. @@ -32,6 +31,9 @@ CALCULATE_VALUES Palandri_rate +# in KINETICS, define 11 parms: +# affinity_factor m^2/mol roughness, lgkH e_H nH, lgkH2O e_H2O, lgkOH e_OH nOH +# parm number 1 2 3, 4 5 6, 7 8, 9 10 11 10 affinity = get(-99, 1) # retrieve number from memory 20 30 REM # specific area m2/mol, surface roughness @@ -60,6 +62,9 @@ Palandri_rate -end Sverdrup_rate +# in KINETICS, define 34 parms: +# affinity m^2/mol roughness, temperature_factors (TABLE 4): e_H e_H2O e_CO2 e_OA e_OH,\ +# (TABLE 3): pkH nH yAl CAl xBC CBC, pKH2O yAl CAl xBC CBC zSi CSi, pKCO2 nCO2 pkOrg nOrg COrg, pkOH wOH yAl CAl xBC CBC zSi CSi 10 affinity = get(-99, 1) 20 30 REM # specific area m2/mol, surface roughness @@ -116,6 +121,9 @@ Sverdrup_rate -end Hermanska_rate +# in KINETICS, define 14 parms: +# parms affinity m^2/mol roughness, (TABLE 2): (acid)logk25 Aa Ea na (neutral)logk25 Ab Eb (basic)logk25 Ac Ec nc +# (Note that logk25 values are not used, they were transformed to A's.) 10 affinity = get(-99, 1) # retrieve number from memory 20 30 REM # specific area m2/mol, surface roughness