PhreeqcUsers Discussion Forum

Registrations currently disabled due to excessive spam. Please email phreeqcusers at gmail.com to request an account.
Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Dissolution and precipitation »
  • Cement scCO2 interaction
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Cement scCO2 interaction  (Read 1439 times)

zscowcrofst

  • Frequent Contributor
  • Posts: 13
Cement scCO2 interaction
« on: 16/04/24 16:12 »
I am trying to model cement attack by supercritical CO2. The test is to expose hydrated cement to scCO2 for few weeks. I am not sure if I set up the model correctly. These are my steps:
Sim1: Define the RATES and PHASES
Sim2: Equilibrate the water (brine)
Sim3: Define scCO2 as gas phase and then add the kinetics.
I defined scCO2 as a fixed volume to represent and batch test. I was expecting to see the dissolution of the cement minerals (C2S, C3S,  ECSH1-TobCa, Calcite and Quartz). But only C3S and Quartz dissolve and C2S starts to precipitate and there is no change to the others. As I am expecting other minerals like Vaterite and Aragonite to precipitate. I am not sure if the setup is correct. I am using the cement database from here: https://www.empa.ch/documents/55996/478090/Cemdata+032022/619b9ec7-1772-4c1e-9eec-ce9281b8772e

Code: [Select]
RATES
    Quartz
-start
  1 rem unit should be mol,kgw-1 and second-1
  2 rem parm(1) is surface area in the unit of m2/kgw
  3 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 minerals
  5 rem parm(2) is a correction factor
 10 rem acid solution parameters
 11 a1=0
 12 E1=0
 13 n1=0
 20 rem neutral solution parameters
 21 a2=1.98
 22 E2=77000
 30 rem base solution parameters
 31 a3=1.97E+04
 32 E3=80000
 33 n2=0.34
 36 rem rate=0 if no minerals and undersaturated
 40 SR_mineral=SR("Quartz")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 if (M0<=0) then SA=PARM(1) else SA=PARM(1)*(M/M0)^0.67
 50 if (SA<=0) then SA=1
 60 R=8.31451
 75 Rate1=a1*EXP(-E1/R/TK)*ACT("H+")^n1
 80 Rate2=a2*EXP(-E2/R/TK)
 85 Rate3=a3*EXP(-E3/R/TK)*ACT("OH-")^n2
 90 Rate=(Rate1+Rate2+Rate3)*(1-Sr_mineral)*SA*parm(2)
100 moles= rate*Time
200 save moles
-end
    Calcite
-start
  1 rem unit should be mol,kgw-1 and second-1
  2 rem parm(1) is surface area in the unit of m2/kgw
  3 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 minerals
  5 rem parm(2) is a correction factor
 10 rem acid solution parameters
 11 a1=0
 12 E1=0
 13 n1=0
 20 rem neutral solution parameters
 21 a2=6.59E+04
 22 E2=66000
 30 rem co2 solution parameters
 31 a3=1.04E+09
 32 E3=67000
 33 n2=1.6
 36 rem rate=0 if no minerals and undersaturated
 40 SR_mineral=SR("calcite")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 if (M0<=0) then SA=PARM(1) else SA=PARM(1)*(M/M0)^0.67
 50 if (SA<=0) then SA=1
 60 R=8.31451
 75 Rate1=a1*EXP(-E1/R/TK)*ACT("H+")^n1 
 80 Rate2=a2*EXP(-E2/R/TK)               
 85 Rate3=a3*EXP(-E3/R/TK)*ACT("HCO3-")^n2   
 90 Rate=(Rate1+Rate2+Rate3)*(1-Sr_mineral)*SA*parm(2)
100 moles= rate*Time
200 save moles
-end
    Aragonite
-start
 40 SR_mineral=SR("Aragonite")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 SA=PARM(1)
 50 if (SA<=0) then SA=1
 60 R=8.31451
 70 E=31379.792
 80 Rate=5.91e-4*EXP(-E/R/TK)
 90 Rate=Rate*(1-Sr_mineral)*SA
100 moles= rate*Time
200 save moles
-end
    Vaterite
-start
 40 SR_mineral=SR("Vaterite")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 SA=PARM(1)
 50 if (SA<=0) then SA=1
 90 Rate=1.491e-5*(1-Sr_mineral)*SA
100 moles= rate*Time
200 save moles
-end
    C2S
-start
 40 SR_mineral=SR("C2S")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 SA=PARM(1)
 50 if (SA<=0) then SA=1
 90 Rate=1.98e-2*(1-Sr_mineral)*SA
