#DATABASE database\phreeqc.datDATABASE database\PITZER.datPHASESpe_fix e- = e- log_k 0ph_fix H+ = H+ log_k 0RATESBarite #BaSO4 ; M 233.404 g/mol-start1 name$ = "Barite"2 if (PARM(1) = 0) then goto 3 else goto 53 if PARM(3) = 0 then S = PARM(2) * m * GFW(PHASE_FORMULA(name$)) else S = m0 * ((m/m0)^(2/3)) * GFW(PHASE_FORMULA(name$)) * PARM(2)4 GOTO 1005 S = PARM(2)*TOT("water")##-----------------Dissolution and precipitation options---------------------##100 if (PARM(4) = 0) then goto 1000 else goto 110110 if (PARM(4) = 1) Then GoTo 150 else goto 200 #150 If (SR (name$) < 1) Then GoTo 5000 else GoTO 1000 # warning no dissolution reaction200 If (SR (name$) > 1) Then GoTo 5000 else GoTO 1000 # warning no precipitation reaction##------------------Kinetic calculation---------------------## # parameters1000 Aa = 2.5e-3 #mol.m-2.s-11003 Ea = 26000 #J.mol-11006 R = 8.314 #J.deg-1.mol-11007 ACTI = ACT ("H+")1008 na = 0.111010 Sig = 1 #rate equation2000 rplusa = Aa * ACTI^na * exp(-Ea/ (R * Tk)) * S2003 rplus = rplusa3000 rate = rplus * (1 - (SR ("Barite")^(1/Sig)))4000 moles = rate * time5000 save moles-end# Barite# -start # 20 si_ = SI("Barite") # 30 IF (M <= 0 and si_ < 0) THEN GOTO 200 # 40 e1 = 30.8 # 50 k1 = 10^-6.9 * EXP(-e1*1000/8.314*(1/(TC+273.15)-1/298.15)) # 60 n1 = 0.22 # 70 e2 = 30.8 # 80 k2 = 10^-7.9* EXP(-e2*1000/8.314*(1/(TC+273.15)-1/298.15)) #in mol.m-2.s-1 # 90 e3 = 0# 100 k3 = 10^-30* EXP(-e3*1000/8.314*(1/(TC+273.15)-1/298.15))# 110 n3 = 0# 120 IF M0 > 0 THEN area = PARM(1)*M0*(M/M0)^PARM(2) ELSE area = PARM(1)*M # m2 = m2.mol-1 x mol# 130 rate = area * ( k2 ) # mol.s-1 = m2 x mol.m-2.s-1# 140 rate = rate * (1 - SR("Barite"))# # 200 moles = rate * 0.001 * TIME # convert from mmol to mol# 200 moles = rate * TIME# 210 SAVE moles# -endQuartz#SiO2; M 60.08 g/mol-start1 name$ = "Quartz"2 if (PARM(1) = 0) then goto 3 else goto 53 if PARM(3) = 0 then S = PARM(2) * m * GFW(PHASE_FORMULA(name$)) else S = m0 * ((m/m0)^(2/3)) * GFW(PHASE_FORMULA(name$)) * PARM(2)4 GOTO 1005 S = PARM(2)*TOT("water")##----------------- Dissolution only or precipitation only option---------------------##100 if (PARM(4) = 0) then goto 1000 else goto 110110 if (PARM(4) = 1) Then GoTo 150 else goto 200 #150 if (SR (name$) < 1) Then GoTo 5000 else goto 1000# warning no dissolution reaction200 if (SR (name$) > 1) Then GoTo 5000 else goto 1000 # warning no precipitation reaction##------------------Kinetic calculation---------------------## #Parameters1000 Aa = 4.03e-4#mol/m2/s1001 Ab = 0.105#mol/m2/s1002 na = 0.3091003 nb = -0.411004 Ea = 456001005 Eb = 80000 1006 R = 8.314 #J.deg-1.mol-11007 ACTI = act("H+")1009 Sig = 1 #rate equations2002 rplusa = Aa* (exp(-Ea/ (R * Tk)))*(ACTI^na)* S2003 rplusb = Ab* (exp(-Eb/ (R * Tk)))*(ACTI^nb)* S2009 rplus = rplusa + rplusb3000 rate = rplus * (1 - (SR("Quartz")^(1/Sig)))4000 moles = rate * time5000 save moles-endDolomite # CaMg(CO3)2: M 184.40 g/mol !!!-start1 name$ = "Dolomite"2 if (PARM(1) = 0) then goto 3 else goto 53 if PARM(3) = 0 then S = PARM(2) * m * GFW(PHASE_FORMULA(name$)) else S = m0 * ((m/m0)^(2/3)) * GFW(PHASE_FORMULA(name$)) * PARM(2)4 GOTO 1005 S = PARM(2)*TOT("water")##-----------------Dissolution and precipitation options---------------------##100 if (PARM(4) = 0) then goto 1000 else goto 110110 if (PARM(4) = 1) Then GoTo 150 else goto 200 #150 If (SR (name$) < 1) Then GoTo 5000 else GoTO 1000 # warning no dissolution reaction200 If (SR (name$) > 1) Then GoTo 5000 else GoTO 1000 # warning no precipitation reaction###------------------Kinetic calculation---------------------## #Parameters1000 Aa =1.2e-3# mol.m-2.s-11001 Ac = 650 # mol.m-2.s-11002 Ea =10000# J/mol1003 Eac =65000# J/mol1004 R = 8.314 #J.deg-1.mol-11006 Sig = 1.9 1007 na =0.51008 kc =160 1009 act_c = act("HCO3-")+act("CO3-2")1010 carb_term = 1-(kc*act_c)/(1+kc*act_c)2000 rplusa = Aa* (exp(-Ea/ (R * Tk)))*(act("H+")^na)* S2001 rplusc = Ac* (exp(-Eac/ (R * Tk)))*carb_term2002 rplus = rplusa + rplusc4000 rate = rplus * (1 - SR("Dolomite")^(1/Sig))5000 moles = rate * time6000 save moles-end ##################### WINNIPEGSOLUTION 1-units mg/L-density 1.0 calculate-temp 52pe -0.310-redox pepH 7.87Alkalinity 378Al 1.800B 4.445Ba 0.447Br 23Ca 1474Cl 71333 chargeFe 1.83Hg 7.23K 1272Li 7.600Mg 330Mn 0.913Na 44806Pb 1.225Se 0.700Si 15.53S(6) 4199Sr 38.0U 0.003# Zn 1.625#-water 1GAS_PHASE 1 -pressure 215.23 -temperature 52 #winnipeg -volume 0.016 -fixed_pressure CO2(g) 0.0494 Ntg(g) 207.13 Oxg(g) 0.803 H2Sg(g) 0.637 CO2(g) 8.810 EQUILIBRIUM_PHASES 1# pe_fix 0.310 O2 100 #H2Sg 100# ph_fix -5.2 CO2 100Quartz 0 17.97# # #K-feldspar 0 0.059Dolomite 0 0.031Halite 0 0.394Anhydrite 0 0.021# # #Illite 0 0.039# # #Pyrite 0 0.192# # #Chlorite(14A) 0 0.085Chalcedony 0 0Barite 0 0SAVE EQUILIBRIUM_PHASES 1SAVE SOLUTION 1END##################### DEADWOODSOLUTION 2-units mg/L-density 1.0 calculate-temp 66.67pe -1.4pH 7.55-redox peAlkalinity 354.5Al 4.53B 6.6425Ba 0.23Br 29Ca 1648.5Cl 56386 chargeFe 0.73Hg 7.55K 2046Li 9.8Mg 368.75Mn 0.98Na 49306Se 4.53Si 10.05S(6) 4236Sr 47.4Rb 0.9Zn 3.53GAS_PHASE 2 -pressure 221.46 #deadwood -temperature 66.67#deadwood -volume 0.016 #GLR -fixed_pressure Ntg(g) 210 Oxg(g) 0.815 H2Sg(g) 0.646 CO2(g) 8.938EQUILIBRIUM_PHASES 2# pe_fix 1.409 H2Sg 100# ph_fix -5.3 CO2 100Dolomite 0 0.056Halite 0 0.532Anhydrite 0 0.726# # # Illite 0 0.080# # # Ca-montmorillonite 0 0.029# # # siderite 0 0.089 ##in reservoirQuartz 0 13.93# # #K-feldspar 0 0.158Chalcedony 0 0Barite 0 0SAVE EQUILIBRIUM_PHASES 2SAVE SOLUTION 2END####### GET AVERAGE PRODUCTION COMPOSITION - mixing ratios based on relative net thicknesses of formationsMIX SOLUTION 31 0.279 #fraction from winnipeg formation2 0.721 #fraction from deadwood formationSAVE SOLUTION 3ENDREACTION_TEMPERATURE 366 20 in 27 stepsENDEQUILIBRIUM_PHASES 3# pe_fix 1.409 H2Sg 100# ph_fix -5.3 CO2 100# Dolomite 0 0# Halite 0 0# Anhydrite 0 0# Quartz 0 0# Calcite 0 0# Chalcedony 0 0# Gypsum 0 0# Barite 0 0ENDKINETICS 3Barite -formula BaSO4 1 -m0 0 -m 0 -parms 0 1.07 0 0#0 0.000107 0 0 #Castillo 2015, Kazmierczak 2022 -tol 1e-08 Dolomite -formula CaMg(CO3)2 #1 -m0 0 -m 0 -parms 0 0.0012 0 0 -tol 1e-08 Quartz -formula SiO2 #1 -m0 0 -m 0 -parms 0 6.8 0 0 #0 0.00068 0 0 -tol 1e-08 -steps 10 day # -bad_step_max 1000-cvode true-cvode_steps 100-cvode_order 5ENDSELECTED_OUTPUT 1 -file outputs/Regina_output.xls -reset true -simulation false -state false -solution false -reaction false -saturation_indices Barite Quartz Anhydrite DolomiteUSER_PUNCH 1 -headings pH _Temperature Pressure Alkalinity(mg/L_CaCO3) Calcite Halite Anhydrite Gypsum KIN_barite KIN_quartz KIN_dolomite SR_Barite SR_QUARTZ SR_DOLOMITE -start 1 PUNCH -LA("H+") 2 PUNCH tc 3 PUNCH pressure 4 PUNCH alk*50*1000 60 PUNCH EQUI_DELTA("Calcite")*100*1000/2.71 100 PUNCH EQUI_DELTA("Halite")*58.4*1000/2.16 110 PUNCH EQUI_DELTA("Anhydrite")*136.14*1000/2.96 160 PUNCH EQUI_DELTA("Gypsum")*172.2*1000/2.96 ###################### 202 PUNCH KIN_DELTA("Barite")*233.39*1000/4.5 206 PUNCH KIN_DELTA("Quartz")*60*1000/2.65 210 PUNCH KIN_DELTA("Dolomite")*184.4*1000/2.84 550 PUNCH SR("Barite") 650 PUNCH SR("Quartz") 750 PUNCH SR("Dolomite") #################################################USE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE2USE KINETICS 3USE EQUILIBRIUM_PHASES 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE10USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE20USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE40USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE70USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE100USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE130USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE160USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE190USE EQUILIBRIUM_PHASES 3USE KINETICS 3ENDUSE SOLUTION 3USE REACTION_TEMPERATURE 3REACTION_PRESSURE220USE EQUILIBRIUM_PHASES 3USE KINETICS 3END