PhreeqcUsers Discussion Forum

Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Conceptual Models »
  • Kinetics and rate controlling factors »
  • Discrepancy between Kinetic Delta Moles and moles value from RATES
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Discrepancy between Kinetic Delta Moles and moles value from RATES  (Read 2019 times)

bleebo

  • Contributor
  • Posts: 2
Discrepancy between Kinetic Delta Moles and moles value from RATES
« on: 16/05/21 02:18 »
Hi, I'm trying to make a transport kinetic model for precipitation of amorphous silica, but I'm confused with "Delta Moles" in the output file. If my reacted moles come from RATES, I would expect Delta Moles to be the same as the value saved in RATES for each step, because the formula under KINETICS has a stoichiometry of 1.

I had my output file return the moles value from RATES with user_print, and it's about half the value under Delta Moles.

e.g.
Kinetics Delta Moles: 9.720e-05
moles (from RATES): -4.3610e-05

What else is considered for the kinetic Delta Moles value?

Thanks.

My input:
Code: [Select]
SOLUTION 0
  temp 79.4
  pH 8.89
  pe 4
  redox pe
  units mg/L
  density 1
  Si 86.3
  Cl 29.74
  S(6) 50.48
  C 128.1
  F 2.39
  Na 100
  K 0.82
  Ca 2.37
  -water 12.56637061  # kg

SOLUTION 1-20
  -water    12.56637061 # kg

REACTION_TEMPERATURE 1
    70
REACTION_TEMPERATURE 2
    68
REACTION_TEMPERATURE 3
    65.2
REACTION_TEMPERATURE 4
    62.4
REACTION_TEMPERATURE 5
    59.7
REACTION_TEMPERATURE 6
    56.9
REACTION_TEMPERATURE 7
    54.1
REACTION_TEMPERATURE 8
    51.3
REACTION_TEMPERATURE 9
    48.6
REACTION_TEMPERATURE 10
    45.8
REACTION_TEMPERATURE 11
    43
REACTION_TEMPERATURE 12
    23
REACTION_TEMPERATURE 13
    20.8
REACTION_TEMPERATURE 14
    18.5
REACTION_TEMPERATURE 15
    16.25
REACTION_TEMPERATURE 16
    14
REACTION_TEMPERATURE 17
    11.75
REACTION_TEMPERATURE 18
    9.5
REACTION_TEMPERATURE 19
    7.25
REACTION_TEMPERATURE 20
    5

RATES
SiO2(am)
  -start
  10 kt = 0.202 * EXP( -49.8 / ( 8.314472e-3 * TK ) )
  20 PUT(kt,1)
  30 r = kt * (1 - SR("SiO2(am)"))
  40 PUT(r,2)
  50 f = 1 + ( 1500 * tot("Na") )
  60 if tot("Na") > 0.02 then f = 1
  70 rate = r * 100 * f * (m/m0)^0.67
  80 PUT(rate,3)
  90 moles = rate * time
  100 PUT(moles,4)
  110 save moles
  -end
 
KINETICS 1-20
SiO2(am)
  -formula SiO2 1
  -m0 0.00038

TRANSPORT
  -cells 20
  -shifts 51566
  -time_step 2.513274123 minute
  -lengths 20*10
  -print_cells 1-20
  -print_frequency 51566
  -punch_cells 1-20
  -punch_frequency 51566

USER_PRINT
-start
  10 PRINT "-m0:", M0
  20 PRINT "-m:", M
  30 PRINT "Time (RATES):", time
  40 PRINT "kt:", GET(1)
  50 PRINT "r:", GET(2)
  60 PRINT "rate:", GET(3)
  70 PRINT "moles:", GET(4)
-end

Last step (output):
Code: [Select]
Using mix 20.
Using temperature 20.
Using kinetics 20.

Mixture 20.

  4.524e-10 Solution 19 Solution after simulation 1.                           
  1.000e+00 Solution 20 Solution after simulation 1.                           
  0.000e+00 Solution 21 Solution after simulation 1.                           

Kinetics 20.

Time:      7.77597e+06 seconds
Time step: 150.796 seconds

Rate name       Delta Moles Total Moles   Reactant        Coefficient

SiO2(am)          9.720e-05   1.880e+00   SiO2                      1

----------------------------------User print-----------------------------------

-m0: 3.8000e-04
-m: 1.8800e+00
Time (RATES): 7.5398e+01
kt: 8.9836e-11
r: -2.5726e-12
rate: -5.7840e-07
moles: -4.3610e-05
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 3996
Re: Discrepancy between Kinetic Delta Moles and moles value from RATES
« Reply #1 on: 17/05/21 03:43 »
In USER_PRINT, KIN_DELTA is the number of moles of kinetic reaction transferred in the current kinetic step. If you print at the end of your run, it will be the transfer that occurred during step 51566. The amount of kinetic reaction remaining is given by KIN("SiO2(am)") within USER_PRINT. These same values will be printed in the Kinetics data block in the output for each cell.

The value for SAVE in RATES may or may be similar to KIN_DELTA, but it probably will not be the same. The code of RATES is evaluated at multiple point within the time interval given by the time step definition. The default Runge-Kutta method that you are using (as opposed to -cvode) will evaluate the rate at 6 different points, and not in sequential order. It takes the rate calculated at these points and estimates the rate integrated rate for the entire time step. So, the last value of SAVE is included with other rate estimates to arrive at the final integrated rate.

Logged

bleebo

  • Contributor
  • Posts: 2
Re: Discrepancy between Kinetic Delta Moles and moles value from RATES
« Reply #2 on: 17/05/21 20:43 »
Got it, thank you!
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Conceptual Models »
  • Kinetics and rate controlling factors »
  • Discrepancy between Kinetic Delta Moles and moles value from RATES
 

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