Scott Charlton d5345a7aee Add 'phreeqc3-examples/' from commit 'e977363da4c1ae1708ebddca38d5312b6813a337'
git-subtree-dir: phreeqc3-examples
git-subtree-mainline: 8de0e98ed90bb2b639659c820168ab18c1062992
git-subtree-split: e977363da4c1ae1708ebddca38d5312b6813a337
2018-07-31 16:55:50 -06:00

113 lines
3.5 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# check with analytical calc'n of the current:
# sample with por = 0.1, diam 0.1 m, 30 mm long = 23.6 mL water
# c = 0.3M NaCl, D = 1e-9 for all solutes, 3 V / 30 mm:
# J_E(Na) = -(1e-9 * 0.1) * 0.3e3 * 96485 / (8.3145 * 298) * (3 - 0) / (30e-3 - 0) = -1.168e-4 * 7.85e-4 =
# -9.175e-8 eq (Na+)/s * F = -8.85 mC/s = -8.85 mA due to Na
# Total current : J_E(Na+) + -J_E(Cl-) = 2 * -8.85 = 17.7 mA
# D_Cl- = 2e-9 ? Then D_NaCl = 1.33, and the current is 17.7 * 1.33 = 23.6 mA
# With phreeqc.dat: Dw (25°C)): Na+ = 1.33e-9, Cl- 2.03e-9 : current = 1.61 * 17.7 = 28.5 mA
DATABASE ../database/wateq4f.dat
# SOLUTION_SPECIES
# Cl- = Cl-; -Dw 2.0e-9
EQUILIBRIUM_PHASES 0; H2(g) 0 0 # for bubbling out H2
EQUILIBRIUM_PHASES 101; O2(g) 0 0 # ... and O2
SOLUTION 0
pH 7 charge; Cl 300; Na 300
SOLUTION 1-100
-water 23.56e-5 # kg water in a cell
pH 7 charge; Cl 300; Na 300
SOLUTION 101
-water 1
pH 7 charge; Cl 300; Na 300
potential 3
END
PRINT; -reset false
TRANSPORT
-cells 100
-lengths 30e-5
-boundary_conditions 1 1
-multi_d true 1e-9 0.1 0.0 1
-flow_direction diffusion_only
-time_step 1 sec 1
-shifts 100
-punch_frequency 5
-punch_cells 0-101
USER_GRAPH 1 current
-headings t current_A from conc`s in cell 0
-axis_titles "time / hour" "current / mA"
-initial_solutions true
-axis_scale x_axis 0 100
1 if cell_no > 0 then end
2 if step_no > 0 then 10
3 put(mol("Na+") * tot("water"), 2) : put(mol("H+") * tot("water"), 3) : put(total_time , 1)
4 put(mol("Cl-") * tot("water"), 4) : put(mol("OH-") * tot("water"), 5)
5 end
10 graph_x total_time / 3600
20 graph_sy -1e3 * current_A
30 c = (mol("Na+") * tot("water") - get(2)) : put(mol("Na+") * tot("water"), 2)
# 32 c = c + (mol("H+") * tot("water") - get(3)) : put(mol("H+") * tot("water"), 3)
40 c2 = (mol("Cl-") * tot("water") - get(4)) : put(mol("Cl-") * tot("water"), 4)
# 42 c2 = c2 + (mol("OH-") * tot("water") - get(5)) : put(mol("OH-") * tot("water"), 5)
50 graph_sy (c + -c2) / (total_time - get(1)) * 96485 * 1e3
60 put(total_time , 1)
USER_GRAPH 2 Na- and Cl-concentration
-connect_simulations false
-plot_concentration_vs dist
-initial_solutions true
-axis_scale x_axis 0 30
-axis_titles "Distance in column / mm" "Na / (mol/kgw)" "Cl / (mol/kgw)"
1 if (floor(step_no / 50) <> step_no / 50) then end
2 if total_time < 100 then end
10 graph_x dist * 1e3
20 graph_y tot("Na")
30 graph_sy tot("Cl")
USER_GRAPH 3 potential
-connect_simulations false
-plot_concentration_vs dist
-initial_solutions true
-axis_scale x_axis 0 30
-axis_titles "Distance in column / mm" "potential / Volt"
1 if (floor(step_no / 50) <> step_no / 50) then end
2 if total_time < 100 then end
10 graph_x dist * 1e3
20 graph_y pot_V
USER_GRAPH 4 pH
-initial_solutions true
-connect_simulations false
-plot_concentration_vs dist
-axis_scale x_axis 0 30
-axis_titles "Distance in column / mm" pH
1 if (floor(step_no / 20) <> step_no / 20) then end
2 if sim_no = 2 and step_no > 0 then end
3 if sim_no = 3 and step_no = 0 then end
10 graph_x dist * 1e3
20 graph_y -LA("H+")
USER_GRAPH 5 redox potential
-initial_solutions true
-connect_simulations false
-plot_concentration_vs dist
-axis_scale x_axis 0 30
-axis_titles "Distance in column / mm" 'Eh / Volt'
1 if (floor(step_no / 20) <> step_no / 20) then end
2 if sim_no = 2 and step_no > 0 then end
3 if sim_no = 3 and step_no = 0 then end
10 graph_x dist * 1e3
20 graph_y -LA("e-") * 0.059
END
TRANSPORT
-time_step 1 hour 1
END