100 moles= rate*Time
200 save moles
-end
    C3S
-start
 40 SR_mineral=SR("C3S")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 43 SA=PARM(1)
 50 if (SA<=0) then SA=1
 90 Rate=1.98e-5*(1-Sr_mineral)*SA
100 moles= rate*Time
200 save moles
-end
    ECSH2-TobCa
-start
 10 rem acid solution parameters
 11 a1=6.32E-04 
 12 E1=23000
 13 n1=0.275
 20 rem neutral solution parameters
 21 a2=1.71E-14
 22 E2=23000
 36 rem rate=0 if no minerals and undersaturated
 40 SR_mineral=SR("CSH(0.8)")
 41 if (M<0) then goto 200
 42 if (M=0 and SR_mineral<1) then goto 200
 50 if (SA<=0) then SA=1
 60 R=8.31451
 75 Rate1=a1*EXP(-E1/R/TK)*ACT("H+")^n1 
 80 Rate2=a2*EXP(-E2/R/TK)               
 90 Rate=(Rate1+Rate2)*(1-Sr_mineral)*SA
100 moles= rate*Time
200 save moles
-end

PHASES
Aragonite
    CaCO3 = CO3-2 + Ca+2
    log_k     -8.336133
    -analytical_expression 130.197564 0 -5675.517045 -48.293026 0 0
    -Vm       34.15 cm3/mol
Calcite
    Ca1C1O3 + H+ = Ca+2 + HCO3-
    -analytical_expression 4764.488 1.443789 -196549.5 -1855.352 8937845 -0.0004900053
    -Vm       36.89 cm3/mol
Quartz
    Si1O2 = SiO2
    -analytical_expression 2089.278 0.6665849 -82477.2 -821.3385 3309389 -0.0002253255
    -Vm       22.69 cm3/mol
C2S
    (CaO)2SiO2 + 4H+ = 2Ca+2 + 2H2O + SiO2
    log_k     38.567691
    -analytical_expression -4.75838 0 12467.437992 0.569296 0 0
    -Vm       51.79 cm3/mol
C3S
    (CaO)3SiO2 + 6H+ = 3Ca+2 + 3H2O + SiO2
    log_k     73.405906
    -analytical_expression -6.720801 0 23294.175088 0.748984 0 0
    -Vm       73.18 cm3/mol
Vaterite
    CaCO3 = CO3-2 + Ca+2
    log_k     -7.913
    -analytical_expression -172.13 -0.07799 3074.688 71.595 0 0
    -Vm       37.63 cm3/mol
ECSH2-TobCa
    ((Ca(OH)2)0.8333SiO2H2O)1 + 1.6666H+ = 0.8333Ca+2 + 2.6666H2O + SiO2
    log_k     11.019995
    -analytical_expression -13.776918 0 3023.19863 5.923868 0 0
    -Vm       68 cm3/mol
END

SOLUTION 1
    temp      110
    pH        7
    pe        4
    redox     pe
    units     ppm
    density   1
    Alkalinity 500 as HCO3-
    B         25
    Ba        2
    Br        70
    Ca        50
    Cl        20000 charge
    I         4
    K         140
    Mg        20
    Na        15000
    P         1.5
    S(6)      300
    Si        15
    Sr        3
    -water    1 # kg
EQUILIBRIUM_PHASES 1
    C2S       0 0.2
    C3S       0 0.3
    ECSH1-TobCa 0 0.2
    Calcite   0 0.1
    Quartz    0 0.2

SAVE solution 1
END

USE solution 1
GAS_PHASE 1
    -fixed_volume
    -equilibrium with solution 1
    -pressure 280
    -volume 1
    -temperature 110
    CO2(g)    280
KINETICS 1
C2S
    -formula  (CaO)2SiO2  1
    -m        1
    -m0       20
    -parms    10
    -tol      1e-08
C3S
    -formula  (CaO)3SiO2  1
    -m        1
    -m0       20
    -parms    10
    -tol      1e-08
ECSH2-TobCa
    -formula  ((Ca(OH)2)0.8333SiO2H2O)1  1
    -m        1
    -m0       20
    -parms    10
    -tol      1e-08
Calcite
    -formula  Ca1C1O3  1
    -m        1
    -m0       20.9
    -parms    91.5 1
    -tol      1e-08
Quartz
    -formula  SiO2  1
    -m        1
    -m0       6.6
    -parms    23.13 0.16
    -tol      1e-08
Aragonite
    -formula  Aragonite  1
    -m        0
    -m0       0
    -parms    91.5 1
    -tol      1e-08
