Processes > Oxidation and reduction equilibria
KINETICS with ZVI and Cr(6)
(1/1)
Rozeran:
Hello,
My aim is to oxidize Fe(0) to Fe(3) and Cr(6) to Cr(3).
I have been working on the following reaction stoichiometry and rate expression:
Fe(0)+ CrO42- + 4H2O ↔ Fe(OH)3 + Cr(OH)3 + 2OH-
dC/dt=-kobs*[CrO42-]
I didn't use two kinetics i.e. one for Fe and one for Cr. I only defined the kinetic rate expression above. And by taking stoichiometry between iron and chromium into account, I defined "-formula". With -formula command as Cr(6) oxidizes Fe(0) oxidizes as well.
--- Code: ---TITLE 50IR Column w/ 0.07 ml/cm2.min flux & average velocity of 153.96 cm/day & 5 hours of simulation
*************************************************************************************
SOLUTION_MASTER_SPECIES
Cr_six Cr_sixO4-2 0.0 Cr_six 51.996
Cr_tri Cr_tri(OH)2+ 0.0 Cr_tri 51.996
#
#Zero Valent Iron######
#
#Fezero Fezero 0.0 55.847 55.847
Fezero Fezero+3 0.0 55.847 55.847
#Fezero(2) Fezero+2 0.0 55.847
Fezero(3) Fezero+3 -2.0 55.847
SOLUTION_SPECIES
Cr_sixO4-2 = Cr_sixO4-2
log_k 0
delta_h 0 kcal
-gamma 4.0 0.0
Cr_sixO4-2 + H+ = HCr_sixO4-
log_k 6.5089
delta_h 0.9 kcal
Cr_sixO4-2 + 2H+ = H2Cr_sixO4
log_k 5.6513
delta_h 0 kcal
2Cr_sixO4-2 + 2H+ = Cr_six2O7-2 + H2O
log_k 14.5571
delta_h -2.995 kcal
#Cr_tri(OH)2+ + 2H+ + e- = Cr_two + 2H2O
#log_k 2.947
#delta_h 6.36 kcal
#Cr_sixO4-2 + 6H+ + 3e- = Cr_tri(OH)2+ + 2H2O
#log_k 67.376
#delta_h -103 kcal
Cr_tri(OH)2+ = Cr_tri(OH)2+
log_k 0.0
Cr_tri(OH)2+ + 2H+ = Cr_tri+3 + 2H2O
log_k 9.62
delta_h -20.14 kcal
Cr_tri(OH)2+ + H+ = Cr_tri(OH)+2 + H2O
log_k 5.62
delta_h 0 kcal
Cr_tri(OH)2+ + H2O = Cr_tri(OH)3 + H+
log_k -7.13
delta_h 0 kcal
Cr_tri(OH)2+ + 2H2O = Cr_tri(OH)4- + 2H+
log_k -18.15
delta_h 0 kcal
Cr_tri(OH)2+ = Cr_triO2- + 2H+
log_k -17.7456
delta_h 0 kcal
#
#Fezero species
###
#Fezero = Fezero
#log_k 0.0
Fezero+3 = Fezero+3
log_k 0
delta_h 0 kcal
-gamma 9.0 0.0
Fezero+3 + 3e- = Fezero
log_k -1.878
#Fezero+3 + e- = Fezero+2
#log_k 13.032
#delta_h -10 kcal
#-gamma 6.0 0.0
#Fezero+2 + H2O = FezeroOH+ + H+
#log_k -9.5
#delta_h 13.199 kcal
#-gamma 5 0
#Fezero+2 + 3H2O = Fezero(OH)3- + 3H+
#log_k -31
#delta_h 30.3 kcal
#-gamma 5 0
#Fezero+2 + 2H2O = Fezero(OH)2 + 2H+
#log_k -20.57
#delta_h 28.565 kcal
Fezero+3 + Cl- = FezeroCl+2
log_k 1.48
delta_h 5.6 kcal
-gamma 5 0
Fezero+3 + 2Cl- = FezeroCl2+
log_k 2.13
delta_h 0 kcal
-gamma 5 0
Fezero+3 + 3Cl- = FezeroCl3
log_k 1.13
delta_h 0 kcal
Fezero+3 + 2H2O = Fezero(OH)2+ + 2H+
log_k -5.67
delta_h 0 kcal
-gamma 5.4 0
Fezero+3 + 3H2O = Fezero(OH)3 + 3H+
log_k -13.6
delta_h 0 kcal
Fezero+3 + 4H2O = Fezero(OH)4- + 4H+
log_k -21.6
delta_h 0 kcal
-gamma 5.4 0
2Fezero+3 + 2H2O = Fezero2(OH)2+4 + 2H+
log_k -2.95
delta_h 13.5 kcal
3Fezero+3 + 4H2O = Fezero3(OH)4+5 + 4H+
log_k -6.3
delta_h 14.3 kcal
#Fezero + CrO4-2 + 4 H+ = Cr+3 + Fezero+3 + 4 OH-
#log_k -5.6
PHASES
Cr_tri(OH)3
Cr_tri(OH)3 + H+ = Cr_tri(OH)2+ + H2O
log_k 1.7005
delta_h -7.115 kcal
#Fezero(OH)3
#Fezero+3 + 3H2O = Fezero(OH)3 + 3H+
#log_k -13.6
#delta_h 0 kcal
END
SOLUTION 0
units mmol/kgw
pH 7.0
Cr_six 0.385
Na 10.0 charge
Cl 10.0
SOLUTION 1-15
units mmol/kgw
pH 7.0
Na 10.0e-30 #charge
Cl 10.0e-30
Fezero 29.19
END
RATES
Cr_six_ox
-start
10 Cr_six = TOT("Cr_six") # Total molality of Cr_six
20 if (Cr_six <= 0) then goto 200 #the amount of Cr_six is less than zero i.e. not enough
30 kobs = 0.454 #1635.83 h-1 = 0.454 s-1
40 moles = kobs * Cr_six * TIME #rate expression
200 SAVE moles
-end
KINETICS 1-15
Cr_six_ox
-formula Cr_six -1.0 Cr_tri 1.0 Fezero -1.0 Fezero+3 1.0
#-steps 1 3 5 10
#-step_divide 1
#INCREMENTAL_REACTIONS true
TRANSPORT
-cells 15
-length 0.01 #0.5 cm
-shifts 33 #5 hours of simulation
-time_step 561.2 #seconds
-flow_direction forward
-boundary_condition flux flux
-dispersivity 0.14
-correct_disp true
-diffusion_coef 0.0e-25
-punch_cells 15
-punch_frequency 1
-print_cells 15
-print_frequency 1
#
SELECTED_OUTPUT
-file ZVIOX_III.sel
-reset true
USER_PUNCH
-headings Time Cr_six Cr_tri Fezero Fezero+3 pH SI_Cr(OH)3
10 PUNCH TOTAL_TIME, TOT("Cr_six"), TOT("Cr_tri"), TOT("Fezero"), TOT("Fezero+3"), -LA("H+"), SI("Cr_tri(OH)3")
END
--- End code ---
Since the reaction rate constant kobs is high, Cr(6) is finished way before the first step. But what I dont understand in the results is that Fezero+3 is always 0.00 mol/kgw. In the results I can see that Fezero conc. is changing but this does not effect Fezero+3 conc. And I am looking for TOT("Fezero+3").
I pasted the results for Fezero and Fezero+3 below. Why Fezero+3 conc. equal to 0.00 while Fezero conc is changing?
Thanks in advance
--- Code: ---soln time Fezero Fezero+3
15 0,00 2,92E-02 0,00E+00
15 561,20 2,89E-02 0,00E+00
15 1122,40 2,77E-02 0,00E+00
15 1683,60 2,61E-02 0,00E+00
15 2244,80 2,43E-02 0,00E+00
15 2806,00 2,26E-02 0,00E+00
15 3367,20 2,09E-02 0,00E+00
15 3928,40 1,93E-02 0,00E+00
15 4489,60 1,79E-02 0,00E+00
15 5050,80 1,66E-02 0,00E+00
15 5612,00 1,53E-02 0,00E+00
15 6173,20 1,42E-02 0,00E+00
15 6734,40 1,31E-02 0,00E+00
15 7295,60 1,21E-02 0,00E+00
15 7856,80 1,12E-02 0,00E+00
15 8418,00 1,04E-02 0,00E+00
15 8979,20 9,60E-03 0,00E+00
15 9540,40 8,88E-03 0,00E+00
15 10101,60 8,21E-03 0,00E+00
15 10662,80 7,60E-03 0,00E+00
15 11224,00 7,03E-03 0,00E+00
15 11785,20 6,50E-03 0,00E+00
15 12346,40 6,01E-03 0,00E+00
15 12907,60 5,56E-03 0,00E+00
15 13468,80 5,14E-03 0,00E+00
15 14030,00 4,76E-03 0,00E+00
15 14591,20 4,40E-03 0,00E+00
15 15152,40 4,07E-03 0,00E+00
15 15713,60 3,77E-03 0,00E+00
15 16274,80 3,48E-03 0,00E+00
15 16836,00 3,22E-03 0,00E+00
15 17397,20 2,98E-03 0,00E+00
15 17958,40 2,76E-03 0,00E+00
15 18519,60 2,55E-03 0,00E+00
--- End code ---
dlparkhurst:
I don't think you need the extra definitions for Cr_six, Cr_three, and Fezero.
If you add ZVI (Fe) by the kinetic reaction, equilibrium will distribute between Cr(6), Cr(3), Fe(3), and Fe(2). Here is the way I would do it.
--- Code: ---PHASES
Cr(OH)3
Cr(OH)3 + H+ = Cr(OH)2+ + H2O
log_k 1.7005
delta_h -7.115 kcal
END
SOLUTION 0
units mmol/kgw
pH 7.0
Cr(6) 0.385
Na 10.0 charge
Cl 10.0
SOLUTION 1-15
units mmol/kgw
pH 7.0
Na 10.0e-30 #charge
Cl 10.0e-30
#Fezero 29.19
END
RATES
Cr_reduction
-start
10 Cr_six = TOT("Cr(6)") # Total molality of Cr_six
20 if (Cr_six <= 0) then goto 200 #the amount of Cr_six is less than zero i.e. not enough
30 kobs = 0.454 #1635.83 h-1 = 0.454 s-1
40 moles = kobs * Cr_six * TIME #rate expression
200 SAVE moles
-end
KINETICS 1-15
Cr_reduction
-m 0.02919
-formula Fe 1.0
END
TRANSPORT
-cells 15
-length 0.01 #0.5 cm
-shifts 33 #5 hours of simulation
-time_step 561.2 #seconds
-flow_direction forward
-boundary_condition flux flux
-dispersivity 0.14
-correct_disp true
-diffusion_coef 0.0e-25
-punch_cells 15
-punch_frequency 1
-print_cells 15
-print_frequency 1
#
USER_GRAPH 1
-headings time Cr(6) Cr(3) Fe(3) Fe(2) pH
-initial_solutions false
-connect_simulations true
-plot_concentration_vs x
-start
10 GRAPH_X TOTAL_TIME
20 GRAPH_Y TOT("Cr(6)"), TOT("Cr(3)"), TOT("Fe(3)"), TOT("Fe(2)")
30 GRAPH_SY -LA("H+")
-end
-active true
END
--- End code ---
Rozeran:
Thank you @dlparkhurst
As you said, when you did not add the extra definitions for Cr(6), Cr(3) etc., equilibrium will distribute concentrations.
So, with the code of yours, Cr(6) reduction to Cr(3) will happen according to equilibrium reactions given in minteq-v4 (used minteq.v4 as a database, the reaction is below). And this means the reduction will not follow the first order kinetic formula we defined, right? Please correct me if I am wrong.
CrO4-2 + 6H+ + 3e- = Cr(OH)2+ + 2H2O
log_k 67.376
delta_h -103 kcal
Since there is no decoupling, it will follow equilibrium reactions. And I specifically want Cr(6) reduction to follow the first order kinetic. In this regard, I rearranged the code you sent in the following way. In another post (title:Kinetic Oxidation of Cr (VI) to Cr(III) by Fe0) we discussed Cr(6) decoupling and i used that code actually.
--- Code: ---####Average velocity of 153.96 cm/day 50IR Column####
SOLUTION_MASTER_SPECIES
Cr_six Cr_sixO4-2 0.0 Cr_six 51.996
Cr_tri Cr_tri(OH)2+ 0.0 Cr_tri 51.996
SOLUTION_SPECIES
Cr_sixO4-2 = Cr_sixO4-2
log_k 0
delta_h 0 kcal
-gamma 4.0 0.0
Cr_sixO4-2 + H+ = HCr_sixO4-
log_k 6.5089
delta_h 0.9 kcal
Cr_sixO4-2 + 2H+ = H2Cr_sixO4
log_k 5.6513
delta_h 0 kcal
2Cr_sixO4-2 + 2H+ = Cr_six2O7-2 + H2O
log_k 14.5571
delta_h -2.995 kcal
#Cr_tri(OH)2+ + 2H+ + e- = Cr_two + 2H2O
# log_k 2.947
# delta_h 6.36 kcal
#Cr_sixO4-2 + 6H+ + 3e- = Cr_tri(OH)2+ + 2H2O
# log_k 67.376
# delta_h -103 kcal
Cr_tri(OH)2+ = Cr_tri(OH)2+
log_k 0.0
Cr_tri(OH)2+ + 2H+ = Cr_tri+3 + 2H2O
log_k 9.62
delta_h -20.14 kcal
Cr_tri(OH)2+ + H+ = Cr_tri(OH)+2 + H2O
log_k 5.62
delta_h 0 kcal
Cr_tri(OH)2+ + H2O = Cr_tri(OH)3 + H+
log_k -7.13
delta_h 0 kcal
Cr_tri(OH)2+ + 2H2O = Cr_tri(OH)4- + 2H+
log_k -18.15
delta_h 0 kcal
Cr_tri(OH)2+ = Cr_triO2- + 2H+
log_k -17.7456
delta_h 0 kcal
PHASES
Cr_tri(OH)3
Cr_tri(OH)3 + H+ = Cr_tri(OH)2+ + H2O
log_k 1.7005
delta_h -7.115 kcal
END
#
SOLUTION 0
units mmol/kgw
pH 7.0
Cr_six 0.385
Na 10.0 charge
Cl 10.0
SOLUTION 1-15
units mmol/kgw
pH 7.0
Na 10.0e-30 #charge
Cl 10.0e-30
END
#
RATES
Cr_ox
-start
10 C = TOT("Cr_six")
20 if (C <= 0) then goto 200
30 k1 = 4.54e-1
40 moles = k1 * C * TIME
200 SAVE moles
-end
KINETICS 1-15
Cr_ox
-m 0.02919
-formula Fe 1.0
END
#
TRANSPORT
-cells 15
-length 0.01 #meters
-shifts 33 #5 hours of simulation
-time_step 561.2 #seconds
-flow_direction forward
-boundary_condition flux flux
-dispersivity 0.14
#-correct_disp true
-diffusion_coef 0.0e-25
-punch_cells 1-15
-punch_frequency 1
-print_cells 1-15
-print_frequency 1
SELECTED_OUTPUT
-file DNM1.sel
-reset true
-totals time Cr_six Cr_tri Fe(3) Fe(2) pH Na Cl
END
--- End code ---
dlparkhurst:
The rate is determined by how fast Fe is reacted, so, yes, it will follow first order kinetics
Rozeran:
Thank you for the answer @dlparkhurst
One more question I have. You put Fe under KINETICS 1-15 (instead of defining under SOLUTION 1-15).
Can we say that Fe is in solid phase here not aqeous? And I can further define surface area related coefficients.
Navigation
[0] Message Index
Go to full version