RATES anorthite-start1 rem unit should be mol,kgw-1 and second-12 rem parm(1) is surface area in the unit of m2/kgw3 rem calculation of surface area can be found in the note 4 rem M is current moles of minerals M0 is the initial moles of minerals5 rem parm(2) is a scaling factor10 rem acid solution parameters11 a1=2.58E-01 12 E1=1660113 n1=1.41120 rem neutral solution parameters21 a2=1.00E-06 22 E2=1782130 rem base solution parameters31 a3=1.00E-22 32 E3=1815033 n2=-1.76736 rem rate=0 if no minerals and undersaturated40 SR_mineral=SR("anorthite")41 if (M<0) then goto 20042 if (M=0 and SR_mineral<1) then goto 20043 if (M0<=0) then SA=PARM(1) else SA=PARM(1)*(M/M0)^0.6750 if (SA<=0) then SA=160 R=8.3145175 Rate1=a1*EXP(-E1/R/TK)*ACT("H+")^n1 #acid rate expression80 Rate2=a2*EXP(-E2/R/TK) #neutral rate expression85 Rate3=a3*EXP(-E3/R/TK)*ACT("H+")^n2 #base rate expression90 Rate=(Rate1+Rate2+Rate3)*(1-Sr_mineral)*SA*parm(2)100 moles= rate*Time110 rem do not dissolve more minerals than present115 if (moles>M) then moles=M200 save moles-end Calcite-start 10 rem unit should be mol,kgw-1 and second-1 20 rem parm(1) is surface area in the unit of m2/kgw 30 rem calculation of surface area can be foundin the note 40 rem M is current moles of minerals M0 is the initial moles of minerals 50 rem parm(2) is a scaling factor 60 rem acid soltion parameters 70 a1=0 80 E1=0 90 n1=0100 rem neutral solution parameters110 a2=6.59E+04120 E2=66000130 rem co2 solution parameters140 a3=1.04E+09150 E3=67000160 n2=1.6170 rem rate = 0 if no minerals and undersaturated180 SR_mineral=SR("calcite")190 if (M<0) then goto 310200 if (M=0 and SR_mineral<1) then goto 310210 if (M0<=0) then SA=PARM(1) else SA=PARM(1)*(M/M0)^0.67220 if (SA<=0) then SA=1230 R=8.31451240 Rate1= a1*EXP(-E1/R/TK)*ACT("H+")^n1250 Rate2=a2*EXP(-E2/R/TK)260 Rate3=a3*EXP(-E3/R/TK)*ACT("HCO3-")^n2270 Rate=(Rate1+Rate2+Rate3)*(1-SR_mineral)*SA*parm(2)280 moles= Rate*Time290 rem do not dissolve more minerals than present300 if (moles>M) then moles=M310 save moles-endSOLUTION_SPECIES#Al+3 + 4H2O = Al(OH)4- + 4H+#log_k -22.7#H4SiO4 = H4SiO4# -dw 1.10e-9# -Vm 10.5 1.7 20 -2.7 0.1291 # supcrt + 2*H2O in a1SiO2 + 2H2O = H4SiO4 log_k -2.71 delta_h 3.91 kcalPHASESAnorthite CaAl2(SiO4)2 +8.0000 H+ = + 1.0000 Ca++ + 2.0000 Al+++ + 2.0000 SiO2 + 4.0000 H2O log_k 26.5780 -delta_H -303.039 kJ/mol # Calculated enthalpy of reaction Anorthite# Enthalpy of formation: -1007.55 kcal/mol -analytic 3.9717e-001 -1.8751e-002 1.4897e+004 -6.3078e+000 -2.3885e+005# -Range: 0-300Calcite CaCO3 +1.0000 H+ = + 1.0000 Ca++ + 1.0000 HCO3- log_k 1.8487 -delta_H -25.7149 kJ/mol # Calculated enthalpy of reaction Calcite# Enthalpy of formation: -288.552 kcal/mol -analytic -1.4978e+002 -4.8370e-002 4.8974e+003 6.0458e+001 7.6464e+001# -Range: 0-300ENDSOLUTION 1 temp 80 pH 4 pe 4 redox pe units mol/kgw density 1 -water 1 # kgGAS_PHASE 1 -fixed_pressure -pressure 100 -volume 1e5 -temperature 80 CO2(g) 100KINETICS 1anorthite -formula anorthite 1 -m 1 -m0 1 -parms 1000 1 -tol 1e-08Calcite -formula CaCO3 1 -m 0 -m0 0 -parms 1 1 -tol 1e-08-steps 8640000 in 100 steps # seconds-step_divide 1-runge_kutta 3-bad_step_max 500-cvode true -cvode_steps 100-cvode_order 5INCREMENTAL_REACTIONS TrueUSER_GRAPH 1 -headings TIME(Days) SI("anorthite") SI("calcite") -axis_titles "Time (Days)" "SI" "" -chart_title "Saturation Index" -initial_solutions false -connect_simulations true -plot_concentration_vs x -start10 GRAPH_X Total_TIME/8640020 GRAPH_Y SI("anorthite")30 GRAPH_Y SI("calcite") -end -active trueUSER_GRAPH 2 -headings rxn KIN("anorthite") KIN("calcite") -axis_titles "TIME (Days)" "milli moles" "" -chart_title "Dissolution/precipitation" -initial_solutions false -connect_simulations true -plot_concentration_vs t -start10 GRAPH_X TOTAL_TIME/(86400)20 GRAPH_Y KIN("anorthite")*1000 KIN("calcite")*1000 -end -active trueSELECTED_OUTPUT 1 -file C:\Users\hp\Desktop\25_April\Anorthite\An_1-25.sel -reset false -time true -pH trueUSER_PUNCH 1 -headings KIN("anorthite") KIN("calcite") Ca_conc -start 10 PUNCH KIN("anorthite")*1000 20 PUNCH KIN("calcite")*1000 30 PUNCH TOT("Ca")*1000 -end END