Vaterite
    -formula  CaCO3  1
    -m        0
    -m0       0
    -parms    91.5 1
    -tol      1e-08
-steps       1 10 100 1000 10000 86400 172800 604800 1209600 1814400 2419200
-step_divide 1
-runge_kutta 3
-bad_step_max 500
-cvode true
-cvode_steps 100
-cvode_order 5

INCREMENTAL_REACTIONS True


USER_GRAPH 1
    -headings               rxn SI("Aragonite") SI("Calcite") SI("Quartz") SI("Vaterite") SI("C2S") SI("C3S")
    -axis_titles            "Time [Day]" "Saturation index [-]" ""
    -chart_title            "Saturation Index"
    -axis_scale x_axis      auto auto auto auto log
    -axis_scale sy_axis     auto auto auto auto log
    -initial_solutions      true
    -connect_simulations    true
    -plot_concentration_vs  x
  -start
10 GRAPH_X total_time/86400
20 GRAPH_Y  SI("Aragonite"),SI("Calcite"),SI("Quartz"),SI("Vaterite"),SI("C2S"),SI("C3S")
  -end
    -active                 true

USER_GRAPH 2
    -headings               x Calcite Quartz C2S C3S Aragonite Vaterite ECSH2 pH
    -axis_titles            "Time [Day]" "Phases Volume Changes (cm3/100g cement)" "pH [-]"
    -axis_scale x_axis      auto auto auto auto log
    -initial_solutions      true
    -connect_simulations    true
    -plot_concentration_vs  x
  -start
 10 v_calcite = KIN("Calcite")*36.89
 20 v_quartz = KIN("Quartz")*22.69
 30 v_c2s = KIN("C2S")*51.79
 40 v_c3s = KIN("C3S")*73.41
 50 v_arg = KIN("Aragonite")*34.15
 60 v_val = KIN("Vaterite")*37.63
 80 v_csh = KIN("ECSH2-TobCa")*68
 90 GRAPH_X TOTAL_TIME/86400
100 GRAPH_Y v_calcite,v_quartz,v_c2s,v_c3s,v_arg,v_val,v_csh
110 GRAPH_SY -LA("H+")
  -end
    -active                 true


Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4030
Re: Cement scCO2 interaction
« Reply #1 on: 16/04/24 17:33 »
I can't tell you whether you have set up your model correctly. You will have to do that by examining the plots and the output and checking the script.

It looks like calcite is reacting quickly enough to stay more or less in equilibrium. Calcite is more stable than vaterite or aragonite, so if calcite is in equilibrium then vaterite and aragonite will be undersaturated and will not precipitate. I am not familiar with the stabilities of the CS minerals.
Logged

zscowcrofst

  • Frequent Contributor
  • Posts: 13
Re: Cement scCO2 interaction
« Reply #2 on: 16/04/24 17:44 »
Thank you David for the insights. Is the way that I defined supercritical CO2 as gas phase is right?

Code: [Select]
USE solution 1
GAS_PHASE 1
    -fixed_volume
    -equilibrium with solution 1
    -pressure 280
    -volume 1
    -temperature 110
    CO2(g)    280
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4030
Re: Cement scCO2 interaction
« Reply #3 on: 16/04/24 20:15 »
Because it is a fixed-volume gas, PHREEQC will calculate a number of moles of CO2(g) based on the temperature, volume, CO2(g) pressure, and equation of state. In this case, it will then react that GAS_PHASE with solution 1 at the temperature specified for the reaction (either the SOLUTION temperature or REACTION_TEMPERATURE) with a volume of 1 L and a new pressure will be calculated. I think in your case, nearly all of the CO2 from the gas phase dissolves. 

An alternative is a fixed-pressure gas phase, where the volume of the gas phase will adjust, and the gas phase can disappear if the sum of the partial pressures of the gas components is less than the total pressure.

Finally, you could use EQUILIBRIUM_PHASES with CO2(g), where the partial pressure of CO2(g) is fixed (gas will enter or leave solution) unless the total amount of CO2 specified is consumed.



Logged

zscowcrofst

  • Frequent Contributor
  • Posts: 13
Re: Cement scCO2 interaction
« Reply #4 on: 17/04/24 02:52 »
Thank you for the explanation. I changed it to the following and now it makes sense:
Code: [Select]
EQUILIBRIUM_PHASES 2
    CO2(g)    2.45 10
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Dissolution and precipitation »
  • Cement scCO2 interaction
 

  • SMF 2.0.19 | SMF © 2021, Simple Machines | Terms and Policies
  • XHTML
  • RSS
  • WAP2