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