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 »
  • Reactive transport modelling »
  • Mass balance and dual porosity
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Mass balance and dual porosity  (Read 4376 times)

Caroline

  • Contributor
  • Posts: 4
Mass balance and dual porosity
« on: 09/01/17 16:33 »
Hello everyone,

I have some troubles with mass balance calculation during transport with dual porosity. There should be something I misunderstood as I am a new Phreeqc user.
In the total cell input (Cell 1 + Cell 3) I have 0.053 moles of Halite (NaCl). When I integrate on the total transportation time in cell 1, I get 0.17 moles of Na in solution and 0.23 moles when I use Kinetics keyword.

Is it possible to tell me what I am doing wrong ?

Thanks a lot in advance !

Caroline

Code: [Select]

RATES
Halite
start
1 dpmet = ((1 / TK) - (1 / 298.15)) / 8.3144
2 SRmin = SR("Halite")
10 moles = 0
20 If (m <= 0) or (SRmin > 1) Then GoTo 110
30 S = 1 # Default value
40 Mm = 58.4 # molar mass in g/mol
50 knu = 0.617 * exp((-7400) * dpmet)
60 k = knu
70 theta = 1 # default value
80 eta = 1 # default value
90 rate = S * m * Mm * k * (1 - SRmin ) # by default
100 moles = rate * Time
110 Save moles
end

SOLUTION 1-3
temp 20
Na 0
water 1e-8

SOLUTION 0
temp 20
pH 7.01
Na 0
water 2.15e-2

EQUILIBRIUM_PHASES 1
Halite 0 0.011 dissolve_only

EQUILIBRIUM_PHASES 3
Halite 0 0.042 dissolve_only

KINETICS 1
Halite
m0 0.011

KINETICS 3
Halite
m0 0.042

TRANSPORT
cells 1
shifts 159
time_step 135.74
length 1*0.0278
boundary_conditions flux flux
flow_direction forward
stagnant 1 8e-4 0.1 0.4
diffusion_coefficient 1e-9
      punch_cells          1-3
punch_frequency 1

SELECTED_OUTPUT 1
    -file                 C:\Users\Caroline\Desktop\Phrqc phase 1\Output 09 01 2017.csv
    -reset                false
USER_PUNCH 1
    -headings  time(min) Cell_no pH Na(mol) Halite(mol)
    -start
05 if (CELL_NO <>1) then goto 100
07 PUNCH TOTAL_TIME/60
08 PUNCH CELL_NO
09 PUNCH -LA("H+")
30 PUNCH TOTMOLE("Na")
40 PUNCH EQUI("Halite")
100 REM end
    -end

Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4222
Re: Mass balance and dual porosity
« Reply #1 on: 09/01/17 21:33 »
Here is a simple example that calculates the mole balance in TRANSPORT. The calculation in USER_PRINT accounts for the porosities of the mobile and immobile zones.

SOLUTION 0
    temp      25
    pH        7
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    -water    1 # kg
SOLUTION 1-3
    temp      25
    pH        7
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    -water    1 # kg
END
EQUILIBRIUM_PHASES 3
Halite 0 10
END
TRANSPORT
    -time_step             1 # seconds
    -stagnant              1  0.01  0.3  0.1
    -print_cells           1-3
    -punch_cells           1-3
END
RUN_CELLS
-cell 1 3
USER_PRINT
1 if cell_no = 1 then f = 0.3 else f = 0.1
10 put(tot("Na") * f + get(1), 1)
20 if cell_no <> 3 then end
30 print 'Na in solutions', get(1), 'Na from halite', (10 - equi("Halite")) * f
Logged

Caroline

  • Contributor
  • Posts: 4
Re: Mass balance and dual porosity
« Reply #2 on: 11/01/17 07:42 »
Thanks a lot for the answer !
I think I understand better how it works.

Caroline
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Mass balance and dual porosity
 

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