mirror of
https://git.gfz-potsdam.de/naaice/iphreeqc.git
synced 2025-12-15 16:18:22 +01:00
Compare commits
769 Commits
953c752431
...
115fe2f272
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
115fe2f272 | ||
|
|
643f53890e | ||
|
|
7806aad339 | ||
|
|
6f356bb9b6 | ||
|
|
8d5b4fb662 | ||
|
|
86411e6415 | ||
|
|
cb44e26b69 | ||
|
|
dcff790306 | ||
|
|
646f166f24 | ||
|
|
0ed073309f | ||
|
|
5c398186fd | ||
|
|
a46bf4d4fe | ||
|
|
9d48f28708 | ||
|
|
cd4c26beed | ||
|
|
5e972551a8 | ||
|
|
9a454b4ce5 | ||
|
|
85762ad3f3 | ||
|
|
c13777f576 | ||
|
|
9941fff19a | ||
|
|
55e64124d9 | ||
|
|
eca261b232 | ||
|
|
7939dd3209 | ||
|
|
877c5b0a19 | ||
|
|
73b69d87c5 | ||
|
|
11e23901af | ||
|
|
74967e4a7b | ||
|
|
c36b70aa4a | ||
|
|
b6a59f94d9 | ||
|
|
901f8a23c3 | ||
|
|
8cb0264663 | ||
|
|
a78f34dc79 | ||
|
|
b390c3318d | ||
|
|
721ac88190 | ||
|
|
4d67ec082e | ||
|
|
a682be918f | ||
|
|
941a71640e | ||
|
|
2fac130043 | ||
|
|
684223410a | ||
|
|
6a6e8c5d18 | ||
|
|
846d30ae52 | ||
|
|
bc05d0a090 | ||
|
|
8f505c6f00 | ||
|
|
204b0e3455 | ||
|
|
275553971d | ||
|
|
59677a76c2 | ||
|
|
0a5c6fc279 | ||
|
|
854f17c298 | ||
|
|
7ad9ab5dc6 | ||
|
|
af8fe101e2 | ||
|
|
5e10caae9d | ||
|
|
eead2b3659 | ||
|
|
75b4b5a33f | ||
|
|
dc7a88c8c0 | ||
|
|
dd9748d1b3 | ||
|
|
12119014f7 | ||
|
|
e2bd17174b | ||
|
|
6e1567d3f9 | ||
|
|
4a0e162b91 | ||
|
|
4b6ccf92ee | ||
|
|
024ae099dc | ||
|
|
dbc2e0c148 | ||
|
|
fccff09dc7 | ||
|
|
0722d127ad | ||
|
|
83183aa1b1 | ||
|
|
9a4186b178 | ||
|
|
00cf2328a8 | ||
|
|
c3b41a797a | ||
|
|
cc90e24b2b | ||
|
|
7ab2a246ea | ||
|
|
c3280180d4 | ||
|
|
afefbbcf95 | ||
|
|
be121f9d8a | ||
|
|
79654e62f1 | ||
|
|
22eab2be4d | ||
|
|
7ac0cb0f25 | ||
|
|
4460ae04d3 | ||
|
|
84b364ec81 | ||
|
|
4cc5917781 | ||
|
|
3af0a15c5f | ||
|
|
06302c777e | ||
|
|
4120429fd6 | ||
|
|
513d19f200 | ||
|
|
5cde416571 | ||
|
|
10b11c09fd | ||
|
|
34ef558eaf | ||
|
|
367cad0d9b | ||
|
|
d9ae5ebdeb | ||
|
|
9592f20922 | ||
|
|
64b38cbef3 | ||
|
|
311bc42e32 | ||
|
|
a79d436ec2 | ||
|
|
e438f3677e | ||
|
|
a9009ea3ab | ||
|
|
1a279aa00e | ||
|
|
c429f102bd | ||
|
|
336b21f6e3 | ||
|
|
61c8612f42 | ||
|
|
f11422e59c | ||
|
|
86e8188679 | ||
|
|
83fbeb407b | ||
|
|
d888aa0ea5 | ||
|
|
a22b324a2b | ||
|
|
9b01d8b5b5 | ||
|
|
3a9a5e7e5f | ||
|
|
29c7e04b5c | ||
|
|
d24994e83f | ||
|
|
ae645ff334 | ||
|
|
281360bcc1 | ||
|
|
990fca2df9 | ||
|
|
1149e64cad | ||
|
|
f2ee6230bc | ||
|
|
d03bb744e7 | ||
|
|
9afaa30df1 | ||
|
|
904e9b3595 | ||
|
|
c73b98be10 | ||
|
|
c713c0039e | ||
|
|
9ace336e12 | ||
|
|
64825ec73c | ||
|
|
6a325b52d5 | ||
|
|
b92227fe9a | ||
|
|
966b0fc851 | ||
|
|
470638d989 | ||
|
|
02c5a6472f | ||
|
|
8d00fbd2a5 | ||
|
|
e6661a8fba | ||
|
|
365c9646e2 | ||
|
|
6dc392967d | ||
|
|
250d1f1f87 | ||
|
|
eb0dac9960 | ||
|
|
340a98787f | ||
|
|
264db5ed7a | ||
|
|
0bccf2aca8 | ||
|
|
9545998b70 | ||
|
|
9c5d9b3e6b | ||
|
|
841ae669d6 | ||
|
|
5f0ff470f6 | ||
|
|
d53f91d57b | ||
|
|
d74ca5abbe | ||
|
|
cc60dbb615 | ||
|
|
a85c274903 | ||
|
|
4ccb129917 | ||
|
|
ced9d90841 | ||
|
|
402dc2ec9b | ||
|
|
6136c88a50 | ||
|
|
a3aa597dd5 | ||
|
|
aefd03ac34 | ||
|
|
febfa05e38 | ||
|
|
5824a7cd5c | ||
|
|
6c9b8aaf07 | ||
|
|
dcf01e46e9 | ||
|
|
03653d3b4a | ||
|
|
b15a6bded7 | ||
|
|
7ec217d47b | ||
|
|
1dbd65fc74 | ||
|
|
dd98e15167 | ||
|
|
394240f20a | ||
|
|
c61c35ecee | ||
|
|
95c70688aa | ||
|
|
7578086671 | ||
|
|
71e7c5a034 | ||
|
|
0547e23cdc | ||
|
|
83580b365e | ||
|
|
8e12e1d937 | ||
|
|
9871f67154 | ||
|
|
0a3757d4f3 | ||
|
|
4a6ec6151e | ||
|
|
81e380194a | ||
|
|
ff1bded841 | ||
|
|
142a864147 | ||
|
|
6c58153c18 | ||
|
|
34fef06d5c | ||
|
|
3a0f756ff7 | ||
|
|
0eb2b93436 | ||
|
|
7c05598ee3 | ||
|
|
ec0212ded2 | ||
|
|
e7f79ef241 | ||
|
|
3cf80a8adf | ||
|
|
b0491191e7 | ||
|
|
1680cde7ab | ||
|
|
47ce8e0adb | ||
|
|
31517c71c7 | ||
|
|
bc33cd7484 | ||
|
|
a4109721f5 | ||
|
|
797e95aadd | ||
|
|
3d759f6997 | ||
|
|
a7e6f6d4c8 | ||
|
|
48d952740c | ||
|
|
8cb6444f3b | ||
|
|
444ba08cda | ||
|
|
13bd43d71f | ||
|
|
35f13a0f66 | ||
|
|
47bcb44d5e | ||
|
|
7afa475511 | ||
|
|
4e89838154 | ||
|
|
1777f2bc99 | ||
|
|
20d3a9e5e6 | ||
|
|
da8a610a66 | ||
|
|
0574a86c4e | ||
|
|
b389eb39b4 | ||
|
|
584bb5a66f | ||
|
|
d3b4c500de | ||
|
|
f6affb8f0e | ||
|
|
b4a1f672db | ||
|
|
3c8e294fd3 | ||
|
|
47a34ca634 | ||
|
|
c5e17364a0 | ||
|
|
fc1d6ef789 | ||
|
|
f9d9549bf3 | ||
|
|
7e74e00df1 | ||
|
|
bc21c20a34 | ||
|
|
3e3c063083 | ||
|
|
50b5cfaf1f | ||
|
|
8f9acfc77c | ||
|
|
7d11ec3bc5 | ||
|
|
7e412da938 | ||
|
|
4783d83671 | ||
|
|
b392fb02f6 | ||
|
|
bf60c1ca9d | ||
|
|
51eedbc27a | ||
|
|
26ffbfee94 | ||
|
|
a0ea2708e5 | ||
|
|
8a45f9f23a | ||
|
|
31af15ae73 | ||
|
|
980068c1dc | ||
|
|
f2a8c8ee70 | ||
|
|
f849e9f29f | ||
|
|
cb1ebf2d7f | ||
|
|
09d4a0ba8e | ||
|
|
1a221cd778 | ||
|
|
8bf423592e | ||
|
|
1421798482 | ||
|
|
0014b5b0a5 | ||
|
|
80bf22d292 | ||
|
|
7bae85a32f | ||
|
|
8b2126270c | ||
|
|
3fd5b896c9 | ||
|
|
72075d5afb | ||
|
|
8184121c90 | ||
|
|
ce34aa5e05 | ||
|
|
fd438d3e1f | ||
|
|
ef355d8376 | ||
|
|
a75db3f65f | ||
|
|
44aaa0e612 | ||
|
|
70e57ae2d7 | ||
|
|
90b9269e70 | ||
|
|
b34eedb91d | ||
|
|
57b3a6cd39 | ||
|
|
48e4f32315 | ||
|
|
6ff8cfe341 | ||
|
|
1cc308a15b | ||
|
|
a3cbc5d8cd | ||
|
|
e5780c953e | ||
|
|
1f0c405f3f | ||
|
|
ae35abae47 | ||
|
|
09bf7c8cb1 | ||
|
|
c1dd17c7b2 | ||
|
|
6dbd486499 | ||
|
|
98fcfd3d56 | ||
|
|
092e3664df | ||
|
|
5e9815843e | ||
|
|
2d39015754 | ||
|
|
d17459781e | ||
|
|
301276613d | ||
|
|
74f96d02a5 | ||
|
|
4a6ad41ab2 | ||
|
|
c703f2f3e0 | ||
|
|
46e71825e0 | ||
|
|
91b76cb48a | ||
|
|
c3e2310011 | ||
|
|
7814bf7463 | ||
|
|
9172a45eb2 | ||
|
|
1f19e9893b | ||
|
|
1db6b42f19 | ||
|
|
a8fd3b6a19 | ||
|
|
418104cbdf | ||
|
|
792cdda060 | ||
|
|
4f8c3967aa | ||
|
|
aea752acf5 | ||
|
|
919f611947 | ||
|
|
7f683b4082 | ||
|
|
4e80a54467 | ||
|
|
d6a74675d7 | ||
|
|
b537589773 | ||
|
|
0209fdf9c7 | ||
|
|
9e8d773e18 | ||
|
|
757561b99b | ||
|
|
0bd8217516 | ||
|
|
c155685f63 | ||
|
|
ac39375609 | ||
|
|
8d50b95a9f | ||
|
|
24d2c771f3 | ||
|
|
db48f0f69e | ||
|
|
dc8e003f6a | ||
|
|
bf3dc34a52 | ||
|
|
9fac273ef2 | ||
|
|
8f7d206a80 | ||
|
|
a0bffdbc3f | ||
|
|
7bb51ae783 | ||
|
|
672e854d0e | ||
|
|
45befa7108 | ||
|
|
7e60110c31 | ||
|
|
4a0d366eef | ||
|
|
ca3ebafda0 | ||
|
|
5146dd686e | ||
|
|
cfaa0d9ad1 | ||
|
|
f7a1be4e54 | ||
|
|
b98a65380b | ||
|
|
7f831e87e5 | ||
|
|
af8d7af7fb | ||
|
|
aa8cdd0113 | ||
|
|
c1c1f286b6 | ||
|
|
f627828fb5 | ||
|
|
62ebb6ad11 | ||
|
|
d051e14c0b | ||
|
|
1e41b0ca7a | ||
|
|
7ad5a592a7 | ||
|
|
48ea6ea0ea | ||
|
|
88d5ec2035 | ||
|
|
2bcb24a86a | ||
|
|
99e8a5271b | ||
|
|
d3b4b10b79 | ||
|
|
29f1d4098e | ||
|
|
128b7a1109 | ||
|
|
c244641700 | ||
|
|
8bf2d2989c | ||
|
|
162c3a25ad | ||
|
|
4c58a0f6b7 | ||
|
|
9a4caf7def | ||
|
|
178b05c251 | ||
|
|
e87a48a234 | ||
|
|
c51839c622 | ||
|
|
78f374b831 | ||
|
|
2abb0b0bcd | ||
|
|
0da302aedf | ||
|
|
307253d3f9 | ||
|
|
0517529467 | ||
|
|
1a84cced60 | ||
|
|
a9c4ef8324 | ||
|
|
ab92280593 | ||
|
|
279b84357d | ||
|
|
a8ac479491 | ||
|
|
b5394351de | ||
|
|
7d53e27f9b | ||
|
|
4fc5a19611 | ||
|
|
ca0ba8d528 | ||
|
|
8024ee1289 | ||
|
|
2b17f7ca91 | ||
|
|
2d7d1bcae1 | ||
|
|
9bf3c42d7c | ||
|
|
bab2c2e283 | ||
|
|
9064885f78 | ||
|
|
a4a7ecab5b | ||
|
|
051687d391 | ||
|
|
067a8b1aaa | ||
|
|
795112031b | ||
|
|
967cc4e68e | ||
|
|
fb3f60ce26 | ||
|
|
09af2d5b12 | ||
|
|
b3aa6834f5 | ||
|
|
e39a5d3c5e | ||
|
|
939517fc08 | ||
|
|
92562d5d33 | ||
|
|
26398a4424 | ||
|
|
1c2e59be9a | ||
|
|
1693e0c188 | ||
|
|
5faf092bf8 | ||
|
|
bbcb4c0ec7 | ||
|
|
70e32eba2f | ||
|
|
0b3f349ad3 | ||
|
|
0bcc9db07a | ||
|
|
ee42c30eee | ||
|
|
ad75e79efe | ||
|
|
e871614214 | ||
|
|
1efeb35669 | ||
|
|
a162eb9ebb | ||
|
|
78fa3ba34e | ||
|
|
97a4237601 | ||
|
|
fcaf4393f9 | ||
|
|
edd80cecf2 | ||
|
|
bacfb0ea50 | ||
|
|
017185a7b2 | ||
|
|
ce6938682c | ||
|
|
894d1c4dbf | ||
|
|
c767e9c6a1 | ||
|
|
4a24a89572 | ||
|
|
0d58080e75 | ||
|
|
54237d62fc | ||
|
|
71e10f579d | ||
|
|
aaefea9549 | ||
|
|
e37ae0af3a | ||
|
|
93ba7f97c3 | ||
|
|
de06166d14 | ||
|
|
b6ecf24821 | ||
|
|
543816f065 | ||
|
|
01a8b140bc | ||
|
|
8acfbb384a | ||
|
|
1ba2653786 | ||
|
|
f100f492a5 | ||
|
|
478318affe | ||
|
|
a9d1de8fa2 | ||
|
|
47ace2e02e | ||
|
|
ff96607411 | ||
|
|
c378c74d7f | ||
|
|
e8c03d1693 | ||
|
|
49d82d3760 | ||
|
|
f23a7381b2 | ||
|
|
1ebe8191c2 | ||
|
|
b4a424453b | ||
|
|
36acf3ff50 | ||
|
|
666e4b813e | ||
|
|
fbe17c9e10 | ||
|
|
ad2440a3b6 | ||
|
|
b3469711dd | ||
|
|
87eeeec83e | ||
|
|
bae20ea7e8 | ||
|
|
15388e0f19 | ||
|
|
e30aa466d8 | ||
|
|
c86d43662f | ||
|
|
2dcf40623f | ||
|
|
22eb950686 | ||
|
|
d18452f369 | ||
|
|
5c6d1c5ab1 | ||
|
|
39130824b7 | ||
|
|
bc1f8f86b2 | ||
|
|
3318883ec1 | ||
|
|
df6534c795 | ||
|
|
0ebad0eedc | ||
|
|
6fd34ae380 | ||
|
|
7a6efcbd1b | ||
|
|
64e51c1d13 | ||
|
|
2294b1ed91 | ||
|
|
79518deebc | ||
|
|
d336cd6760 | ||
|
|
77038cb61a | ||
|
|
e510f75214 | ||
|
|
976555e201 | ||
|
|
9665bd4a81 | ||
|
|
f289b94cda | ||
|
|
7824c9cba5 | ||
|
|
488c119ac8 | ||
|
|
ba2ac19165 | ||
|
|
b9e8939029 | ||
|
|
a5b8a03fd7 | ||
|
|
a8a469b26f | ||
|
|
83b1930eae | ||
|
|
589ec40c7c | ||
|
|
6ce9ad665a | ||
|
|
f1ef434367 | ||
|
|
b81c0fa8fc | ||
|
|
77e7356d7f | ||
|
|
deb497735e | ||
|
|
c7c1a23d71 | ||
|
|
4883e48156 | ||
|
|
1df4f18911 | ||
|
|
ed1fbe9491 | ||
|
|
832810fcf7 | ||
|
|
e0447f7ad5 | ||
|
|
81f180a069 | ||
|
|
6d575967d4 | ||
|
|
6d98c4e13d | ||
|
|
72796f154c | ||
|
|
e848160727 | ||
|
|
988bdee0a6 | ||
|
|
9b10ce3f5c | ||
|
|
812061be2c | ||
|
|
fd52458b43 | ||
|
|
42ba243209 | ||
|
|
6e248c34be | ||
|
|
4662baee2f | ||
|
|
4d2181b795 | ||
|
|
6721837c27 | ||
|
|
b4b9e7da01 | ||
|
|
6ea0442d45 | ||
|
|
d5808fd188 | ||
|
|
c9d004b611 | ||
|
|
99b1030598 | ||
|
|
99451c0855 | ||
|
|
1b46a8dcf2 | ||
|
|
e902474819 | ||
|
|
52357404b5 | ||
|
|
3415544f41 | ||
|
|
0cb7f62994 | ||
|
|
12e58e3ec3 | ||
|
|
b56d60a648 | ||
|
|
209412f4d9 | ||
|
|
1680e5b76f | ||
|
|
3ed6cb654a | ||
|
|
5fe290beff | ||
|
|
e007a52c1d | ||
|
|
bdef7c5ddb | ||
|
|
322a40bb3a | ||
|
|
8da0b21940 | ||
|
|
d037d5dd5e | ||
|
|
1cce150314 | ||
|
|
45020608bd | ||
|
|
82c54e7054 | ||
|
|
a68a186184 | ||
|
|
bffad8cce5 | ||
|
|
90aef6de86 | ||
|
|
dd7aa46600 | ||
|
|
446e7a8a2a | ||
|
|
76d4300cad | ||
|
|
050663209b | ||
|
|
32fbc5ab56 | ||
|
|
ae15b21180 | ||
|
|
807a444465 | ||
|
|
6b0972bd43 | ||
|
|
14b90528ac | ||
|
|
dc26aa2a8f | ||
|
|
9bd0be28d6 | ||
|
|
0032f1420a | ||
|
|
35dec7bafc | ||
|
|
b9bc048c32 | ||
|
|
36e3e73d15 | ||
|
|
64d92a5a0b | ||
|
|
8a1e3f9711 | ||
|
|
8cd3387363 | ||
|
|
f9d7fa2d92 | ||
|
|
91d35938de | ||
|
|
71aeaa16d7 | ||
|
|
2f8712a3c9 | ||
|
|
ce92a0c10d | ||
|
|
5278d54f1f | ||
|
|
4234c11ed7 | ||
|
|
8d3032c9cb | ||
|
|
aff166b184 | ||
|
|
813150bc86 | ||
|
|
a9b5eb6956 | ||
|
|
0a7874068e | ||
|
|
c35cbe19ca | ||
|
|
116b83a352 | ||
|
|
399344e2d5 | ||
|
|
fd9eb5ee8a | ||
|
|
cbf9cc1d2a | ||
|
|
25f2472130 | ||
|
|
3f24bf1780 | ||
|
|
540451234f | ||
|
|
91aa5fd89b | ||
|
|
c3ed55b0e4 | ||
|
|
05e4a4d430 | ||
|
|
cb707ac2b7 | ||
|
|
c0e629358b | ||
|
|
84f3957bc8 | ||
|
|
da9a093d9a | ||
|
|
5c1f3f1931 | ||
|
|
fe577a188c | ||
|
|
f0a661715f | ||
|
|
cc6f024cfc | ||
|
|
8a85d23012 | ||
|
|
eeee6d3cce | ||
|
|
895d5dd3c5 | ||
|
|
c77222b71f | ||
|
|
772c30924f | ||
|
|
38db9f9ecc | ||
|
|
4c2ea26c5a | ||
|
|
94f3c45a58 | ||
|
|
d70da60dfc | ||
|
|
bc9ab58d16 | ||
|
|
28517a89ce | ||
|
|
602df24820 | ||
|
|
c85a9cde6d | ||
|
|
ec1947dcfe | ||
|
|
391ffd1003 | ||
|
|
6b9245aef7 | ||
|
|
b4aa81fa76 | ||
|
|
8925f6c3e5 | ||
|
|
9b9ee1b061 | ||
|
|
a161f1c81d | ||
|
|
5dfa353b30 | ||
|
|
a4eba15e3b | ||
|
|
6e14dda95c | ||
|
|
2355c9f90c | ||
|
|
fb59ec8b19 | ||
|
|
c32e6641b2 | ||
|
|
4fbe69b0b5 | ||
|
|
963b9088a4 | ||
|
|
be9e230efb | ||
|
|
07fec0dda7 | ||
|
|
e60eb995bb | ||
|
|
11a8399149 | ||
|
|
b32560efa0 | ||
|
|
00816dc695 | ||
|
|
b674cfe5e8 | ||
|
|
8e55e49e01 | ||
|
|
e0b04393ed | ||
|
|
f676db2278 | ||
|
|
af34bf877b | ||
|
|
37a63bcf44 | ||
|
|
15e9e21c6b | ||
|
|
210dbba73c | ||
|
|
8f2558798f | ||
|
|
6beb009a16 | ||
|
|
a321fbd61b | ||
|
|
d41045470e | ||
|
|
754ea3a9bc | ||
|
|
a826eecc87 | ||
|
|
e52222e9fd | ||
|
|
ab1c055dfe | ||
|
|
e265665845 | ||
|
|
c41c4e0230 | ||
|
|
3765e0cf26 | ||
|
|
30169e617c | ||
|
|
cc2c985afa | ||
|
|
a330bc51e3 | ||
|
|
f274a34a9a | ||
|
|
4d0e9a4c79 | ||
|
|
b8745514b6 | ||
|
|
0a194dc629 | ||
|
|
f1fa927adf | ||
|
|
9f3e76c4b9 | ||
|
|
eaff17f8a7 | ||
|
|
2af383aa76 | ||
|
|
1c92ac16ba | ||
|
|
c7dfbb5f60 | ||
|
|
6f21dae9bd | ||
|
|
91823dd276 | ||
|
|
af0c0b0e86 | ||
|
|
b135aab84f | ||
|
|
75c4938ffc | ||
|
|
893faff974 | ||
|
|
48f9f227b5 | ||
|
|
8e7f7de5af | ||
|
|
510744efa1 | ||
|
|
cbc40fac6f | ||
|
|
a68b8821e3 | ||
|
|
eebc11b325 | ||
|
|
f3e27fcb90 | ||
|
|
b8563691d2 | ||
|
|
749cf8f4eb | ||
|
|
1371228faf | ||
|
|
71ed896aac | ||
|
|
08e7576bb6 | ||
|
|
a2974f3759 | ||
|
|
acf0a143a8 | ||
|
|
0abe01cab7 | ||
|
|
fd0bc3096f | ||
|
|
c27e7010bb | ||
|
|
7993336a9f | ||
|
|
78223d9720 | ||
|
|
5c0e718999 | ||
|
|
9dffd1b98d | ||
|
|
eb19293d49 | ||
|
|
dabf07b5f3 | ||
|
|
cea69f62bf | ||
|
|
299be46961 | ||
|
|
30aece6c4a | ||
|
|
e892cc168e | ||
|
|
f686374e5e | ||
|
|
b6a0f193c9 | ||
|
|
f03c3f7ca2 | ||
|
|
29375bfc74 | ||
|
|
9ddd92f271 | ||
|
|
d19a31a65a | ||
|
|
50e81af4ec | ||
|
|
3d05ce1743 | ||
|
|
deec05fc83 | ||
|
|
a75a9caa08 | ||
|
|
0409a3ed07 | ||
|
|
dcd7188a71 | ||
|
|
7ea1a6d42b | ||
|
|
bef448830f | ||
|
|
554256e3bc | ||
|
|
d4a8833af3 | ||
|
|
d98a0029ab | ||
|
|
fa25db5da9 | ||
|
|
77aa5731e9 | ||
|
|
fb31cc3811 | ||
|
|
870f0f08cd | ||
|
|
0c9d4081bf | ||
|
|
b6fffd47be | ||
|
|
7cbba0ec01 | ||
|
|
621401d34c | ||
|
|
c03b987cf4 | ||
|
|
1f5428a912 | ||
|
|
53ad340bdb | ||
|
|
7faca8486f | ||
|
|
abb80b511f | ||
|
|
b030a0b9db | ||
|
|
5ab593e6a4 | ||
|
|
6e38872a51 | ||
|
|
c1077d709d | ||
|
|
99b48a4f49 | ||
|
|
c459903476 | ||
|
|
e221f73ce7 | ||
|
|
75f4ab0ba6 | ||
|
|
57cf38ddb0 | ||
|
|
fb6c36a792 | ||
|
|
24d69a0557 | ||
|
|
5d70f691d7 | ||
|
|
a19f9e7e15 | ||
|
|
bef8a01ca8 | ||
|
|
c41548d30f | ||
|
|
c7f9087c3b | ||
|
|
7668c4c611 | ||
|
|
fa9c36cf5d | ||
|
|
939f7ed841 | ||
|
|
981dd81efa | ||
|
|
f7313acf86 | ||
|
|
030fa168b0 | ||
|
|
1bd3f9582a | ||
|
|
40edae9330 | ||
|
|
eff757c8ed | ||
|
|
22ec3a55fd | ||
|
|
d5e6c6b7e5 | ||
|
|
d48de197c3 | ||
|
|
e1424d5577 | ||
|
|
5f6538350d | ||
|
|
195c800faf | ||
|
|
918da84d83 | ||
|
|
bc0a05ccfd | ||
|
|
c5ff247765 | ||
|
|
49681a22db | ||
|
|
1016398534 | ||
|
|
9d49905cd2 | ||
|
|
f6023203e2 | ||
|
|
077fbf97fb | ||
|
|
1ab3235e68 | ||
|
|
9a6afb37c4 | ||
|
|
589d6ba5d6 | ||
|
|
d7ab7115d4 | ||
|
|
545e81ba3a | ||
|
|
82dc185a90 | ||
|
|
a18a3a3b89 | ||
|
|
cde1f9fabd | ||
|
|
a83306d3cf | ||
|
|
3a7b01f367 | ||
|
|
183eaeee52 | ||
|
|
e0e589f7c1 | ||
|
|
957b1211b9 | ||
|
|
0b39297213 | ||
|
|
7ff05ddca3 | ||
|
|
5a43b70d11 | ||
|
|
7989602798 | ||
|
|
027862acef | ||
|
|
5b1de2f720 | ||
|
|
788a8426a0 | ||
|
|
b38349aa36 | ||
|
|
2431c5b33e | ||
|
|
f485cbe944 | ||
|
|
9cbf676df3 | ||
|
|
7237eb267d | ||
|
|
e3ea51f8eb | ||
|
|
d157977bcd | ||
|
|
1eb3ed948a | ||
|
|
1bbc004477 | ||
|
|
f56958652e | ||
|
|
4c7946afb5 | ||
|
|
ad4fc43e3b | ||
|
|
6091a42e2b | ||
|
|
8170cb9824 | ||
|
|
eefd6bfa78 | ||
|
|
fdb8d13703 | ||
|
|
85c8d55a4b | ||
|
|
a8730c6e95 | ||
|
|
c1c6ca18a8 | ||
|
|
bf865f6a3b | ||
|
|
9e0bf943a3 | ||
|
|
a69488c64a | ||
|
|
39d69af25e | ||
|
|
30ae101acc | ||
|
|
da6660ae70 | ||
|
|
bda358e2d0 | ||
|
|
d667690fcb | ||
|
|
a56973f604 | ||
|
|
e5a7fa638b | ||
|
|
088f389c49 | ||
|
|
0f7b19adc6 | ||
|
|
c6865539f8 | ||
|
|
f2e39872a4 |
30
.github/subtrees.json
vendored
Normal file
30
.github/subtrees.json
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
[
|
||||
{
|
||||
"prefix": "src",
|
||||
"repo": "usgs-coupled-subtrees/iphreeqc-src"
|
||||
},
|
||||
{
|
||||
"prefix": "examples/c",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc-commanuscript-cgfinal-examples-c"
|
||||
},
|
||||
{
|
||||
"prefix": "examples/com",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc-commanuscript-cgfinal-examples-com"
|
||||
},
|
||||
{
|
||||
"prefix": "examples/fortran",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc-COMManuscript-CGfinal-examples-fortran"
|
||||
},
|
||||
{
|
||||
"prefix": "database",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc3-database"
|
||||
},
|
||||
{
|
||||
"prefix": "phreeqc3-doc",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc3-doc"
|
||||
},
|
||||
{
|
||||
"prefix": "phreeqc3-examples",
|
||||
"repo": "usgs-coupled-subtrees/phreeqc3-examples"
|
||||
}
|
||||
]
|
||||
7
.github/superprojects.json
vendored
Normal file
7
.github/superprojects.json
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"usgs-coupled-subtrees/iphreeqc": {
|
||||
"superprojects": [
|
||||
"usgs-coupled-subtrees/webmod"
|
||||
]
|
||||
}
|
||||
}
|
||||
854
.github/workflows/cmake.yml
vendored
854
.github/workflows/cmake.yml
vendored
@ -1,296 +1,296 @@
|
||||
name: CMake
|
||||
|
||||
on:
|
||||
push:
|
||||
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
schedule:
|
||||
- cron: '15 14 4,11,18,25 * *'
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
|
||||
BUILD_TYPE: Release
|
||||
NAME: IPhreeqc
|
||||
|
||||
jobs:
|
||||
|
||||
init:
|
||||
runs-on: ubuntu-latest
|
||||
# Map step outputs to job outputs
|
||||
outputs:
|
||||
VER: ${{ steps.vars.outputs.VER }}
|
||||
REL: ${{ steps.vars.outputs.REL }}
|
||||
DATE: ${{ steps.vars.outputs.DATE }}
|
||||
DATE_RFC_3339: ${{ steps.vars.outputs.DATE_RFC_3339 }}
|
||||
steps:
|
||||
- name: Setup vars
|
||||
id: vars
|
||||
run: |
|
||||
echo VER=$(curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/next_ver.sh | sh) >> $GITHUB_OUTPUT
|
||||
echo REL=$(curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/rel.py | python3) >> $GITHUB_OUTPUT
|
||||
echo DATE=$(date "+%x") >> $GITHUB_OUTPUT
|
||||
echo DATE_RFC_3339=$(date --rfc-3339=date) >> $GITHUB_OUTPUT
|
||||
|
||||
|
||||
test:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
BUILD_DIR: _ctest # set in ctest.cmake
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Install ninja valgrind (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: sudo apt-get update && sudo apt-get install -y ninja-build valgrind
|
||||
|
||||
- name: Install ninja (macOS)
|
||||
if: runner.os == 'macOS'
|
||||
run: brew install ninja
|
||||
|
||||
- name: Set up Visual Studio shell (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
uses: egor-tensin/vs-shell@v2
|
||||
with:
|
||||
arch: x64
|
||||
|
||||
- name: CTest
|
||||
run: ctest -S ctest.cmake -V --output-on-failure --timeout 900
|
||||
|
||||
- name: Upload results
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ matrix.os }}-${{ github.job }}-results
|
||||
path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
|
||||
test-shared:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
BUILD_DIR: _ctest_shared # set in ctest-shared.cmake
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Install ninja valgrind (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: sudo apt-get update && sudo apt-get install -y ninja-build valgrind
|
||||
|
||||
- name: Install ninja (macOS)
|
||||
if: runner.os == 'macOS'
|
||||
run: brew install ninja
|
||||
|
||||
- name: Set up Visual Studio shell (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
uses: egor-tensin/vs-shell@v2
|
||||
with:
|
||||
arch: x64
|
||||
|
||||
- name: CTest
|
||||
run: ctest -S ctest-shared.cmake -V --output-on-failure --timeout 900
|
||||
|
||||
- name: Upload results
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ matrix.os }}-${{ github.job }}-results
|
||||
path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
|
||||
test-clang:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
shared_libs: [OFF, ON]
|
||||
enable_module: [OFF, ON]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
BUILD_DIR: _build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Install ninja valgrind (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: sudo apt-get update && sudo apt-get install -y ninja-build clang valgrind
|
||||
|
||||
- name: Install ninja (macOS)
|
||||
if: runner.os == 'macOS'
|
||||
run: brew install ninja
|
||||
|
||||
- name: Set up Visual Studio shell (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
uses: egor-tensin/vs-shell@v2
|
||||
with:
|
||||
arch: x64
|
||||
|
||||
- name: CMake configure
|
||||
if: runner.os == 'Linux'
|
||||
run: CC=clang CXX=clang++ cmake -B ${{ env.BUILD_DIR }} -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
|
||||
- name: CMake configure
|
||||
if: runner.os == 'macOS'
|
||||
run: CC=$(brew --prefix llvm@15)/bin/clang CXX=$(brew --prefix llvm@15)/bin/clang++ cmake -B ${{ env.BUILD_DIR }} -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
|
||||
- name: CMake configure
|
||||
if: runner.os == 'Windows'
|
||||
run: cmake -B ${{ env.BUILD_DIR }} -A x64 -T "ClangCL" -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
|
||||
- name: CMake build
|
||||
run: cmake --build ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: CTest
|
||||
run: ctest --test-dir ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Upload results
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ matrix.os }}-${{ github.job }}-SHARED=${{ matrix.shared_libs }}-MODULE=${{ matrix.enable_module }}-results
|
||||
path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
|
||||
chm:
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout phreeqc3-HTMLversion
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: usgs-coupled-subtrees/phreeqc3-HTMLversion
|
||||
ref: master
|
||||
|
||||
- name: cache htmlhelp
|
||||
id: cache-htmlhelp
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: "C:/Program Files (x86)/HTML Help Workshop"
|
||||
key: ${{ runner.os }}-htmlhelp
|
||||
|
||||
- name: install htmlhelp
|
||||
if: steps.cache-htmlhelp.outputs.cache-hit != 'true'
|
||||
timeout-minutes: 5
|
||||
run: |
|
||||
curl -L -O --max-time 120 http://web.archive.org/web/20160201063255/http://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe
|
||||
cmd /c start /wait .\htmlhelp.exe /q /c /t:$(Get-Location)\tmp
|
||||
$file = "$(Get-Location)\tmp\htmlhelp.inf"
|
||||
(Get-Content $file) | Foreach-Object { $_ `
|
||||
-replace '^BeginPrompt', ';;BeginPrompt' `
|
||||
-replace '^EndPrompt', ';;EndPrompt' `
|
||||
-replace '^49000=CustomLDID49000, 1', '49000=CustomLDID49000, 5' `
|
||||
-replace '^"hhupd.exe', ';;hhupd.exe' `
|
||||
-replace '^DefaultInstallDir="C:\\Program Files\\HTML Help Workshop"', 'DefaultInstallDir="%ProgramFiles%\\HTML Help Workshop"'
|
||||
} | Set-Content $file
|
||||
cmd /c start /wait .\tmp\setup.exe
|
||||
Remove-Item -Recurse -Force .\tmp
|
||||
Remove-Item -Recurse -Force .\htmlhelp.exe
|
||||
# the next line doesn't seem to work (supposed to set the path)
|
||||
# echo 'C:\Program Files (x86)\HTML Help Workshop' >> $GITHUB_PATH
|
||||
|
||||
- name: compile chm
|
||||
shell: bash
|
||||
run: |
|
||||
pushd HTML
|
||||
bash fixup_html.bash
|
||||
popd
|
||||
# hhc returns 1 on success
|
||||
set +e
|
||||
'C:\Program Files (x86)\HTML Help Workshop\hhc' phreeqc3.hhp | tee hhc.out
|
||||
status=${PIPESTATUS[0]}
|
||||
set -e
|
||||
if [ "$status" -eq 1 ]; then
|
||||
echo "[OK]"
|
||||
exit 0
|
||||
else
|
||||
echo "[FAILED]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: chm
|
||||
path: ${{github.workspace}}/phreeqc3.chm
|
||||
|
||||
|
||||
R-CMD-check:
|
||||
needs: [init]
|
||||
runs-on: ${{ matrix.config.os }}
|
||||
|
||||
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
config:
|
||||
- {os: macos-latest, r: 'release'}
|
||||
- {os: windows-latest, r: 'release'}
|
||||
- {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
|
||||
- {os: ubuntu-latest, r: 'release'}
|
||||
- {os: ubuntu-latest, r: 'oldrel-1'}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: versioning
|
||||
run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
||||
|
||||
- name: Setup R
|
||||
uses: r-lib/actions/setup-r@v2
|
||||
with:
|
||||
r-version: ${{ matrix.config.r }}
|
||||
http-user-agent: ${{ matrix.config.http-user-agent }}
|
||||
use-public-rspm: true
|
||||
|
||||
- name: create source
|
||||
working-directory: R
|
||||
run: make VERSION=${{ needs.init.outputs.VER }} RELEASE_DATE=${{ needs.init.outputs.DATE_RFC_3339 }} source
|
||||
|
||||
- name: Install dependencies
|
||||
uses: r-lib/actions/setup-r-dependencies@v2
|
||||
with:
|
||||
extra-packages: any::roxygen2, any::pkgbuild, any::rcmdcheck
|
||||
needs: roxygen2, pkgbuild, check
|
||||
working-directory: R/phreeqc
|
||||
|
||||
- name: Display sessionInfo()
|
||||
run: sessionInfo()
|
||||
working-directory: R/phreeqc
|
||||
shell: Rscript {0}
|
||||
|
||||
- name: roxygen2::roxygenise()
|
||||
run: roxygen2::roxygenise()
|
||||
working-directory: R/phreeqc
|
||||
shell: Rscript {0}
|
||||
|
||||
- name: Check
|
||||
uses: r-lib/actions/check-r-package@v2
|
||||
with:
|
||||
working-directory: R/phreeqc
|
||||
|
||||
- name: List files
|
||||
if: matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
|
||||
run: |
|
||||
pwd
|
||||
ls -lR
|
||||
find -name "*.tar.gz"
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
|
||||
with:
|
||||
name: cran
|
||||
path: ${{ github.workspace }}/R/phreeqc/check/phreeqc_*.tar.gz
|
||||
# name: CMake
|
||||
#
|
||||
# on:
|
||||
# push:
|
||||
#
|
||||
# pull_request:
|
||||
# branches:
|
||||
# - master
|
||||
#
|
||||
# schedule:
|
||||
# - cron: '15 14 4,11,18,25 * *'
|
||||
#
|
||||
# workflow_dispatch:
|
||||
#
|
||||
# env:
|
||||
# # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
|
||||
# BUILD_TYPE: Release
|
||||
# NAME: IPhreeqc
|
||||
#
|
||||
# jobs:
|
||||
#
|
||||
# init:
|
||||
# runs-on: ubuntu-latest
|
||||
# # Map step outputs to job outputs
|
||||
# outputs:
|
||||
# VER: ${{ steps.vars.outputs.VER }}
|
||||
# REL: ${{ steps.vars.outputs.REL }}
|
||||
# DATE: ${{ steps.vars.outputs.DATE }}
|
||||
# DATE_RFC_3339: ${{ steps.vars.outputs.DATE_RFC_3339 }}
|
||||
# steps:
|
||||
# - name: Setup vars
|
||||
# id: vars
|
||||
# run: |
|
||||
# echo VER=$(curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/next_ver.sh | sh) >> $GITHUB_OUTPUT
|
||||
# echo REL=$(curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/rel.py | python3) >> $GITHUB_OUTPUT
|
||||
# echo DATE=$(date "+%x") >> $GITHUB_OUTPUT
|
||||
# echo DATE_RFC_3339=$(date --rfc-3339=date) >> $GITHUB_OUTPUT
|
||||
#
|
||||
#
|
||||
# test:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
#
|
||||
# runs-on: ${{ matrix.os }}
|
||||
# env:
|
||||
# BUILD_DIR: _ctest # set in ctest.cmake
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - name: Install ninja valgrind (Linux)
|
||||
# if: runner.os == 'Linux'
|
||||
# run: sudo apt-get update && sudo apt-get install -y ninja-build valgrind
|
||||
#
|
||||
# - name: Install ninja (macOS)
|
||||
# if: runner.os == 'macOS'
|
||||
# run: brew install ninja
|
||||
#
|
||||
# - name: Set up Visual Studio shell (Windows)
|
||||
# if: runner.os == 'Windows'
|
||||
# uses: egor-tensin/vs-shell@v2
|
||||
# with:
|
||||
# arch: x64
|
||||
#
|
||||
# - name: CTest
|
||||
# run: ctest -S ctest.cmake -V --output-on-failure --timeout 900
|
||||
#
|
||||
# - name: Upload results
|
||||
# uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: ${{ matrix.os }}-${{ github.job }}-results
|
||||
# path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
#
|
||||
# test-shared:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
#
|
||||
# runs-on: ${{ matrix.os }}
|
||||
# env:
|
||||
# BUILD_DIR: _ctest_shared # set in ctest-shared.cmake
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - name: Install ninja valgrind (Linux)
|
||||
# if: runner.os == 'Linux'
|
||||
# run: sudo apt-get update && sudo apt-get install -y ninja-build valgrind
|
||||
#
|
||||
# - name: Install ninja (macOS)
|
||||
# if: runner.os == 'macOS'
|
||||
# run: brew install ninja
|
||||
#
|
||||
# - name: Set up Visual Studio shell (Windows)
|
||||
# if: runner.os == 'Windows'
|
||||
# uses: egor-tensin/vs-shell@v2
|
||||
# with:
|
||||
# arch: x64
|
||||
#
|
||||
# - name: CTest
|
||||
# run: ctest -S ctest-shared.cmake -V --output-on-failure --timeout 900
|
||||
#
|
||||
# - name: Upload results
|
||||
# uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: ${{ matrix.os }}-${{ github.job }}-results
|
||||
# path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
#
|
||||
# test-clang:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# os: [macos-latest, ubuntu-latest, windows-latest]
|
||||
# shared_libs: [OFF, ON]
|
||||
# enable_module: [OFF, ON]
|
||||
#
|
||||
# runs-on: ${{ matrix.os }}
|
||||
# env:
|
||||
# BUILD_DIR: _build
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - name: Install ninja valgrind (Linux)
|
||||
# if: runner.os == 'Linux'
|
||||
# run: sudo apt-get update && sudo apt-get install -y ninja-build clang valgrind
|
||||
#
|
||||
# - name: Install ninja (macOS)
|
||||
# if: runner.os == 'macOS'
|
||||
# run: brew install ninja
|
||||
#
|
||||
# - name: Set up Visual Studio shell (Windows)
|
||||
# if: runner.os == 'Windows'
|
||||
# uses: egor-tensin/vs-shell@v2
|
||||
# with:
|
||||
# arch: x64
|
||||
#
|
||||
# - name: CMake configure
|
||||
# if: runner.os == 'Linux'
|
||||
# run: CC=clang CXX=clang++ cmake -B ${{ env.BUILD_DIR }} -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
#
|
||||
# - name: CMake configure
|
||||
# if: runner.os == 'macOS'
|
||||
# run: CC=$(brew --prefix llvm@15)/bin/clang CXX=$(brew --prefix llvm@15)/bin/clang++ cmake -B ${{ env.BUILD_DIR }} -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
#
|
||||
# - name: CMake configure
|
||||
# if: runner.os == 'Windows'
|
||||
# run: cmake -B ${{ env.BUILD_DIR }} -A x64 -T "ClangCL" -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }} -DIPHREEQC_ENABLE_MODULE=${{ matrix.enable_module }} -DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD_REQUIRED=ON
|
||||
#
|
||||
# - name: CMake build
|
||||
# run: cmake --build ${{ env.BUILD_DIR }}
|
||||
#
|
||||
# - name: CTest
|
||||
# run: ctest --test-dir ${{ env.BUILD_DIR }}
|
||||
#
|
||||
# - name: Upload results
|
||||
# uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: ${{ matrix.os }}-${{ github.job }}-SHARED=${{ matrix.shared_libs }}-MODULE=${{ matrix.enable_module }}-results
|
||||
# path: ${{ github.workspace }}/${{ env.BUILD_DIR }}/Testing/
|
||||
#
|
||||
# chm:
|
||||
# runs-on: windows-latest
|
||||
#
|
||||
# steps:
|
||||
# - name: Checkout phreeqc3-HTMLversion
|
||||
# uses: actions/checkout@v4
|
||||
# with:
|
||||
# repository: usgs-coupled-subtrees/phreeqc3-HTMLversion
|
||||
# ref: master
|
||||
#
|
||||
# - name: cache htmlhelp
|
||||
# id: cache-htmlhelp
|
||||
# uses: actions/cache@v4
|
||||
# with:
|
||||
# path: "C:/Program Files (x86)/HTML Help Workshop"
|
||||
# key: ${{ runner.os }}-htmlhelp
|
||||
#
|
||||
# - name: install htmlhelp
|
||||
# if: steps.cache-htmlhelp.outputs.cache-hit != 'true'
|
||||
# timeout-minutes: 5
|
||||
# run: |
|
||||
# curl -L -O --max-time 120 http://web.archive.org/web/20160201063255/http://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe
|
||||
# cmd /c start /wait .\htmlhelp.exe /q /c /t:$(Get-Location)\tmp
|
||||
# $file = "$(Get-Location)\tmp\htmlhelp.inf"
|
||||
# (Get-Content $file) | Foreach-Object { $_ `
|
||||
# -replace '^BeginPrompt', ';;BeginPrompt' `
|
||||
# -replace '^EndPrompt', ';;EndPrompt' `
|
||||
# -replace '^49000=CustomLDID49000, 1', '49000=CustomLDID49000, 5' `
|
||||
# -replace '^"hhupd.exe', ';;hhupd.exe' `
|
||||
# -replace '^DefaultInstallDir="C:\\Program Files\\HTML Help Workshop"', 'DefaultInstallDir="%ProgramFiles%\\HTML Help Workshop"'
|
||||
# } | Set-Content $file
|
||||
# cmd /c start /wait .\tmp\setup.exe
|
||||
# Remove-Item -Recurse -Force .\tmp
|
||||
# Remove-Item -Recurse -Force .\htmlhelp.exe
|
||||
# # the next line doesn't seem to work (supposed to set the path)
|
||||
# # echo 'C:\Program Files (x86)\HTML Help Workshop' >> $GITHUB_PATH
|
||||
#
|
||||
# - name: compile chm
|
||||
# shell: bash
|
||||
# run: |
|
||||
# pushd HTML
|
||||
# bash fixup_html.bash
|
||||
# popd
|
||||
# # hhc returns 1 on success
|
||||
# set +e
|
||||
# 'C:\Program Files (x86)\HTML Help Workshop\hhc' phreeqc3.hhp | tee hhc.out
|
||||
# status=${PIPESTATUS[0]}
|
||||
# set -e
|
||||
# if [ "$status" -eq 1 ]; then
|
||||
# echo "[OK]"
|
||||
# exit 0
|
||||
# else
|
||||
# echo "[FAILED]"
|
||||
# exit 1
|
||||
# fi
|
||||
#
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: chm
|
||||
# path: ${{github.workspace}}/phreeqc3.chm
|
||||
#
|
||||
#
|
||||
# R-CMD-check:
|
||||
# needs: [init]
|
||||
# runs-on: ${{ matrix.config.os }}
|
||||
#
|
||||
# name: ${{ matrix.config.os }} (${{ matrix.config.r }})
|
||||
#
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# config:
|
||||
# - {os: macos-latest, r: 'release'}
|
||||
# - {os: windows-latest, r: 'release'}
|
||||
# - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
|
||||
# - {os: ubuntu-latest, r: 'release'}
|
||||
# - {os: ubuntu-latest, r: 'oldrel-1'}
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - name: versioning
|
||||
# run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
||||
#
|
||||
# - name: Setup R
|
||||
# uses: r-lib/actions/setup-r@v2
|
||||
# with:
|
||||
# r-version: ${{ matrix.config.r }}
|
||||
# http-user-agent: ${{ matrix.config.http-user-agent }}
|
||||
# use-public-rspm: true
|
||||
#
|
||||
# - name: create source
|
||||
# working-directory: R
|
||||
# run: make VERSION=${{ needs.init.outputs.VER }} RELEASE_DATE=${{ needs.init.outputs.DATE_RFC_3339 }} source
|
||||
#
|
||||
# - name: Install dependencies
|
||||
# uses: r-lib/actions/setup-r-dependencies@v2
|
||||
# with:
|
||||
# extra-packages: any::roxygen2, any::pkgbuild, any::rcmdcheck
|
||||
# needs: roxygen2, pkgbuild, check
|
||||
# working-directory: R/phreeqc
|
||||
#
|
||||
# - name: Display sessionInfo()
|
||||
# run: sessionInfo()
|
||||
# working-directory: R/phreeqc
|
||||
# shell: Rscript {0}
|
||||
#
|
||||
# - name: roxygen2::roxygenise()
|
||||
# run: roxygen2::roxygenise()
|
||||
# working-directory: R/phreeqc
|
||||
# shell: Rscript {0}
|
||||
#
|
||||
# - name: Check
|
||||
# uses: r-lib/actions/check-r-package@v2
|
||||
# with:
|
||||
# working-directory: R/phreeqc
|
||||
#
|
||||
# - name: List files
|
||||
# if: matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
|
||||
# run: |
|
||||
# pwd
|
||||
# ls -lR
|
||||
# find -name "*.tar.gz"
|
||||
#
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# if: matrix.config.os == 'ubuntu-latest' && matrix.config.r == 'release'
|
||||
# with:
|
||||
# name: cran
|
||||
# path: ${{ github.workspace }}/R/phreeqc/check/phreeqc_*.tar.gz
|
||||
|
||||
|
||||
# r-build:
|
||||
@ -373,140 +373,140 @@ jobs:
|
||||
# path: ${{github.workspace}}/R/valgrind.full.out
|
||||
|
||||
|
||||
distcheck:
|
||||
needs: [init, chm]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: chm
|
||||
|
||||
- name: mv chm
|
||||
run: mv phreeqc3.chm doc/.
|
||||
|
||||
- name: versioning
|
||||
run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
||||
|
||||
- name: doxygen
|
||||
run: sudo apt-get install -y doxygen && cd doc && doxygen
|
||||
|
||||
- name: autoreconf
|
||||
run: autoreconf -fvi
|
||||
|
||||
- name: mkdir
|
||||
run: mkdir _build
|
||||
|
||||
- name: configure
|
||||
working-directory: ${{github.workspace}}/_build
|
||||
run: ../configure --prefix=$(pwd)/INSTALL
|
||||
|
||||
- name: make
|
||||
working-directory: ${{github.workspace}}/_build
|
||||
run: make -j2 distcheck
|
||||
|
||||
- name: convert
|
||||
run: |
|
||||
sudo apt install -y dos2unix
|
||||
native="
|
||||
doc/Makefile \
|
||||
doc/examples/AccumulateLine.c \
|
||||
doc/examples/CreateIPhreeqc.c \
|
||||
doc/examples/F90ClearAccumulatedLines.f90 \
|
||||
doc/examples/F90CreateIPhreeqc.f90 \
|
||||
doc/examples/F90DestroyIPhreeqc.f90 \
|
||||
doc/examples/F90GetComponent.f90 \
|
||||
doc/examples/F90GetDumpStringLine.f90 \
|
||||
doc/examples/F90GetSelectedOutputValue.f90 \
|
||||
doc/examples/F90GetVersionString.f90 \
|
||||
doc/examples/GetComponent.c \
|
||||
doc/examples/GetDumpString.c \
|
||||
doc/examples/GetSelectedOutputValue.c \
|
||||
doc/examples/GetVersionString.c \
|
||||
doc/examples/IPhreeqc.cpp \
|
||||
doc/examples/Makefile \
|
||||
doc/examples/phreeqc.dat \
|
||||
src/CSelectedOutput.cpp \
|
||||
src/CSelectedOutput.hxx \
|
||||
src/CVar.hxx \
|
||||
src/Debug.h \
|
||||
src/ErrorReporter.hxx \
|
||||
src/IPhreeqc.cpp \
|
||||
src/IPhreeqc.f.inc \
|
||||
src/IPhreeqc.f90.inc \
|
||||
src/IPhreeqc.h \
|
||||
src/IPhreeqc.hpp \
|
||||
src/IPhreeqcCallbacks.h \
|
||||
src/IPhreeqcF.f \
|
||||
src/IPhreeqcLib.cpp \
|
||||
src/IPhreeqc_interface.F90 \
|
||||
src/IPhreeqc_interface_F.cpp \
|
||||
src/IPhreeqc_interface_F.h \
|
||||
src/Var.c \
|
||||
src/Var.h \
|
||||
src/Version.h \
|
||||
src/fimpl.h \
|
||||
src/fwrap.cpp \
|
||||
src/fwrap.h \
|
||||
src/fwrap1.cpp \
|
||||
src/fwrap2.cpp \
|
||||
src/fwrap3.cpp \
|
||||
src/fwrap4.cpp \
|
||||
src/fwrap5.cpp \
|
||||
src/fwrap6.cpp \
|
||||
src/fwrap7.cpp \
|
||||
src/fwrap8.cpp \
|
||||
src/pp_sys.cpp \
|
||||
src/thread.h \
|
||||
test/llnl.dat \
|
||||
test/phreeqc.dat \
|
||||
test2/Makefile \
|
||||
test2/wateq4f.dat \
|
||||
test5/Makefile \
|
||||
test5/phreeqc.dat \
|
||||
test5/test5.c \
|
||||
tests/main_fortran.cxx \
|
||||
tests/test_c.c \
|
||||
tests/test_cxx.cxx \
|
||||
tests/test_f90.F90 \
|
||||
unit/TestCVar.cpp \
|
||||
unit/TestCVar.h \
|
||||
unit/TestInterface.cpp \
|
||||
unit/TestInterface.h \
|
||||
unit/TestSelectedOutput.cpp \
|
||||
unit/TestSelectedOutput.h \
|
||||
unit/TestVar.cpp \
|
||||
unit/TestVar.h \
|
||||
unit/llnl.dat.old \
|
||||
unit/missing_e.dat \
|
||||
unit/phreeqc.dat.old \
|
||||
unit/unit.cpp"
|
||||
for f in ${native}; do
|
||||
unix2dos "${f}"
|
||||
done
|
||||
|
||||
- name: dist-zip
|
||||
working-directory: ${{github.workspace}}/_build
|
||||
run: make dist-zip
|
||||
|
||||
- name: copy
|
||||
run: cp doc/README IPhreeqc_ReadMe.txt
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: readme
|
||||
path: ${{github.workspace}}/IPhreeqc_ReadMe.txt
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: tarball
|
||||
path: ${{github.workspace}}/_build/*.tar.gz
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: zipball
|
||||
path: ${{github.workspace}}/_build/*.zip
|
||||
# distcheck:
|
||||
# needs: [init, chm]
|
||||
# runs-on: ubuntu-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - uses: actions/download-artifact@v4
|
||||
# with:
|
||||
# name: chm
|
||||
#
|
||||
# - name: mv chm
|
||||
# run: mv phreeqc3.chm doc/.
|
||||
#
|
||||
# - name: versioning
|
||||
# run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
||||
#
|
||||
# - name: doxygen
|
||||
# run: sudo apt-get install -y doxygen && cd doc && doxygen
|
||||
#
|
||||
# - name: autoreconf
|
||||
# run: autoreconf -fvi
|
||||
#
|
||||
# - name: mkdir
|
||||
# run: mkdir _build
|
||||
#
|
||||
# - name: configure
|
||||
# working-directory: ${{github.workspace}}/_build
|
||||
# run: ../configure --prefix=$(pwd)/INSTALL
|
||||
#
|
||||
# - name: make
|
||||
# working-directory: ${{github.workspace}}/_build
|
||||
# run: make -j2 distcheck
|
||||
#
|
||||
# - name: convert
|
||||
# run: |
|
||||
# sudo apt install -y dos2unix
|
||||
# native="
|
||||
# doc/Makefile \
|
||||
# doc/examples/AccumulateLine.c \
|
||||
# doc/examples/CreateIPhreeqc.c \
|
||||
# doc/examples/F90ClearAccumulatedLines.f90 \
|
||||
# doc/examples/F90CreateIPhreeqc.f90 \
|
||||
# doc/examples/F90DestroyIPhreeqc.f90 \
|
||||
# doc/examples/F90GetComponent.f90 \
|
||||
# doc/examples/F90GetDumpStringLine.f90 \
|
||||
# doc/examples/F90GetSelectedOutputValue.f90 \
|
||||
# doc/examples/F90GetVersionString.f90 \
|
||||
# doc/examples/GetComponent.c \
|
||||
# doc/examples/GetDumpString.c \
|
||||
# doc/examples/GetSelectedOutputValue.c \
|
||||
# doc/examples/GetVersionString.c \
|
||||
# doc/examples/IPhreeqc.cpp \
|
||||
# doc/examples/Makefile \
|
||||
# doc/examples/phreeqc.dat \
|
||||
# src/CSelectedOutput.cpp \
|
||||
# src/CSelectedOutput.hxx \
|
||||
# src/CVar.hxx \
|
||||
# src/Debug.h \
|
||||
# src/ErrorReporter.hxx \
|
||||
# src/IPhreeqc.cpp \
|
||||
# src/IPhreeqc.f.inc \
|
||||
# src/IPhreeqc.f90.inc \
|
||||
# src/IPhreeqc.h \
|
||||
# src/IPhreeqc.hpp \
|
||||
# src/IPhreeqcCallbacks.h \
|
||||
# src/IPhreeqcF.f \
|
||||
# src/IPhreeqcLib.cpp \
|
||||
# src/IPhreeqc_interface.F90 \
|
||||
# src/IPhreeqc_interface_F.cpp \
|
||||
# src/IPhreeqc_interface_F.h \
|
||||
# src/Var.c \
|
||||
# src/Var.h \
|
||||
# src/Version.h \
|
||||
# src/fimpl.h \
|
||||
# src/fwrap.cpp \
|
||||
# src/fwrap.h \
|
||||
# src/fwrap1.cpp \
|
||||
# src/fwrap2.cpp \
|
||||
# src/fwrap3.cpp \
|
||||
# src/fwrap4.cpp \
|
||||
# src/fwrap5.cpp \
|
||||
# src/fwrap6.cpp \
|
||||
# src/fwrap7.cpp \
|
||||
# src/fwrap8.cpp \
|
||||
# src/pp_sys.cpp \
|
||||
# src/thread.h \
|
||||
# test/llnl.dat \
|
||||
# test/phreeqc.dat \
|
||||
# test2/Makefile \
|
||||
# test2/wateq4f.dat \
|
||||
# test5/Makefile \
|
||||
# test5/phreeqc.dat \
|
||||
# test5/test5.c \
|
||||
# tests/main_fortran.cxx \
|
||||
# tests/test_c.c \
|
||||
# tests/test_cxx.cxx \
|
||||
# tests/test_f90.F90 \
|
||||
# unit/TestCVar.cpp \
|
||||
# unit/TestCVar.h \
|
||||
# unit/TestInterface.cpp \
|
||||
# unit/TestInterface.h \
|
||||
# unit/TestSelectedOutput.cpp \
|
||||
# unit/TestSelectedOutput.h \
|
||||
# unit/TestVar.cpp \
|
||||
# unit/TestVar.h \
|
||||
# unit/llnl.dat.old \
|
||||
# unit/missing_e.dat \
|
||||
# unit/phreeqc.dat.old \
|
||||
# unit/unit.cpp"
|
||||
# for f in ${native}; do
|
||||
# unix2dos "${f}"
|
||||
# done
|
||||
#
|
||||
# - name: dist-zip
|
||||
# working-directory: ${{github.workspace}}/_build
|
||||
# run: make dist-zip
|
||||
#
|
||||
# - name: copy
|
||||
# run: cp doc/README IPhreeqc_ReadMe.txt
|
||||
#
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: readme
|
||||
# path: ${{github.workspace}}/IPhreeqc_ReadMe.txt
|
||||
#
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: tarball
|
||||
# path: ${{github.workspace}}/_build/*.tar.gz
|
||||
#
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: zipball
|
||||
# path: ${{github.workspace}}/_build/*.zip
|
||||
|
||||
# build:
|
||||
# needs: [init]
|
||||
|
||||
19
.github/workflows/lint-subtrees.yml
vendored
Normal file
19
.github/workflows/lint-subtrees.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Lint subtrees.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/subtrees.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-subtrees:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-subtrees/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
16
.github/workflows/lint-superprojects.yml
vendored
Normal file
16
.github/workflows/lint-superprojects.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Lint superprojects.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/superprojects.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-superprojects:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-superprojects/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
37
.github/workflows/subtree.yml
vendored
Normal file
37
.github/workflows/subtree.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Sync Subtrees
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
dryRun:
|
||||
description: 'If true, don’t push any changes (for testing only).'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
testMerge:
|
||||
description: 'Run in test mode, pushing to a test branch.'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
sync-subtrees:
|
||||
if: startsWith(github.repository, 'usgs-coupled-subtrees/')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
GH_TOKEN: ${{ secrets.WORKFLOW_PAT }}
|
||||
steps:
|
||||
- name: Run sync-subtrees-action
|
||||
uses: usgs-coupled-subtrees/sync-subtrees-action@main
|
||||
with:
|
||||
dryRun: ${{ inputs.dryRun }}
|
||||
testMerge: ${{ inputs.testMerge }}
|
||||
repository_name: ${{ github.event.repository.name }}
|
||||
default_branch: ${{ github.event.repository.default_branch }}
|
||||
run_number: ${{ github.run_number }}
|
||||
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
@ -6,6 +6,7 @@ before_script:
|
||||
|
||||
stages:
|
||||
- test
|
||||
- release
|
||||
|
||||
test:
|
||||
stage: test
|
||||
@ -19,4 +20,21 @@ test:
|
||||
paths:
|
||||
- _build/test_results.xml
|
||||
reports:
|
||||
junit: _build/test_results.xml
|
||||
junit: _build/test_results.xml
|
||||
|
||||
push:
|
||||
stage: release
|
||||
variables:
|
||||
GITHUB_REPOSITORY: 'git@github.com:POET-Simulator/litephreeqc.git'
|
||||
ORIGINAL_REPO_URL: 'https://git.gfz-potsdam.de/naaice/iphreeqc.git'
|
||||
ORIGINAL_REPO_NAME: 'iphreeqc'
|
||||
before_script:
|
||||
- apt-get update -y && apt-get install -y git openssh-client
|
||||
# I know that there is this file env variable in gitlab, but somehow it does not work for me (still complaining about white spaces ...)
|
||||
# Therefore, the ssh key is stored as a base64 encoded string
|
||||
- mkdir -p ~/.ssh && echo $GITHUB_SSH_PRIVATE_KEY | base64 -d > ~/.ssh/id_ed25519 && chmod 0600 ~/.ssh/id_ed25519
|
||||
- ssh-keyscan github.com >> ~/.ssh/known_hosts
|
||||
script:
|
||||
- rm -rf $ORIGINAL_REPO_NAME.git
|
||||
- git clone --mirror $ORIGINAL_REPO_URL "$ORIGINAL_REPO_NAME.git" && cd $ORIGINAL_REPO_NAME.git
|
||||
- git push --mirror $GITHUB_REPOSITORY
|
||||
|
||||
308
CMakeLists.txt
308
CMakeLists.txt
@ -2,47 +2,28 @@
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
project (
|
||||
IPhreeqc
|
||||
litephreeqc
|
||||
VERSION 3.8.5
|
||||
LANGUAGES CXX C
|
||||
)
|
||||
|
||||
# check if this is the root project
|
||||
if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
|
||||
set(STANDALONE_BUILD 1)
|
||||
else()
|
||||
set(STANDALONE_BUILD 0)
|
||||
if (WIN32)
|
||||
message(FATAL_ERROR "litephreeqc cannot be built on Windows systems.")
|
||||
endif()
|
||||
|
||||
if (STANDALONE_BUILD)
|
||||
# Set a default build type if none was specified
|
||||
set(default_build_type "Release")
|
||||
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
|
||||
set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE
|
||||
STRING "Choose the type of build." FORCE)
|
||||
# Set the possible values of build type for cmake-gui
|
||||
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
|
||||
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# overide docdir on windows
|
||||
if (WIN32 AND NOT CMAKE_INSTALL_DOCDIR)
|
||||
set(CMAKE_INSTALL_DOCDIR "" CACHE PATH "documentation root (doc)")
|
||||
set(CMAKE_INSTALL_DOCDIR "doc")
|
||||
# Set a default build type if none was specified
|
||||
set(default_build_type "Release")
|
||||
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
|
||||
set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE
|
||||
STRING "Choose the type of build." FORCE)
|
||||
# Set the possible values of build type for cmake-gui
|
||||
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
|
||||
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
|
||||
endif()
|
||||
|
||||
# set standard directory locations
|
||||
include(GNUInstallDirs)
|
||||
|
||||
if (STANDALONE_BUILD AND MSVC)
|
||||
option (IPHREEQC_STATIC_RUNTIME "Build with a static runtime" OFF)
|
||||
if (IPHREEQC_STATIC_RUNTIME)
|
||||
# compile with static runtime
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Fortran
|
||||
option (IPHREEQC_ENABLE_MODULE "Enable Fortran module" ON)
|
||||
if (STANDALONE_BUILD)
|
||||
@ -60,22 +41,7 @@ endif()
|
||||
# compile Var.c as c++
|
||||
set_source_files_properties(src/Var.c PROPERTIES LANGUAGE CXX)
|
||||
|
||||
if (STANDALONE_BUILD)
|
||||
option(BUILD_SHARED_LIBS "Build Shared Libraries" OFF)
|
||||
set(LIB_TYPE STATIC)
|
||||
endif()
|
||||
|
||||
if (STANDALONE_BUILD)
|
||||
if (MSVC)
|
||||
option(BUILD_CLR_LIBS "Build CLR Libraries" OFF)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
set(LIB_TYPE SHARED)
|
||||
endif()
|
||||
|
||||
add_library(IPhreeqc ${LIB_TYPE} src/IPhreeqc.cpp)
|
||||
add_library(IPhreeqc STATIC src/IPhreeqc.cpp)
|
||||
|
||||
target_sources(IPhreeqc
|
||||
PRIVATE
|
||||
@ -220,7 +186,7 @@ target_sources(IPhreeqc
|
||||
src/phreeqcpp/UserPunch.cpp
|
||||
src/phreeqcpp/UserPunch.h
|
||||
src/phreeqcpp/utilities.cpp
|
||||
src/phreeqcpp/GFZ.cpp
|
||||
src/phreeqcpp/litephreeqc_funcs.cpp
|
||||
src/thread.h
|
||||
src/Var.c
|
||||
src/Var.h
|
||||
@ -229,10 +195,10 @@ target_sources(IPhreeqc
|
||||
|
||||
target_include_directories(IPhreeqc
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${IPhreeqc_SOURCE_DIR}/src>
|
||||
$<BUILD_INTERFACE:${IPhreeqc_SOURCE_DIR}/src/phreeqcpp>
|
||||
$<BUILD_INTERFACE:${IPhreeqc_SOURCE_DIR}/src/phreeqcpp/common>
|
||||
$<BUILD_INTERFACE:${IPhreeqc_SOURCE_DIR}/src/phreeqcpp/PhreeqcKeywords>
|
||||
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src>
|
||||
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src/phreeqcpp>
|
||||
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src/phreeqcpp/common>
|
||||
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src/phreeqcpp/PhreeqcKeywords>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
)
|
||||
|
||||
@ -260,36 +226,8 @@ if (NOT IPHREEQC_ENABLE_MODULE)
|
||||
)
|
||||
endif()
|
||||
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC)
|
||||
target_compile_options(IPhreeqc PRIVATE /wd4251 /wd4275 /wd4793)
|
||||
endif()
|
||||
|
||||
# Disable deprecation warnings for standard C and STL functions in VS2005
|
||||
# and later
|
||||
if (MSVC_VERSION EQUAL 1400 OR MSVC_VERSION GREATER 1400)
|
||||
target_compile_definitions(IPhreeqc PUBLIC _CRT_SECURE_NO_DEPRECATE)
|
||||
target_compile_definitions(IPhreeqc PUBLIC _SCL_SECURE_NO_WARNINGS)
|
||||
endif()
|
||||
|
||||
if (WIN32 AND BUILD_SHARED_LIBS)
|
||||
# Required to build IMPLIB
|
||||
# (Seems to be automatically set when using Visual Studio as the generator)
|
||||
target_compile_definitions(IPhreeqc PRIVATE _WINDLL)
|
||||
endif()
|
||||
|
||||
# Allow user to override POSTFIX properties (but mandate them so that
|
||||
# all builds can be installed to the same directory)
|
||||
if (NOT CMAKE_DEBUG_POSTFIX)
|
||||
set_target_properties(IPhreeqc PROPERTIES DEBUG_POSTFIX "d")
|
||||
endif()
|
||||
|
||||
if (NOT CMAKE_MINSIZEREL_POSTFIX)
|
||||
set_target_properties(IPhreeqc PROPERTIES MINSIZEREL_POSTFIX "msr")
|
||||
endif()
|
||||
|
||||
if (NOT CMAKE_RELWITHDEBINFO_POSTFIX)
|
||||
set_target_properties(IPhreeqc PROPERTIES RELWITHDEBINFO_POSTFIX "rwd")
|
||||
endif()
|
||||
# c++14
|
||||
target_compile_features(IPhreeqc PUBLIC cxx_std_14)
|
||||
|
||||
set(IPhreeqc_Headers
|
||||
${PROJECT_SOURCE_DIR}/src/IPhreeqc.h
|
||||
@ -319,158 +257,94 @@ else()
|
||||
)
|
||||
endif()
|
||||
|
||||
# Setup references for /CLR
|
||||
if (MSVC AND BUILD_SHARED_LIBS AND BUILD_CLR_LIBS)
|
||||
if (MSVC_VERSION LESS 1600)
|
||||
message(FATAL_ERROR "CLR options must be set manually for versions prior to Visual Studio 2010")
|
||||
endif()
|
||||
set_target_properties(IPhreeqc PROPERTIES VS_DOTNET_REFERENCES "System;System.Drawing;System.Windows.Forms;${CMAKE_CURRENT_SOURCE_DIR}/src/phreeqcpp/ZedGraph.dll")
|
||||
set_target_properties(IPhreeqc PROPERTIES COMMON_LANGUAGE_RUNTIME "")
|
||||
target_compile_definitions(IPhreeqc PRIVATE "MULTICHART")
|
||||
endif()
|
||||
|
||||
set_target_properties(IPhreeqc PROPERTIES
|
||||
VERSION "${IPhreeqc_VERSION}"
|
||||
SOVERSION "${IPhreeqc_VERSION_MAJOR}"
|
||||
)
|
||||
|
||||
# install
|
||||
if (STANDALONE_BUILD)
|
||||
include(CMakePackageConfigHelpers)
|
||||
|
||||
include(CMakePackageConfigHelpers)
|
||||
|
||||
configure_package_config_file(IPhreeqcConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfig.cmake
|
||||
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
write_basic_package_version_file("IPhreeqcConfigVersion.cmake"
|
||||
VERSION ${IPhreeqc_VERSION}
|
||||
COMPATIBILITY SameMajorVersion
|
||||
)
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfigVersion.cmake
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
install(TARGETS IPhreeqc
|
||||
EXPORT IPhreeqcTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
)
|
||||
install(EXPORT IPhreeqcTargets
|
||||
FILE IPhreeqcTargets.cmake
|
||||
NAMESPACE IPhreeqc::
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
install(FILES ${IPhreeqc_Headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
if (WIN32)
|
||||
install(FILES ${IPhreeqc_SRC} DESTINATION src)
|
||||
else()
|
||||
install(FILES ${IPhreeqc_SRC} DESTINATION ${CMAKE_INSTALL_DOCDIR}/src)
|
||||
endif()
|
||||
if (BUILD_CLR_LIBS)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/src/phreeqcpp/ZedGraph.dll" DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (BUILD_CLR_LIBS)
|
||||
if (NOT BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR "BUILD_CLR_LIBS requires that BUILD_SHARED_LIBS be set")
|
||||
endif()
|
||||
|
||||
if (IPHREEQC_STATIC_RUNTIME)
|
||||
message(FATAL_ERROR "BUILD_CLR_LIBS and IPHREEQC_STATIC_RUNTIME are mutually exclusive")
|
||||
endif()
|
||||
|
||||
# CLR files
|
||||
target_sources(IPhreeqc
|
||||
PRIVATE
|
||||
src/phreeqcpp/ChartHandler.cpp
|
||||
src/phreeqcpp/ChartHandler.h
|
||||
src/phreeqcpp/ChartObject.cpp
|
||||
src/phreeqcpp/ChartObject.h
|
||||
src/phreeqcpp/CurveObject.cpp
|
||||
src/phreeqcpp/CurveObject.h
|
||||
configure_package_config_file(IPhreeqcConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfig.cmake
|
||||
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
write_basic_package_version_file("IPhreeqcConfigVersion.cmake"
|
||||
VERSION ${IPhreeqc_VERSION}
|
||||
COMPATIBILITY SameMajorVersion
|
||||
)
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/IPhreeqcConfigVersion.cmake
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
install(TARGETS IPhreeqc
|
||||
EXPORT IPhreeqcTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
)
|
||||
install(EXPORT IPhreeqcTargets
|
||||
FILE IPhreeqcTargets.cmake
|
||||
NAMESPACE IPhreeqc::
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/IPhreeqc
|
||||
)
|
||||
|
||||
install(FILES ${IPhreeqc_Headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
if (WIN32)
|
||||
install(FILES ${IPhreeqc_SRC} DESTINATION src)
|
||||
else()
|
||||
install(FILES ${IPhreeqc_SRC} DESTINATION ${CMAKE_INSTALL_DOCDIR}/src)
|
||||
endif()
|
||||
if (BUILD_CLR_LIBS)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/src/phreeqcpp/ZedGraph.dll" DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
endif()
|
||||
|
||||
|
||||
include (CTest)
|
||||
|
||||
if (STANDALONE_BUILD)
|
||||
# add_subdirectory(database)
|
||||
# add_subdirectory(doc)
|
||||
# add_subdirectory(examples)
|
||||
|
||||
add_subdirectory(database)
|
||||
add_subdirectory(doc)
|
||||
add_subdirectory(examples)
|
||||
|
||||
if (BUILD_TESTING)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
|
||||
if (BUILD_TESTING) # may need to add MSVC version check
|
||||
include(FetchContent)
|
||||
|
||||
# Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24:
|
||||
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
|
||||
cmake_policy(SET CMP0135 NEW)
|
||||
endif()
|
||||
|
||||
FetchContent_Declare(
|
||||
googletest
|
||||
URL https://github.com/google/googletest/archive/release-1.12.1.tar.gz
|
||||
)
|
||||
|
||||
mark_as_advanced(
|
||||
FETCHCONTENT_BASE_DIR
|
||||
FETCHCONTENT_FULLY_DISCONNECTED
|
||||
FETCHCONTENT_QUIET
|
||||
FETCHCONTENT_SOURCE_DIR_GOOGLETEST
|
||||
FETCHCONTENT_UPDATES_DISCONNECTED
|
||||
FETCHCONTENT_UPDATES_DISCONNECTED_GOOGLETEST
|
||||
)
|
||||
|
||||
# Prevent GoogleTest from overriding our compiler/linker options
|
||||
# when building with Visual Studio
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||||
|
||||
set(BUILD_GTEST ON CACHE BOOL "" FORCE)
|
||||
set(BUILD_GMOCK ON CACHE BOOL "" FORCE)
|
||||
|
||||
set(INSTALL_GTEST OFF CACHE BOOL "" FORCE)
|
||||
set(INSTALL_GMOCK OFF CACHE BOOL "" FORCE)
|
||||
|
||||
mark_as_advanced(
|
||||
BUILD_GTEST
|
||||
BUILD_GMOCK
|
||||
INSTALL_GTEST
|
||||
INSTALL_GMOCK
|
||||
gmock_build_tests
|
||||
gtest_build_tests
|
||||
gtest_build_samples
|
||||
gtest_disable_pthreads
|
||||
gtest_force_shared_crt
|
||||
gtest_hide_internal_symbols
|
||||
)
|
||||
|
||||
FetchContent_MakeAvailable(googletest)
|
||||
if (NOT googletest_POPULATED)
|
||||
# Always build googletest static
|
||||
set(SAVE_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
FetchContent_MakeAvailable(googletest)
|
||||
set(BUILD_SHARED_LIBS ${SAVE_BUILD_SHARED_LIBS})
|
||||
endif()
|
||||
|
||||
add_subdirectory(gtest)
|
||||
endif()
|
||||
if (BUILD_TESTING)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
add_subdirectory(poet)
|
||||
|
||||
if (BUILD_TESTING) # may need to add MSVC version check
|
||||
include(FetchContent)
|
||||
|
||||
# Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24:
|
||||
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
|
||||
cmake_policy(SET CMP0135 NEW)
|
||||
endif()
|
||||
|
||||
FetchContent_Declare(
|
||||
googletest
|
||||
GIT_REPOSITORY https://github.com/google/googletest.git
|
||||
GIT_TAG v1.17.0
|
||||
)
|
||||
|
||||
# Prevent GoogleTest from overriding our compiler/linker options
|
||||
# when building with Visual Studio
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||||
|
||||
FetchContent_MakeAvailable(googletest)
|
||||
if (NOT googletest_POPULATED)
|
||||
# Always build googletest static
|
||||
set(SAVE_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
FetchContent_MakeAvailable(googletest)
|
||||
set(BUILD_SHARED_LIBS ${SAVE_BUILD_SHARED_LIBS})
|
||||
endif()
|
||||
|
||||
add_subdirectory(gtest)
|
||||
endif()
|
||||
|
||||
add_subdirectory(litephreeqc)
|
||||
|
||||
# get_cmake_property(_variableNames VARIABLES)
|
||||
# list (SORT _variableNames)
|
||||
|
||||
@ -42,7 +42,7 @@ ReleaseDll_Preprocessor_Definitions=-D NDEBUG -D GCC_BUILD -D _LIB
|
||||
Release_Preprocessor_Definitions=-D NDEBUG -D GCC_BUILD -D _LIB
|
||||
Release_Preprocessor_Definitions=-D NDEBUG -D GCC_BUILD -D _LIB
|
||||
|
||||
# Implictly linked object files...
|
||||
# Implicitly linked object files...
|
||||
DebugDll_Implicitly_Linked_Objects=
|
||||
DebugDll_Implicitly_Linked_Objects=
|
||||
Debug_Implicitly_Linked_Objects=
|
||||
|
||||
@ -32,7 +32,7 @@ citEntry(entry="Article",
|
||||
journal = "Computers & Geosciences",
|
||||
volume = "37",
|
||||
pages = "1653-1663",
|
||||
url = "http://dx.doi.org/10.1016/j.cageo.2011.02.005",
|
||||
url = "https://dx.doi.org/10.1016/j.cageo.2011.02.005",
|
||||
|
||||
textVersion =
|
||||
paste("Charlton, S.R., and Parkhurst, D.L, 2011, Modules based ",
|
||||
|
||||
@ -4,9 +4,35 @@ Version: @VERSION@
|
||||
License: GPL-3
|
||||
NeedsCompilation: yes
|
||||
Depends: R (>= 3.5.0)
|
||||
Author: S.R. Charlton [aut, cre], D.L. Parkhurst [aut], and C.A.J. Appelo [aut], with contributions
|
||||
from D. Gillespie [ctb] for Chipmunk BASIC and S.D. Cohen [ctb], A.C. Hindmarsh [ctb],
|
||||
R. Serban [ctb], D. Shumaker [ctb], and A.G. Taylor [ctb] for CVODE/SUNDIALS
|
||||
Authors@R:
|
||||
c(person(given = "S.R.",
|
||||
family = "Charlton",
|
||||
role = c("aut", "cre"),
|
||||
email = "charlton@usgs.gov"),
|
||||
person(given = "D.L.",
|
||||
family = "Parkhurst",
|
||||
role = "aut"),
|
||||
person(given = "C.A.J.",
|
||||
family = "Appelo",
|
||||
role = "aut"),
|
||||
person(given = c("with", "contributions", "from", "D.", "Gillespie", "for", "Chipmunk"),
|
||||
family = "BASIC",
|
||||
role = "aut"),
|
||||
person(given = "S.D.",
|
||||
family = "Cohen",
|
||||
role = "aut"),
|
||||
person(given = "A.C.",
|
||||
family = "Hindmarsh",
|
||||
role = "aut"),
|
||||
person(given = "R.",
|
||||
family = "Serban",
|
||||
role = "aut"),
|
||||
person(given = "D.",
|
||||
family = "Shumaker",
|
||||
role = "aut"),
|
||||
person(given = c("A.G.", "Taylor", "for"),
|
||||
family = "CVODE/SUNDIALS",
|
||||
role = "aut"))
|
||||
URL: https://www.usgs.gov/software/phreeqc-version-3
|
||||
Description: A geochemical modeling program developed by the US Geological
|
||||
Survey that is designed to perform a wide variety of aqueous geochemical
|
||||
|
||||
@ -42,6 +42,7 @@ DBS = \
|
||||
phreeqc.ascii \
|
||||
pitzer.ascii \
|
||||
sit.ascii \
|
||||
stimela.ascii \
|
||||
Tipping_Hurley.ascii \
|
||||
wateq4f.ascii
|
||||
|
||||
@ -885,7 +886,7 @@ $(IDEST):
|
||||
$(DEST):
|
||||
mkdir $(DEST)
|
||||
|
||||
# Force directory creation everytime make is executed
|
||||
# Force directory creation every time make is executed
|
||||
# see https://www.cmcrossroads.com/article/making-directories-gnu-make
|
||||
|
||||
$(shell mkdir -p $(TOPDIR)/R)
|
||||
|
||||
@ -25,6 +25,7 @@ phreeqc_rates.dat <- scan("phreeqc_rates.ascii",
|
||||
PHREEQC_ThermoddemV1.10_15Dec2020.dat <- scan("PHREEQC_ThermoddemV1.10_15Dec2020.ascii", what="", sep="\n")
|
||||
pitzer.dat <- scan("pitzer.ascii", what="", sep="\n")
|
||||
sit.dat <- scan("sit.ascii", what="", sep="\n")
|
||||
stimela.dat <- scan("stimela.ascii", what="", sep="\n")
|
||||
Tipping_Hurley.dat <- scan("Tipping_Hurley.ascii", what="", sep="\n")
|
||||
phreeqc.dat <- scan("phreeqc.ascii", what="", sep="\n")
|
||||
wateq4f.dat <- scan("wateq4f.ascii", what="", sep="\n")
|
||||
|
||||
@ -32,7 +32,7 @@
|
||||
##' # plot the results
|
||||
##' attach(so$n1)
|
||||
##' title <- "Gypsum-Anhydrite Stability"
|
||||
##' xlabel <- "Temperature, in degrees celcius"
|
||||
##' xlabel <- "Temperature, in degrees celsius"
|
||||
##' ylabel <- "Saturation index"
|
||||
##' plot(temp.C., si_gypsum, main = title, xlab = xlabel, ylab = ylabel,
|
||||
##' col = "darkred", xlim = c(25, 75), ylim = c(-0.4, 0.0))
|
||||
@ -338,7 +338,7 @@ function() {
|
||||
##' @useDynLib phreeqc, .registration = TRUE
|
||||
##' @return TRUE if log messages are currently being stored as a character vector.
|
||||
##' @family Log
|
||||
##' @references \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @references \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##'
|
||||
phrGetLogStringsOn <-
|
||||
function() {
|
||||
@ -1386,7 +1386,7 @@ function(nuser, value) {
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage Amm.dat # phrLoadDatabaseString(Amm.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1401,7 +1401,7 @@ NULL
|
||||
##' The database has been reformatted for use by \code{\link{phrLoadDatabaseString}}.
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage ColdChem.dat # phrLoadDatabaseString(ColdChem.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1433,7 +1433,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage ex15.dat # phrLoadDatabaseString(ex15.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1464,7 +1464,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage iso.dat # phrLoadDatabaseString(iso.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1481,7 +1481,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references Hermanska et al. (2022, 2003) and Oelkers and Addassi (2024, in preparation).
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage Kinec_v3.dat # phrLoadDatabaseString(Kinec_v3.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1498,7 +1498,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references Hermanska et al. (2022, 2003) and Oelkers and Addassi (2024, in preparation).
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage Kinec.v2.dat # phrLoadDatabaseString(Kinec.v2.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1528,7 +1528,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage minteq.dat # phrLoadDatabaseString(minteq.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1543,7 +1543,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage minteq.v4.dat # phrLoadDatabaseString(minteq.v4.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1564,7 +1564,7 @@ NULL
|
||||
##' @family Databases
|
||||
##' @references Hermanska and others (2023), Palandri and Kharaka (2004),
|
||||
##' and Sverdrup and others (2019).
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage phreeqc_rates.dat # phrLoadDatabaseString(phreeqc_rates.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1577,7 +1577,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://thermoddem.brgm.fr/}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage PHREEQC_ThermoddemV1.10_15Dec2020.dat
|
||||
##' # phrLoadDatabaseString(PHREEQC_ThermoddemV1.10_15Dec2020.dat)
|
||||
NULL
|
||||
@ -1593,7 +1593,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage phreeqc.dat # phrLoadDatabaseString(phreeqc.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1608,7 +1608,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage pitzer.dat # phrLoadDatabaseString(pitzer.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1624,13 +1624,26 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage sit.dat # phrLoadDatabaseString(sit.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
|
||||
|
||||
|
||||
##' @name stimela.dat
|
||||
##' @title The stimela.dat database.
|
||||
##' @description stimela.dat is a database for use in drinking-water and waste-water
|
||||
##' treatment from Peter de Moel and Omnisys. The database has been reformatted
|
||||
##' for use by \code{\link{phrLoadDatabaseString}}.
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @usage stimela.dat # phrLoadDatabaseString(stimela.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
|
||||
|
||||
|
||||
##' @name Tipping_Hurley.dat
|
||||
##' @title The Tipping_Hurley.dat database
|
||||
##' @description Tipping_Hurley.dat is a database for organic-ligand
|
||||
@ -1651,7 +1664,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Databases
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @usage wateq4f.dat # phrLoadDatabaseString(wateq4f.dat)
|
||||
##' @keywords dataset
|
||||
NULL
|
||||
@ -1668,7 +1681,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1689,7 +1702,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1721,7 +1734,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1753,7 +1766,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1780,7 +1793,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1806,7 +1819,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1841,7 +1854,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1866,7 +1879,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1905,7 +1918,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1933,7 +1946,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1960,7 +1973,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -1995,7 +2008,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2025,7 +2038,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2058,7 +2071,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2088,7 +2101,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2121,7 +2134,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2153,7 +2166,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2195,7 +2208,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2223,7 +2236,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2259,7 +2272,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2291,7 +2304,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
@ -2324,7 +2337,7 @@ NULL
|
||||
##' @docType data
|
||||
##' @family Examples
|
||||
##' @references \url{https://pubs.usgs.gov/tm/06/a43/pdf/tm6-A43.pdf}
|
||||
##' @source \url{http://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc}
|
||||
##' @source \url{https://www.usgs.gov/software/phreeqc-version-3/}
|
||||
##' @keywords dataset
|
||||
##' @examples
|
||||
##'
|
||||
|
||||
@ -1606,7 +1606,7 @@ so <- phrGetSelectedOutput()
|
||||
# plot the results
|
||||
attach(so$n1)
|
||||
title <- "Gypsum-Anhydrite Stability"
|
||||
xlabel <- "Temperature, in degrees celcius"
|
||||
xlabel <- "Temperature, in degrees celsius"
|
||||
ylabel <- "Saturation index"
|
||||
plot(temp.C., si_gypsum, main = title, xlab = xlabel, ylab = ylabel,
|
||||
col = "darkred", xlim = c(25, 75), ylim = c(-0.4, 0.0))
|
||||
|
||||
1
README.md
Normal file
1
README.md
Normal file
@ -0,0 +1 @@
|
||||
# IPhreeqc 
|
||||
1
database/.github/subtrees.json
vendored
Normal file
1
database/.github/subtrees.json
vendored
Normal file
@ -0,0 +1 @@
|
||||
[]
|
||||
11
database/.github/superprojects.json
vendored
Normal file
11
database/.github/superprojects.json
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"usgs-coupled-subtrees/phreeqc3-database": {
|
||||
"superprojects": [
|
||||
"usgs-coupled-subtrees/iphreeqc",
|
||||
"usgs-coupled-subtrees/iphreeqccom",
|
||||
"usgs-coupled-subtrees/phreeqcrm",
|
||||
"usgs-coupled-subtrees/phreeqc3",
|
||||
"usgs-coupled-subtrees/wphast"
|
||||
]
|
||||
}
|
||||
}
|
||||
19
database/.github/workflows/lint-subtrees.yml
vendored
Normal file
19
database/.github/workflows/lint-subtrees.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Lint subtrees.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/subtrees.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-subtrees:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-subtrees/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
20
database/.github/workflows/lint-superprojects.yml
vendored
Normal file
20
database/.github/workflows/lint-superprojects.yml
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
name: Lint superprojects.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/superprojects.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-superprojects:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-superprojects/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
# skip-repos: |
|
||||
# - usgs-coupled-subtrees/iphreeqccom
|
||||
# - usgs-coupled-subtrees/phreeqcrm-src
|
||||
|
||||
37
database/.github/workflows/subtree.yml
vendored
Normal file
37
database/.github/workflows/subtree.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Sync Subtrees
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
dryRun:
|
||||
description: 'If true, don’t push any changes (for testing only).'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
testMerge:
|
||||
description: 'Run in test mode, pushing to a test branch.'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
sync-subtrees:
|
||||
if: startsWith(github.repository, 'usgs-coupled-subtrees/')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
GH_TOKEN: ${{ secrets.WORKFLOW_PAT }}
|
||||
steps:
|
||||
- name: Run sync-subtrees-action
|
||||
uses: usgs-coupled-subtrees/sync-subtrees-action@main
|
||||
with:
|
||||
dryRun: ${{ inputs.dryRun }}
|
||||
testMerge: ${{ inputs.testMerge }}
|
||||
repository_name: ${{ github.event.repository.name }}
|
||||
default_branch: ${{ github.event.repository.default_branch }}
|
||||
run_number: ${{ github.run_number }}
|
||||
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
182
database/Amm.dat
182
database/Amm.dat
@ -1,8 +1,4 @@
|
||||
# File 1 = C:\GitPrograms\phreeqc3-1\database\Amm.dat, 22/05/2024 19:38, 1948 lines, 55817 bytes, md5=78b3659799b73ddca128328b6ee7533b
|
||||
# Created 22 May 2024 19:55:37
|
||||
# C:\3rdParty\lsp\lsp.exe -f2 -k=asis -ts Amm.dat
|
||||
|
||||
# PHREEQC.DAT for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Based on:
|
||||
# Amm.dat for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Based on:
|
||||
# diffusion coefficients and molal volumina of aqueous species, solubility and volume of minerals, and critical temperatures and pressures of gases in Peng-Robinson's EOS.
|
||||
# Details are given at the end of this file.
|
||||
|
||||
@ -70,7 +66,7 @@ H+ = H+
|
||||
-dw 9.31e-9 838 6.96 -2.285 0.206 24.01 0
|
||||
# Dw(25 C) dw_T a a2 visc a3 a_v_dif
|
||||
# Dw(TK) = 9.31e-9 * exp(838 / TK - 838 / 298.15) * viscos_0_25 / viscos_0_tc
|
||||
# a = DH ion size, a2 = exponent, visc = viscosity exponent, a3(H+) = 24.01 = new dw calculation from A.D. 2024, a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
# a = DH ion size (= 3.5 - 25), a2 = exponent (= 0 2.5), visc = viscosity exponent (= 0 2.5), a3 = switch [a3(H+) = 24.01 = new dw calculation from A.D. 2024], a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
|
||||
# For SC, Dw(TK) *= (viscos_0_tc / viscos)^visc (visc = 0.206 for H+)
|
||||
# a3 > 5 or a3 = 0 or not defined ? ka = DH_B * a * (1 + (vm - v0))^a2 * mu^0.5, in Onsager-Falkenhagen eqn. (For H+, the reference ion, vm = v0 = 0, a *= (1 + mu)^a2.)
|
||||
@ -80,7 +76,7 @@ H+ = H+
|
||||
# If a_v_dif <> 0, Dw(TK) *= (viscos_0_tc / viscos)^a_v_dif in TRANSPORT.
|
||||
e- = e-
|
||||
H2O = H2O
|
||||
-dw 2.299e-9 -254
|
||||
-dw 2.299e-9 -249 # Holz et al., Phys. Chem. Chem. Phys., 2000, 2, 4740.
|
||||
# H2O + 0.01e- = H2O-0.01; -log_k -9 # aids convergence
|
||||
Li+ = Li+
|
||||
-gamma 6 0 # The apparent volume parameters are defined in ref. 1 & 2
|
||||
@ -111,9 +107,9 @@ Ca+2 = Ca+2
|
||||
-dw 0.792e-9 34 5.411 0 1.046
|
||||
Sr+2 = Sr+2
|
||||
-gamma 5.26 0.121
|
||||
-Vm -1.57e-2 -10.15 10.18 -2.36 0.86 5.26 0.859 -27 -4.1e-3 1.97
|
||||
-viscosity 0.472 -0.252 5.51e-3 3.67e-3 0 1.876
|
||||
-dw 0.794e-9 149 0.805 1.961 1e-9 0.7876
|
||||
-Vm -5.6e-2 -10.15 9.90 -2.36 0.807 5.26 2.72 -82.7 -1.37e-2 0.956
|
||||
-viscosity 0.493 -0.255 2.3e-3 4.2e-3 -3.8e-3 1.762
|
||||
-dw 0.794e-9 18 0.681 2.069 0.965 0.271
|
||||
Ba+2 = Ba+2
|
||||
-gamma 5 0
|
||||
-gamma 4 0.153 # Barite solubility
|
||||
@ -147,10 +143,10 @@ CO3-2 = CO3-2
|
||||
-viscosity -0.5 0.6521 5.44e-3 1.06e-3 -2.18e-2 1.208 -2.147
|
||||
-dw 0.955e-9 -103 2.246 7.13e-2 0.3686
|
||||
SO4-2 = SO4-2
|
||||
-gamma 5 -0.04
|
||||
-Vm -7.77 43.17 176 -51.45 3.794 0 42.99 -541 -0.145 0.45 # with analytical_expressions for log K of NaSO4-, KSO4- & MgSO4, 0 - 200 oC
|
||||
-viscosity -0.3 0.501 2.57e-3 0.195 3.14e-2 2.015 0.605
|
||||
-dw 1.07e-9 -114 17 6.02e-2 4.94e-2
|
||||
-gamma 5.0 -0.04
|
||||
-Vm 5.36 10.69 33.566 -15.03 4.2582 25 0.341 153.8 1.089e-2 0.9224 # with Na2SO4 & better calculation of sulfates' solubilities in NaCl
|
||||
-viscosity -0.5 0.521 4.2e-4 9.78e-3 1.24e-2 2.5 -4.94e-2
|
||||
-dw 1.07e-9 -77.4 10.14 0.5 0.5549
|
||||
NO3- = NO3-
|
||||
-gamma 3 0
|
||||
-Vm 6.32 6.78 0 -3.06 0.346 0 0.93 0 -0.012 1
|
||||
@ -159,7 +155,7 @@ NO3- = NO3-
|
||||
AmmH+ = AmmH+
|
||||
-gamma 2.5 0
|
||||
-Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
-viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
-viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
-dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
H3BO3 = H3BO3
|
||||
-Vm 7.0643 8.8547 3.5844 -3.1451 -0.2 # supcrt
|
||||
@ -174,7 +170,7 @@ F- = F-
|
||||
-viscosity 0 2.85e-2 1.35e-2 6.11e-2 4.38e-3 1.384 0.586
|
||||
-dw 1.46e-9 -36 4.352
|
||||
Br- = Br-
|
||||
-gamma 3 0
|
||||
-gamma 3 0.045
|
||||
-Vm 6.72 2.85 4.21 -3.14 1.38 0 -9.56e-2 7.08 -1.56e-3 1
|
||||
-viscosity -6.98e-2 -0.141 1.78e-2 0.159 7.76e-3 6.25e-2 0.859
|
||||
-dw 2.09e-9 208 3.5 0 0.5737
|
||||
@ -203,21 +199,21 @@ Mtg = Mtg # CH4
|
||||
-Vm 9.01 -1.11 0 -1.85 -1.5 # Hnedkovsky et al., 1996, JCT 28, 125
|
||||
-dw 1.85e-9
|
||||
Ntg = Ntg # N2
|
||||
-Vm 7 # Pray et al., 1952, IEC 44 1146
|
||||
-Vm 7 # Pray et al., 1952, IEC 44, 1146
|
||||
-dw 1.96e-9 -90 # Cadogan et al. 2014, JCED 59, 519
|
||||
H2Sg = H2Sg # H2S
|
||||
-Vm 1.39 28.3 0 -7.22 -0.59 # Hnedkovsky et al., 1996, JCT 28, 125
|
||||
-dw 2.1e-9
|
||||
# aqueous species
|
||||
H2O = OH- + H+
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-gamma 3.5 0
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-Vm -9.66 28.5 80 -22.9 1.89 0 1.09 0 0 1
|
||||
-viscosity -2.26e-2 0.106 2.184e-2 -3.2e-3 0 0.4082 -1.634 # < 5 M Li,Na,KOH
|
||||
-dw 5.27e-9 478 0.8695
|
||||
2 H2O = O2 + 4 H+ + 4 e-
|
||||
-log_k -86.08
|
||||
-delta_h 134.79 kcal
|
||||
-log_k -86.06; -delta_h 138.43 kcal
|
||||
-analytic -1e3 -0.322 -5897.7 416.82 0 -1.88e-5
|
||||
-Vm 5.7889 6.3536 3.2528 -3.0417 -0.3943 # supcrt
|
||||
-dw 2.35e-9
|
||||
2 H+ + 2 e- = H2
|
||||
@ -308,7 +304,7 @@ NO3- + 2 H+ + 2 e- = NO2- + H2O
|
||||
# -delta_h -187.055 kcal
|
||||
# -gamma 2.5 0
|
||||
# -Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
# -viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
# -viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
# -dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
AmmH+ = Amm + H+
|
||||
#NH4+ = NH3 + H+
|
||||
@ -316,15 +312,15 @@ AmmH+ = Amm + H+
|
||||
-delta_h 12.48 kcal
|
||||
-analytic 0.6322 -0.001225 -2835.76
|
||||
-Vm 6.69 2.8 3.58 -2.88 1.43
|
||||
-viscosity 0.08 0 0 7.82e-3 -0.134 -0.986
|
||||
-viscosity 0 -2.24e-2 0.101 8.66e-3 2.86e-2 -0.143 -0.769
|
||||
-dw 2.28e-9
|
||||
AmmH+ + SO4-2 = AmmHSO4-
|
||||
#NH4+ + SO4-2 = NH4SO4-
|
||||
-gamma 2.08 -0.0416
|
||||
-log_k 1.211; -delta_h 8.56 kJ
|
||||
-Vm -8.78 0 -36.09 0 -8.60 0 87.62 0 -0.3123 0.1172
|
||||
-viscosity 0 0.116 -8.6e-3 0.159 -9.3e-3 0.522 0.627
|
||||
-dw 0.9e-9 100 2.1 2 0
|
||||
-gamma 3.64 -4.75e-2
|
||||
-log_k 1.276; -delta_h -3.24 kcal
|
||||
-Vm 6.64 8.5 -5.84 -3.1 2 0 19.24 0 -7.84e-2 0.289
|
||||
-viscosity 0.267 -0.207 9.75e-2 6.18e-2 1.99e-2 1.166 0.61
|
||||
-dw 1.56e-9 498 25 0.5 0.684
|
||||
H3BO3 = H2BO3- + H+
|
||||
-log_k -9.24
|
||||
-delta_h 3.224 kcal
|
||||
@ -376,13 +372,14 @@ Ca+2 + CO3-2 + H+ = CaHCO3+
|
||||
-log_k 10.91; -delta_h 4.38 kcal
|
||||
-analytic -6.009 3.377e-2 2044
|
||||
-gamma 6 0
|
||||
-Vm 30.19 .01 5.75 -2.78 .308 5.4
|
||||
-Vm 3.19 .01 5.75 -2.78 .308 5.4
|
||||
-dw 5.06e-10
|
||||
Ca+2 + SO4-2 = CaSO4
|
||||
-log_k 2.25
|
||||
-delta_h 1.325 kcal
|
||||
-dw 4.71e-10
|
||||
-Vm 2.791 -.9666 6.13 -2.739 -.001 # supcrt
|
||||
-gamma 0 4.45e-2
|
||||
-log_k 2.14; -delta_h 24.4
|
||||
-analytical_expression 1.478 8.29e-3 -538.2
|
||||
-vm 2.7 2 2 -3.7
|
||||
-dw 4.71e-9
|
||||
Ca+2 + HSO4- = CaHSO4+
|
||||
-log_k 1.08
|
||||
Ca+2 + PO4-3 = CaPO4-
|
||||
@ -419,19 +416,19 @@ Mg+2 + H+ + CO3-2 = MgHCO3+
|
||||
-Vm 2.7171 -1.1469 6.2008 -2.7316 .5985 4 # supcrt
|
||||
-dw 4.78e-10
|
||||
Mg+2 + SO4-2 = MgSO4
|
||||
-gamma 0 0.2
|
||||
-log_k 2.42; -delta_h 19 kJ
|
||||
-analytical_expression 0 9.64e-3 -136 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 8.65 -10.21 29.58 -18.6 1.061
|
||||
-viscosity 0.318 -5.4e-4 -3.42e-2 0.708 3.7e-3 0.696
|
||||
-gamma 0 0.20
|
||||
-log_k 2.42; -delta_h 19.0
|
||||
-analytical_expression 0 9.64e-3 -136 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 11.92 -27.758 29.752 -10.302 -0.1
|
||||
-viscosity -0.799 1 2.2e-4 8.53e-2 -4.6e-3 1.35 -0.796
|
||||
-dw 4.45e-10
|
||||
SO4-2 + MgSO4 = Mg(SO4)2-2
|
||||
-gamma 7 0.047
|
||||
-log_k 0.52; -delta_h -13.6 kJ
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm -8.14 -62.2 -15.96 3.29 -3.01 0 150 0 0.153 3.79e-2
|
||||
-viscosity -0.169 5e-4 -5.69e-2 0.11 2.03e-3 2.027 -1e-3
|
||||
-dw 0.845e-9 -200 8 0 0.965
|
||||
-log_k 0.52; -delta_h -13.6
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 4.248 9.83 -7 -2.672 2 3.5 5 100 0.3359 9.518e-2
|
||||
-viscosity 0.324 6.84e-2 -2.09e-2 0.104 6.19e-3 1.983 1e-3
|
||||
-dw 1.11e-9 -500 3.5 0.5 0.731
|
||||
Mg+2 + PO4-3 = MgPO4-
|
||||
-log_k 6.589
|
||||
-delta_h 3.1 kcal
|
||||
@ -457,12 +454,19 @@ Na+ + HCO3- = NaHCO3
|
||||
-viscosity -4e-2 -2.717 1.67e-5
|
||||
-dw 6.73e-10
|
||||
Na+ + SO4-2 = NaSO4-
|
||||
-gamma 5.5 0
|
||||
-log_k 0.6; -delta_h -14.4 kJ
|
||||
-analytical_expression 255.903 0.10057 0 -1.11138e2 -8.5983e5 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 1.99 -10.78 21.88 -12.7 1.601 5 32.38 501 1.565e-2 0.2325
|
||||
-viscosity 0.2 -5.93e-2 -4e-4 8.46e-3 1.78e-3 2.308 -0.208
|
||||
-dw 1.13e-9 -23 8.5 0.392 0.521
|
||||
-gamma 3.5 0.1072
|
||||
-log_k 0.94; -delta_h 8.23
|
||||
-analytical_expression -0.304 4.51e-3 -28.9 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 8.523 -4.685 -8.61 0.106 2.7 25 3.634 13.4 3.738e-2 0.5476
|
||||
-viscosity -1 0.33 0.128 1.143 7.7e-4 1.9e-2 -0.387
|
||||
-dw 4e-10 -200 3.5 0.5 0.5
|
||||
2 Na+ + SO4-2 = Na2SO4
|
||||
-gamma 0 8.85e-2
|
||||
-log_k -2.37; -delta_h 82
|
||||
-analytical_expression 15.432 -5.75e-3 -4796 # sulfates solubilities in NaCl
|
||||
-Vm 9.405 -15.5 25 8.4 0.25
|
||||
-viscosity -0.5 0.485 -1e-3 0.147 0 0.947 -0.175
|
||||
-dw 0.8e-9
|
||||
Na+ + HPO4-2 = NaHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -477,11 +481,11 @@ K+ + HCO3- = KHCO3
|
||||
-viscosity 0.7 -1.289 9e-2
|
||||
K+ + SO4-2 = KSO4-
|
||||
-gamma 5.4 0.19
|
||||
-log_k 0.6; -delta_h -10.4 kJ
|
||||
-log_k 1.18; -delta_h 3
|
||||
-analytical_expression -3.0246 9.986e-3 0 0 1.093e5 # arcanite solubility, 0 - 200 oC
|
||||
-Vm 13.48 -18.03 61.74 -19.6 2.046 5.4 -17.32 0 0.1522 1.919
|
||||
-viscosity -1 1.06 1e-4 -0.464 3.78e-2 0.539 -0.69
|
||||
-dw 0.9e-9 63 8.48 0 1.8
|
||||
-Vm 3.443 5.04 13 -3.324 2.447 0 20 0 7.77e-3 0.3497
|
||||
-viscosity 0.107 0.19 2.23e-2 -0.148 -4.91e-2 0.537 0.195
|
||||
-dw 1.22e-9 100 25 0.5 2.5
|
||||
K+ + HPO4-2 = KHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -501,9 +505,8 @@ Fe+2 + CO3-2 = FeCO3
|
||||
Fe+2 + HCO3- = FeHCO3+
|
||||
-log_k 2
|
||||
Fe+2 + SO4-2 = FeSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.23 kcal
|
||||
-Vm -13 0 123
|
||||
-log_k 2.25; -delta_h 3.23 kcal
|
||||
-Vm 5.8 6.5 3.7 -3 -0.09
|
||||
Fe+2 + HSO4- = FeHSO4+
|
||||
-log_k 1.08
|
||||
Fe+2 + 2 HS- = Fe(HS)2
|
||||
@ -605,9 +608,9 @@ Mn+2 + HCO3- = MnHCO3+
|
||||
-log_k 1.95
|
||||
-gamma 5 0
|
||||
Mn+2 + SO4-2 = MnSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.37 kcal
|
||||
-Vm -1.31 -1.83 62.3 -2.7
|
||||
-gamma 0 -0.098
|
||||
-log_k 1.408; -delta_h 21.55
|
||||
-Vm 1.88 6.5 10 -3 0.1
|
||||
Mn+2 + 2 NO3- = Mn(NO3)2
|
||||
-log_k 0.6
|
||||
-delta_h -0.396 kcal
|
||||
@ -700,7 +703,8 @@ Ba+2 + HCO3- = BaHCO3+
|
||||
-delta_h 5.56 kcal
|
||||
-analytic -3.0938 0.013669
|
||||
Ba+2 + SO4-2 = BaSO4
|
||||
-log_k 2.7
|
||||
-log_k 3.457; -delta_h 26.15
|
||||
-vm -6.25 24.66 -4.38 10.97 0.5
|
||||
Sr+2 + H2O = SrOH+ + H+
|
||||
-log_k -13.29
|
||||
-gamma 5 0
|
||||
@ -819,12 +823,13 @@ Zn+2 + 2 CO3-2 = Zn(CO3)2-2
|
||||
Zn+2 + HCO3- = ZnHCO3+
|
||||
-log_k 2.1
|
||||
Zn+2 + SO4-2 = ZnSO4
|
||||
-log_k 2.37
|
||||
-delta_h 1.36 kcal
|
||||
-Vm 2.51 0 18.8
|
||||
-gamma 0 0.1
|
||||
-log_k 2.26; -delta_h 16.15
|
||||
-Vm 0.409 6.5 2 -3 0
|
||||
Zn+2 + 2 SO4-2 = Zn(SO4)2-2
|
||||
-log_k 3.28
|
||||
-Vm 10.9 0 -98.7 0 0 0 24 0 -0.236 1
|
||||
-gamma 0.59 0.1
|
||||
-log_k 1.15; -delta_h 17.52
|
||||
-Vm 9.21 10.6 9 -3.2 3.8 25 0 100 -1e-3 0.256
|
||||
Zn+2 + Br- = ZnBr+
|
||||
-log_k -0.58
|
||||
Zn+2 + 2 Br- = ZnBr2
|
||||
@ -870,12 +875,13 @@ Cd+2 + 2 CO3-2 = Cd(CO3)2-2
|
||||
Cd+2 + HCO3- = CdHCO3+
|
||||
-log_k 1.5
|
||||
Cd+2 + SO4-2 = CdSO4
|
||||
-log_k 2.46
|
||||
-delta_h 1.08 kcal
|
||||
-Vm 10.4 0 57.9
|
||||
-gamma 0 0.1
|
||||
-log_k 1.016; -delta_h 6.84
|
||||
-Vm 2.11 6.5 10 -3 0.1
|
||||
Cd+2 + 2 SO4-2 = Cd(SO4)2-2
|
||||
-log_k 3.5
|
||||
-Vm -6.29 0 -93 0 9.5 7 0 0 0 1
|
||||
-gamma 5.201 -0.1
|
||||
-log_k 2.688; -delta_h 0.19
|
||||
-Vm 9.14 10.6 -3.06 -3.2 3.8 7.44 1.27 0.32 -1e-3 2.5
|
||||
Cd+2 + Br- = CdBr+
|
||||
-log_k 2.17
|
||||
-delta_h -0.81 kcal
|
||||
@ -995,29 +1001,24 @@ Witherite
|
||||
-Vm 46
|
||||
Gypsum
|
||||
CaSO4:2H2O = Ca+2 + SO4-2 + 2 H2O
|
||||
-log_k -4.58
|
||||
-delta_h -0.109 kcal
|
||||
-analytic 68.2401 0 -3221.51 -25.0627
|
||||
-analytical_expression 93.7 5.99E-3 -4e3 -35.019 # better fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9 # 172.18 / 2.33 (Vm H2O = 13.9 cm3/mol)
|
||||
-log_k -4.55; -delta_h -6.70
|
||||
-analytical_expression 72.244 -1.474e-2 -4040 -23.7823 # fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9
|
||||
Anhydrite
|
||||
CaSO4 = Ca+2 + SO4-2
|
||||
-log_k -4.36
|
||||
-delta_h -1.71 kcal
|
||||
-analytic 84.9 0 -3135.12 -31.79 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
log_k -4.25; -delta_h -22.4
|
||||
-analytical_expression 5.725 -2.478e-2 -790.4 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
-Vm 46.1 # 136.14 / 2.95
|
||||
Celestite
|
||||
SrSO4 = Sr+2 + SO4-2
|
||||
-log_k -6.63
|
||||
-delta_h -4.037 kcal
|
||||
# -analytic -14805.9622 -2.4660924 756968.533 5436.3588 -40553604.0
|
||||
-analytic -7.14 6.11e-3 75 0 0 -1.79e-5 # Howell et al., 1992, JCED 37, 464
|
||||
-Vm 46.4
|
||||
Barite
|
||||
BaSO4 = Ba+2 + SO4-2
|
||||
-log_k -9.97
|
||||
-delta_h 6.35 kcal
|
||||
-analytical_expression -282.43 -8.972e-2 5822 113.08 # Blount 1977; Templeton, 1960
|
||||
-log_k -9.89; -delta_h 11.82
|
||||
-analytical_expression -34.438 -3.316e-2 -1500 15.9485 # Blount 1977; Templeton, 1960
|
||||
-Vm 52.9
|
||||
Arcanite
|
||||
K2SO4 = SO4-2 + 2 K+
|
||||
@ -1027,12 +1028,14 @@ Arcanite
|
||||
-Vm 65.5
|
||||
Mirabilite
|
||||
Na2SO4:10H2O = SO4-2 + 2 Na+ + 10 H2O
|
||||
-analytical_expression -301.9326 -0.16232 0 141.078 # ref. 3
|
||||
-log_k -0.706; -delta_h 124
|
||||
-analytical_expression -53.037 0.1242 4562 # ref. 3
|
||||
Vm 216
|
||||
Thenardite
|
||||
Na2SO4 = 2 Na+ + SO4-2
|
||||
-analytical_expression 57.185 8.6024e-2 0 -30.8341 0 -7.6905e-5 # ref. 3
|
||||
-Vm 52.9
|
||||
-log_k 0.65; -delta_h -23.1
|
||||
-analytical_expression 159.849 1.699e-2 -5000 -59.6073 # ref. 3
|
||||
Vm 52.9
|
||||
Epsomite
|
||||
MgSO4:7H2O = Mg+2 + SO4-2 + 7 H2O
|
||||
log_k -1.74; -delta_h 10.57 kJ
|
||||
@ -1905,7 +1908,6 @@ Pyrolusite
|
||||
110 moles = 2e-3 * 6.98e-5 * (1 - sr_pl) * TIME
|
||||
200 SAVE moles * SOLN_VOL
|
||||
-end
|
||||
|
||||
END
|
||||
# =============================================================================================
|
||||
#(a) means amorphous. (d) means disordered, or less crystalline.
|
||||
@ -1947,17 +1949,17 @@ END
|
||||
# Av is the Debye-H<>ckel limiting slope (DH_AV in PHREEQC basic).
|
||||
# a0 is the ion-size parameter in the extended Debye-H<>ckel equation:
|
||||
# f(I^0.5) = I^0.5 / (1 + a0 * DH_B * I^0.5),
|
||||
# a0 = -gamma x for cations, = 0 for anions.
|
||||
# For details, consult ref. 1.
|
||||
# a0 = -gamma x for cations, = 0 for anions (or fitted).
|
||||
# For details, consult ref. 1 and subroutine calc_vm(tc, pa) in prep.cpp.
|
||||
# =============================================================================================
|
||||
# The viscosity is calculated with a (modified) Jones-Dole equation:
|
||||
# viscos / viscos_0 = 1 + A * Sum(0.5 z_i m_i) + fan * Sum(B_i m_i + D_i m_i n_i)
|
||||
# Parameters are for calculating the B and D terms:
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# z_i is absolute charge number, m_i is molality of i
|
||||
# B_i = b0 + b1 exp(-b2 * tc)
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions and neutral species
|
||||
# D_i = d1 * exp(-d2 tc)
|
||||
# n_i = (I^d3 * (1 + fI) + ((z_i^2 + z_i) / 2 <20> m_i)^d3) / (2 + fI), fI is an ionic strength term.
|
||||
# For details, consult ref. 4.
|
||||
|
||||
@ -16,6 +16,7 @@ set(phreeqc_DATABASE
|
||||
phreeqc.dat
|
||||
pitzer.dat
|
||||
sit.dat
|
||||
stimela.dat
|
||||
Tipping_Hurley.dat
|
||||
wateq4f.dat
|
||||
)
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# KINEC.v2.dat - last edited April 18, 2024 by MA and EHO.
|
||||
# Kinec.v2.dat - last edited April 18, 2024 by MA and EHO.
|
||||
#
|
||||
# This database contains the parameters for calculating mineral dissolution rates for primary and secondary silicate minerals using the equations and parameters reported by Hermanska et al. (2022, 2023),
|
||||
# and dissolution rates for other non)-silicate mineral systems using the equations and parameters reported by Oelkers and Addassi (2024, in preparation).
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# KINEC_v3.dat - last edited July 23, 2024 by MA and EHO.
|
||||
# Kinec_v3.dat - last edited July 23, 2024 by MA and EHO.
|
||||
#
|
||||
# This database contains the parameters for calculating mineral dissolution rates for primary and secondary silicate minerals using the equations and parameters reported by Hermanska et al. (2022, 2023),
|
||||
# and dissolution rates for other mineral systems using the equations and parameters reported by Oelkers and addassi (2024*).
|
||||
|
||||
@ -24,5 +24,6 @@ DATABASE=\
|
||||
phreeqc.dat\
|
||||
pitzer.dat\
|
||||
sit.dat\
|
||||
stimela.dat\
|
||||
Tipping_Hurley.dat\
|
||||
wateq4f.dat
|
||||
|
||||
@ -24,7 +24,7 @@ SOLUTION_MASTER_SPECIES
|
||||
|
||||
|
||||
#
|
||||
# elemen species alk gfw_formula element_gfw atomic number
|
||||
# element species alk gfw_formula element_gfw atomic number
|
||||
#
|
||||
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@ SOLUTION_MASTER_SPECIES
|
||||
|
||||
|
||||
#
|
||||
# elemen species alk gfw_formula element_gfw atomic number
|
||||
# element species alk gfw_formula element_gfw atomic number
|
||||
#
|
||||
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ SOLUTION_MASTER_SPECIES
|
||||
|
||||
|
||||
#
|
||||
# elemen species alk gfw_formula element_gfw atomic number
|
||||
# element species alk gfw_formula element_gfw atomic number
|
||||
#
|
||||
|
||||
|
||||
|
||||
@ -61,7 +61,7 @@ SOLUTION_MASTER_SPECIES
|
||||
#
|
||||
#
|
||||
#
|
||||
# elemen species alk gfw_formula element_gfw atomic Disposition Source of data
|
||||
# element species alk gfw_formula element_gfw atomic Disposition Source of data
|
||||
# number PMATCHC
|
||||
#
|
||||
H H+ -1.0 H 1.008 # 1 Ele NAGRA NTB 91-17
|
||||
|
||||
@ -2,77 +2,76 @@
|
||||
# Created 17 May 2024 14:30:44
|
||||
# c:\3rdParty\lsp\lsp.exe -f2 -k="asis" -ts "Tipping_Hurley.dat"
|
||||
|
||||
# $Id: wateq4f.dat 6895 2012-08-21 18:10:05Z dlpark $
|
||||
# Revised arsenic data from Archer and Nordstrom (2002)
|
||||
|
||||
SOLUTION_MASTER_SPECIES
|
||||
|
||||
Ag Ag+ 0 107.868 107.868
|
||||
Al Al+3 0 26.9815 26.9815
|
||||
Alkalinity CO3-2 1 50.05 50.05
|
||||
As H3AsO4 -1 74.9216 74.9216
|
||||
As(+3) H3AsO3 0 74.9216 74.9216
|
||||
As(+5) H3AsO4 -1 74.9216
|
||||
B H3BO3 0 10.81 10.81
|
||||
Ba Ba+2 0 137.34 137.34
|
||||
Br Br- 0 79.904 79.904
|
||||
C CO3-2 2 61.0173 12.0111
|
||||
C(+4) CO3-2 2 61.0173
|
||||
C(-4) CH4 0 16.042
|
||||
Ca Ca+2 0 40.08 40.08
|
||||
Cd Cd+2 0 112.4 112.4
|
||||
Cl Cl- 0 35.453 35.453
|
||||
Cs Cs+ 0 132.905 132.905
|
||||
Cu Cu+2 0 63.546 63.546
|
||||
Cu(+1) Cu+1 0 63.546
|
||||
Cu(+2) Cu+2 0 63.546
|
||||
E e- 1 0 0
|
||||
F F- 0 18.9984 18.9984
|
||||
Fe Fe+2 0 55.847 55.847
|
||||
Fe(+2) Fe+2 0 55.847
|
||||
Fe(+3) Fe+3 -2 55.847
|
||||
Fulvate Fulvate-2 0 650 650
|
||||
H H+ -1 1.008 1.008
|
||||
H(0) H2 0 1.008
|
||||
H(1) H+ -1 1.008
|
||||
Humate Humate-2 0 2000 2000
|
||||
I I- 0 126.9044 126.9044
|
||||
K K+ 0 39.102 39.102
|
||||
Li Li+ 0 6.939 6.939
|
||||
Mg Mg+2 0 24.312 24.312
|
||||
Mn Mn+2 0 54.938 54.938
|
||||
Mn(2) Mn+2 0 54.938
|
||||
Mn(3) Mn+3 0 54.938
|
||||
Mn(6) MnO4-2 0 54.938
|
||||
Mn(7) MnO4- 0 54.938
|
||||
N NO3- 0 14.0067 14.0067
|
||||
N(-3) NH4+ 0 14.0067
|
||||
N(0) N2 0 14.0067
|
||||
N(+3) NO2- 0 14.0067
|
||||
N(+5) NO3- 0 14.0067
|
||||
Na Na+ 0 22.9898 22.9898
|
||||
Ni Ni+2 0 58.71 58.71
|
||||
O H2O 0 16 16
|
||||
O(-2) H2O 0 18.016
|
||||
O(0) O2 0 16
|
||||
P PO4-3 2 30.9738 30.9738
|
||||
Pb Pb+2 0 207.19 207.19
|
||||
Rb Rb+ 0 85.47 85.47
|
||||
S SO4-2 0 96.0616 32.064
|
||||
S(-2) H2S 0 32.064
|
||||
S(6) SO4-2 0 96.0616
|
||||
Se SeO4-2 0 78.96 78.96
|
||||
Se(-2) HSe- 0 78.96
|
||||
Se(4) SeO3-2 0 78.96
|
||||
Se(6) SeO4-2 0 78.96
|
||||
Si H4SiO4 0 60.0843 28.0843
|
||||
Sr Sr+2 0 87.62 87.62
|
||||
Zn Zn+2 0 65.37 65.37
|
||||
U UO2+2 0 238.029 238.029
|
||||
U(3) U+3 0 238.029 238.029
|
||||
U(4) U+4 0 238.029 238.029
|
||||
U(5) UO2+ 0 238.029 238.029
|
||||
U(6) UO2+2 0 238.029 238.029
|
||||
Ag Ag+ 0.0 107.868 107.868
|
||||
Al Al+3 0.0 26.9815 26.9815
|
||||
Alkalinity CO3-2 1.0 50.05 50.05
|
||||
As H3AsO4 -1.0 74.9216 74.9216
|
||||
As(+3) H3AsO3 0.0 74.9216 74.9216
|
||||
As(+5) H3AsO4 -1.0 74.9216
|
||||
B H3BO3 0.0 10.81 10.81
|
||||
Ba Ba+2 0.0 137.34 137.34
|
||||
Br Br- 0.0 79.904 79.904
|
||||
C CO3-2 2.0 61.0173 12.0111
|
||||
C(+4) CO3-2 2.0 61.0173
|
||||
C(-4) CH4 0.0 16.042
|
||||
Ca Ca+2 0.0 40.08 40.08
|
||||
Cd Cd+2 0.0 112.4 112.4
|
||||
Cl Cl- 0.0 35.453 35.453
|
||||
Cs Cs+ 0.0 132.905 132.905
|
||||
Cu Cu+2 0.0 63.546 63.546
|
||||
Cu(+1) Cu+1 0.0 63.546
|
||||
Cu(+2) Cu+2 0.0 63.546
|
||||
E e- 0.0 0.0 0.0
|
||||
F F- 0.0 18.9984 18.9984
|
||||
Fe Fe+2 0.0 55.847 55.847
|
||||
Fe(+2) Fe+2 0.0 55.847
|
||||
Fe(+3) Fe+3 -2.0 55.847
|
||||
Fulvate Fulvate-2 0.0 650. 650.
|
||||
H H+ -1. 1.008 1.008
|
||||
H(0) H2 0.0 1.008
|
||||
H(1) H+ -1. 1.008
|
||||
Humate Humate-2 0.0 2000. 2000.
|
||||
I I- 0.0 126.9044 126.9044
|
||||
K K+ 0.0 39.102 39.102
|
||||
Li Li+ 0.0 6.939 6.939
|
||||
Mg Mg+2 0.0 24.312 24.312
|
||||
Mn Mn+2 0.0 54.938 54.938
|
||||
Mn(2) Mn+2 0.0 54.938
|
||||
Mn(3) Mn+3 0.0 54.938
|
||||
Mn(6) MnO4-2 0.0 54.938
|
||||
Mn(7) MnO4- 0.0 54.938
|
||||
N NO3- 0.0 14.0067 14.0067
|
||||
N(-3) NH4+ 0.0 14.0067
|
||||
N(0) N2 0.0 14.0067
|
||||
N(+3) NO2- 0.0 14.0067
|
||||
N(+5) NO3- 0.0 14.0067
|
||||
Na Na+ 0.0 22.9898 22.9898
|
||||
Ni Ni+2 0.0 58.71 58.71
|
||||
O H2O 0.0 16.00 16.00
|
||||
O(-2) H2O 0.0 18.016
|
||||
O(0) O2 0.0 16.00
|
||||
P PO4-3 2.0 30.9738 30.9738
|
||||
Pb Pb+2 0.0 207.19 207.19
|
||||
Rb Rb+ 0.0 85.47 85.47
|
||||
S SO4-2 0.0 96.0616 32.064
|
||||
S(-2) H2S 0.0 32.064
|
||||
S(6) SO4-2 0.0 96.0616
|
||||
Se SeO4-2 0.0 78.96 78.96
|
||||
Se(-2) HSe- 0.0 78.96
|
||||
Se(4) SeO3-2 0.0 78.96
|
||||
Se(6) SeO4-2 0.0 78.96
|
||||
Si H4SiO4 0.0 60.0843 28.0843
|
||||
Sr Sr+2 0.0 87.62 87.62
|
||||
Zn Zn+2 0.0 65.37 65.37
|
||||
U UO2+2 0.0 238.0290 238.0290
|
||||
U(3) U+3 0.0 238.0290 238.0290
|
||||
U(4) U+4 0.0 238.0290 238.0290
|
||||
U(5) UO2+ 0.0 238.0290 238.0290
|
||||
U(6) UO2+2 0.0 238.0290 238.0290
|
||||
|
||||
SOLUTION_SPECIES
|
||||
|
||||
|
||||
@ -3,38 +3,38 @@
|
||||
# c:\3rdParty\lsp\lsp.exe -f2 -k="asis" -ts "iso.dat"
|
||||
|
||||
SOLUTION_MASTER_SPECIES
|
||||
E e- 1 0 0
|
||||
H H3O+ -1 H 1.008
|
||||
H(0) H2 0 H
|
||||
H(1) H3O+ -1 H
|
||||
O H2O 0 O 16
|
||||
O(0) O2 0 O
|
||||
O(-2) H2O 0 O
|
||||
Ca Ca+2 0 Ca 40.08
|
||||
Mg Mg+2 0 Mg 24.312
|
||||
Na Na+ 0 Na 22.9898
|
||||
K K+ 0 K 39.102
|
||||
Fe Fe+2 0 Fe 55.847
|
||||
Fe(+2) Fe+2 0 Fe
|
||||
Fe(+3) Fe+3 -2 Fe
|
||||
Al Al+3 0 Al 26.9815
|
||||
Si H4SiO4 0 SiO2 28.0843
|
||||
Cl Cl- 0 Cl 35.453
|
||||
C CO2 0 HCO3 12.0111
|
||||
C(4) CO2 0 HCO3
|
||||
C(-4) CH4 0 CH4
|
||||
S SO4-2 0 S 31.972
|
||||
S(6) SO4-2 0 SO4
|
||||
S(-2) HS- 1 S
|
||||
N NO3- 0 N 14.0067
|
||||
N(+5) NO3- 0 N
|
||||
N(+3) NO2- 0 N
|
||||
N(0) N2 0 N
|
||||
N(-3) NH4+ 0 N
|
||||
P PO4-3 2 P 30.9738
|
||||
F F- 0 F 18.9984
|
||||
Br Br- 0 Br 79.904
|
||||
Alkalinity CO2 0 50.05 50.05
|
||||
E e- 1 0 0
|
||||
H H3O+ -1 H 1.008
|
||||
H(0) H2 0 H
|
||||
H(1) H3O+ -1 H
|
||||
O H2O 0 O 16
|
||||
O(0) O2 0 O
|
||||
O(-2) H2O 0 O
|
||||
Ca Ca+2 0 Ca 40.08
|
||||
Mg Mg+2 0 Mg 24.312
|
||||
Na Na+ 0 Na 22.9898
|
||||
K K+ 0 K 39.102
|
||||
Fe Fe+2 0 Fe 55.847
|
||||
Fe(+2) Fe+2 0 Fe
|
||||
Fe(+3) Fe+3 -2 Fe
|
||||
Al Al+3 0 Al 26.9815
|
||||
Si H4SiO4 0 SiO2 28.0843
|
||||
Cl Cl- 0 Cl 35.453
|
||||
C CO2 0 HCO3 12.0111
|
||||
C(4) CO2 0 HCO3
|
||||
C(-4) CH4 0 CH4
|
||||
S SO4-2 0 S 31.972
|
||||
S(6) SO4-2 0 SO4
|
||||
S(-2) HS- 1 S
|
||||
N NO3- 0 N 14.0067
|
||||
N(+5) NO3- 0 N
|
||||
N(+3) NO2- 0 N
|
||||
N(0) N2 0 N
|
||||
N(-3) NH4+ 0 N
|
||||
P PO4-3 2 P 30.9738
|
||||
F F- 0 F 18.9984
|
||||
Br Br- 0 Br 79.904
|
||||
Alkalinity CO2 0 50.05 50.05
|
||||
|
||||
SOLUTION_SPECIES
|
||||
H3O+ = H3O+
|
||||
@ -639,11 +639,11 @@ CO2(g)
|
||||
|
||||
O2(g)
|
||||
O2 = O2
|
||||
# log_k -2.960
|
||||
# delta_h -1.844 kcal
|
||||
# log K from llnl.dat Dec 8, 2010
|
||||
log_k -2.8983
|
||||
-analytic -7.5001e+0 7.8981e-3 0e+0 0e+0 2.0027e+5
|
||||
# log_k -2.960
|
||||
# delta_h -1.844 kcal
|
||||
# log K from llnl.dat Dec 8, 2010
|
||||
log_k -2.8983
|
||||
-analytic -7.5001e+0 7.8981e-3 0e+0 0e+0 2.0027e+5
|
||||
|
||||
H2(g)
|
||||
H2 = H2
|
||||
@ -1122,8 +1122,8 @@ ISOTOPE_ALPHAS
|
||||
# N2(aq)
|
||||
Alpha_15N_N2(aq)/NO3- Log_alpha_15N_N2(aq)/NO3-
|
||||
# NH3(aq)
|
||||
Alpha_D_NH3(aq)/H2O(l) Log_alpha_D_NH3(aq)/H2O(l)
|
||||
Alpha_T_NH3(aq)/H2O(l) Log_alpha_T_NH3(aq)/H2O(l)
|
||||
Alpha_D_NH3(aq)/H2O(l) Log_alpha_D_NH3(aq)/H2O(l)
|
||||
Alpha_T_NH3(aq)/H2O(l) Log_alpha_T_NH3(aq)/H2O(l)
|
||||
Alpha_15N_NH3(aq)/NO3- Log_alpha_15N_NH3(aq)/NO3-
|
||||
# NH4+
|
||||
Alpha_D_NH4+/H2O(l) Log_alpha_D_NH4+/H2O(l)
|
||||
|
||||
11074
database/llnl.dat
11074
database/llnl.dat
File diff suppressed because it is too large
Load Diff
@ -7,125 +7,125 @@ SOLUTION_MASTER_SPECIES
|
||||
#######################################################
|
||||
# essential definitions
|
||||
#######################################################
|
||||
Alkalinity CO3-2 2 61.0173 61.0173
|
||||
E e- 1 0 0
|
||||
H H+ -1 1.008 1.008
|
||||
H(0) H2 0 1.008
|
||||
H(1) H+ -1 1.008
|
||||
O H2O 0 16 16
|
||||
O(-2) H2O 0 16 16
|
||||
O(0) O2 0 16 16
|
||||
Alkalinity CO3-2 2 61.0173 61.0173
|
||||
E e- 1 0 0
|
||||
H H+ -1 1.008 1.008
|
||||
H(0) H2 0 1.008
|
||||
H(1) H+ -1 1.008
|
||||
O H2O 0 16 16
|
||||
O(-2) H2O 0 16 16
|
||||
O(0) O2 0 16 16
|
||||
#######################################################
|
||||
Ag Ag+ 0 107.868 107.868
|
||||
Al Al+3 0 26.9815 26.9815
|
||||
As H3AsO4 -1 74.9216 74.9216
|
||||
As(+3) H3AsO3 0 74.9216
|
||||
As(+5) H3AsO4 -1 74.9216
|
||||
B H3BO3 0 10.81 10.81
|
||||
Ba Ba+2 0 137.34 137.34
|
||||
Be Be+2 0 9.0122 9.0122
|
||||
Br Br- 0 79.904 79.904
|
||||
C CO3-2 2 61.0173 12.0111
|
||||
C(+4) CO3-2 2 61.0173
|
||||
#C(-4) CH4 0.0 16.042
|
||||
Cyanide Cyanide- 0 26.018 26.018
|
||||
Cyanate Cyanate- 0 42.017 42.017
|
||||
#DOM DOM-2.8 0 0 0
|
||||
#ClIG2 ClIG2 0 0 0
|
||||
Ca Ca+2 0 40.08 40.08
|
||||
Cd Cd+2 0 112.399 112.399
|
||||
Cl Cl- 0 35.453 35.453
|
||||
Cr CrO4-2 1 51.996 51.996
|
||||
Cr(2) Cr+2 0 51.996
|
||||
Cr(3) Cr(OH)2+ 1 51.996
|
||||
Cr(6) CrO4-2 1 51.996
|
||||
Cu Cu+2 0 63.546 63.546
|
||||
Cu(1) Cu+ 0 63.546
|
||||
Cu(2) Cu+2 0 63.546
|
||||
F F- 0 18.9984 18.9984
|
||||
Fe Fe+3 0 55.847 55.847
|
||||
Fe(+2) Fe+2 0 55.847
|
||||
Fe(+3) Fe+3 -2 55.847
|
||||
Hg Hg(OH)2 0 200.59 200.59
|
||||
Hg(2) Hg(OH)2 0 200.59
|
||||
Hg(1) Hg2+2 0 200.59
|
||||
Hg(0) Hg 0 200.59
|
||||
I I- 0 126.904 126.904
|
||||
K K+ 0 39.102 39.102
|
||||
Li Li+ 0 6.939 6.939
|
||||
Mg Mg+2 0 24.312 24.312
|
||||
Mn Mn+3 0 54.938 54.938
|
||||
Mn(2) Mn+2 0 54.938
|
||||
Mn(3) Mn+3 0 54.938
|
||||
Mn(6) MnO4-2 0 54.938
|
||||
Mn(7) MnO4- 0 54.938
|
||||
N NO3- 0 14.0067 14.0067
|
||||
N(-3) NH4+ 0 14.0067
|
||||
#N(0) N2 0.0 14.0067
|
||||
N(+3) NO2- 0 14.0067
|
||||
N(+5) NO3- 0 14.0067
|
||||
Na Na+ 0 22.9898 22.9898
|
||||
Ni Ni+2 0 58.71 58.71
|
||||
P PO4-3 2 30.9738 30.9738
|
||||
Pb Pb+2 0 207.19 207.19
|
||||
Rb Rb+ 0 85.4699 85.4699
|
||||
S SO4-2 0 96.0616 32.064
|
||||
S(-2) HS- 1 32.064
|
||||
S(6) SO4-2 0 96.0616
|
||||
Sb Sb(OH)6- 0 Sb 121.75
|
||||
Sb(3) Sb(OH)3 0 Sb
|
||||
Sb(5) Sb(OH)6- 0 Sb
|
||||
Se SeO4-2 0 78.96 78.96
|
||||
Se(-2) HSe- 0 78.96
|
||||
Se(4) SeO3-2 0 78.96
|
||||
Se(6) SeO4-2 0 78.96
|
||||
Si H4SiO4 0 96.1155 28.0843
|
||||
Sr Sr+2 0 87.62 87.62
|
||||
Tl Tl(OH)3 0 204.37 204.37
|
||||
Tl(1) Tl+ 0 204.37
|
||||
Tl(3) Tl(OH)3 0 204.37
|
||||
U UO2+2 0 238.029 238.029
|
||||
U(3) U+3 0 238.029
|
||||
U(4) U+4 0 238.029
|
||||
U(5) UO2+ 0 238.029
|
||||
U(6) UO2+2 0 238.029
|
||||
V VO2+ -2 50.94 50.94
|
||||
V(2) V+2 0 50.94
|
||||
V(3) V+3 -3 50.94
|
||||
V(4) VO+2 0 50.94
|
||||
V(5) VO2+ -2 50.94
|
||||
Zn Zn+2 0 65.37 65.37
|
||||
Benzoate Benzoate- 0 121.12 121.12
|
||||
Para_acetate Para_acetate- 1 134.14 134.14
|
||||
Isophthalate Isophthalate-2 1 164.12 164.12
|
||||
Diethylamine Diethylamine 0 73 73
|
||||
Nbutylamine Nbutylamine 1 73 73
|
||||
Methylamine Methylamine 1 31.018 31.018
|
||||
Dimethylamine Dimethylamine 1 45.028 45.028
|
||||
Tributylphosphate Tributylphosphate 0 265.97 265.97
|
||||
Hexylamine Hexylamine 1 101 101
|
||||
Ethylenediamine Ethylenediamine 2 60.12 60.12
|
||||
Npropylamine Npropylamine 1 59.04 59.04
|
||||
Isopropylamine Isopropylamine 1 59.04 59.04
|
||||
Trimethylamine Trimethylamine 1 59.04 59.04
|
||||
Citrate Citrate-3 2 189.06 189.06
|
||||
Nta Nta-3 1 188.06 188.06
|
||||
Edta Edta-4 2 276 276
|
||||
Propanoate Propanoate- 1 73.032 73.032
|
||||
Butanoate Butanoate- 0 87.043 87.043
|
||||
Isobutyrate Isobutyrate- 1 87.043 87.043
|
||||
Two_methylpyridine Two_methylpyridine 1 94 94
|
||||
Three_methylpyridine Three_methylpyridine 1 94 94
|
||||
Four_methylpyridine Four_methylpyridine 1 94 94
|
||||
Formate Formate- 0 45.02 45.02
|
||||
Isovalerate Isovalerate- 1 101.13 101.13
|
||||
Valerate Valerate- 1 101.13 101.13
|
||||
Acetate Acetate- 1 59.05 59.05
|
||||
Tartrate Tartrate-2 0 148.09 148.09
|
||||
Glycine Glycine- 1 74.07 74.07
|
||||
Salicylate Salicylate-2 1 136.12 136.12
|
||||
Glutamate Glutamate-2 1 145.13 145.13
|
||||
Phthalate Phthalate-2 1 164.13 164.13
|
||||
Ag Ag+ 0 107.868 107.868
|
||||
Al Al+3 0 26.9815 26.9815
|
||||
As H3AsO4 -1 74.9216 74.9216
|
||||
As(+3) H3AsO3 0 74.9216
|
||||
As(+5) H3AsO4 -1 74.9216
|
||||
B H3BO3 0 10.81 10.81
|
||||
Ba Ba+2 0 137.34 137.34
|
||||
Be Be+2 0 9.0122 9.0122
|
||||
Br Br- 0 79.904 79.904
|
||||
C CO3-2 2 61.0173 12.0111
|
||||
C(+4) CO3-2 2 61.0173
|
||||
#C(-4) CH4 0.0 16.042
|
||||
Cyanide Cyanide- 0 26.018 26.018
|
||||
Cyanate Cyanate- 0 42.017 42.017
|
||||
#DOM DOM-2.8 0 0 0
|
||||
#ClIG2 ClIG2 0 0 0
|
||||
Ca Ca+2 0 40.08 40.08
|
||||
Cd Cd+2 0 112.399 112.399
|
||||
Cl Cl- 0 35.453 35.453
|
||||
Cr CrO4-2 1 51.996 51.996
|
||||
Cr(2) Cr+2 0 51.996
|
||||
Cr(3) Cr(OH)2+ 1 51.996
|
||||
Cr(6) CrO4-2 1 51.996
|
||||
Cu Cu+2 0 63.546 63.546
|
||||
Cu(1) Cu+ 0 63.546
|
||||
Cu(2) Cu+2 0 63.546
|
||||
F F- 0 18.9984 18.9984
|
||||
Fe Fe+3 0 55.847 55.847
|
||||
Fe(+2) Fe+2 0 55.847
|
||||
Fe(+3) Fe+3 -2 55.847
|
||||
Hg Hg(OH)2 0 200.59 200.59
|
||||
Hg(2) Hg(OH)2 0 200.59
|
||||
Hg(1) Hg2+2 0 200.59
|
||||
Hg(0) Hg 0 200.59
|
||||
I I- 0 126.904 126.904
|
||||
K K+ 0 39.102 39.102
|
||||
Li Li+ 0 6.939 6.939
|
||||
Mg Mg+2 0 24.312 24.312
|
||||
Mn Mn+3 0 54.938 54.938
|
||||
Mn(2) Mn+2 0 54.938
|
||||
Mn(3) Mn+3 0 54.938
|
||||
Mn(6) MnO4-2 0 54.938
|
||||
Mn(7) MnO4- 0 54.938
|
||||
N NO3- 0 14.0067 14.0067
|
||||
N(-3) NH4+ 0 14.0067
|
||||
#N(0) N2 0.0 14.0067
|
||||
N(+3) NO2- 0 14.0067
|
||||
N(+5) NO3- 0 14.0067
|
||||
Na Na+ 0 22.9898 22.9898
|
||||
Ni Ni+2 0 58.71 58.71
|
||||
P PO4-3 2 30.9738 30.9738
|
||||
Pb Pb+2 0 207.19 207.19
|
||||
Rb Rb+ 0 85.4699 85.4699
|
||||
S SO4-2 0 96.0616 32.064
|
||||
S(-2) HS- 1 32.064
|
||||
S(6) SO4-2 0 96.0616
|
||||
Sb Sb(OH)6- 0 Sb 121.75
|
||||
Sb(3) Sb(OH)3 0 Sb
|
||||
Sb(5) Sb(OH)6- 0 Sb
|
||||
Se SeO4-2 0 78.96 78.96
|
||||
Se(-2) HSe- 0 78.96
|
||||
Se(4) SeO3-2 0 78.96
|
||||
Se(6) SeO4-2 0 78.96
|
||||
Si H4SiO4 0 96.1155 28.0843
|
||||
Sr Sr+2 0 87.62 87.62
|
||||
Tl Tl(OH)3 0 204.37 204.37
|
||||
Tl(1) Tl+ 0 204.37
|
||||
Tl(3) Tl(OH)3 0 204.37
|
||||
U UO2+2 0 238.029 238.029
|
||||
U(3) U+3 0 238.029
|
||||
U(4) U+4 0 238.029
|
||||
U(5) UO2+ 0 238.029
|
||||
U(6) UO2+2 0 238.029
|
||||
V VO2+ -2 50.94 50.94
|
||||
V(2) V+2 0 50.94
|
||||
V(3) V+3 -3 50.94
|
||||
V(4) VO+2 0 50.94
|
||||
V(5) VO2+ -2 50.94
|
||||
Zn Zn+2 0 65.37 65.37
|
||||
Benzoate Benzoate- 0 121.12 121.12
|
||||
Para_acetate Para_acetate- 1 134.14 134.14
|
||||
Isophthalate Isophthalate-2 1 164.12 164.12
|
||||
Diethylamine Diethylamine 0 73 73
|
||||
Nbutylamine Nbutylamine 1 73 73
|
||||
Methylamine Methylamine 1 31.018 31.018
|
||||
Dimethylamine Dimethylamine 1 45.028 45.028
|
||||
Tributylphosphate Tributylphosphate 0 265.97 265.97
|
||||
Hexylamine Hexylamine 1 101 101
|
||||
Ethylenediamine Ethylenediamine 2 60.12 60.12
|
||||
Npropylamine Npropylamine 1 59.04 59.04
|
||||
Isopropylamine Isopropylamine 1 59.04 59.04
|
||||
Trimethylamine Trimethylamine 1 59.04 59.04
|
||||
Citrate Citrate-3 2 189.06 189.06
|
||||
Nta Nta-3 1 188.06 188.06
|
||||
Edta Edta-4 2 276 276
|
||||
Propanoate Propanoate- 1 73.032 73.032
|
||||
Butanoate Butanoate- 0 87.043 87.043
|
||||
Isobutyrate Isobutyrate- 1 87.043 87.043
|
||||
Two_methylpyridine Two_methylpyridine 1 94 94
|
||||
Three_methylpyridine Three_methylpyridine 1 94 94
|
||||
Four_methylpyridine Four_methylpyridine 1 94 94
|
||||
Formate Formate- 0 45.02 45.02
|
||||
Isovalerate Isovalerate- 1 101.13 101.13
|
||||
Valerate Valerate- 1 101.13 101.13
|
||||
Acetate Acetate- 1 59.05 59.05
|
||||
Tartrate Tartrate-2 0 148.09 148.09
|
||||
Glycine Glycine- 1 74.07 74.07
|
||||
Salicylate Salicylate-2 1 136.12 136.12
|
||||
Glutamate Glutamate-2 1 145.13 145.13
|
||||
Phthalate Phthalate-2 1 164.13 164.13
|
||||
SOLUTION_SPECIES
|
||||
#######################################################
|
||||
# essential definitions
|
||||
@ -3691,12 +3691,12 @@ Greigite
|
||||
delta_h -0 kcal
|
||||
Gypsum
|
||||
CaSO4:2H2O = Ca+2 + SO4-2 + 2 H2O
|
||||
# # Log K gives too small a solubility < 10 mmol/L
|
||||
# # D. Parkhurst 7/13/09, Replacing log K with minteq version 4 log K
|
||||
# # Log K gives too small a solubility < 10 mmol/L
|
||||
# # D. Parkhurst 7/13/09, Replacing log K with minteq version 4 log K
|
||||
# log_k -4.848
|
||||
# delta_h 0.261 kcal
|
||||
log_k -4.61
|
||||
delta_h 1 kJ
|
||||
log_k -4.61
|
||||
delta_h 1 kJ
|
||||
|
||||
Halite
|
||||
NaCl = Na+ + Cl-
|
||||
|
||||
22380
database/minteq.v4.dat
22380
database/minteq.v4.dat
File diff suppressed because it is too large
Load Diff
@ -1,8 +1,8 @@
|
||||
# File 1 = C:\GitPrograms\phreeqc3-1\database\Amm.dat, 22/05/2024 19:38, 1948 lines, 55817 bytes, md5=78b3659799b73ddca128328b6ee7533b
|
||||
# File 1 = C:\GitPrograms\phreeqc3-1\database\phreeqc.dat, 22/05/2024 19:38, 1948 lines, 55817 bytes, md5=78b3659799b73ddca128328b6ee7533b
|
||||
# Created 22 May 2024 19:55:37
|
||||
# C:\3rdParty\lsp\lsp.exe -f2 -k=asis -ts Amm.dat
|
||||
# C:\3rdParty\lsp\lsp.exe -f2 -k=asis -ts phreeqc.dat
|
||||
|
||||
# PHREEQC.DAT for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Based on:
|
||||
# phreeqc.dat for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Based on:
|
||||
# diffusion coefficients and molal volumina of aqueous species, solubility and volume of minerals, and critical temperatures and pressures of gases in Peng-Robinson's EOS.
|
||||
# Details are given at the end of this file.
|
||||
|
||||
@ -70,7 +70,7 @@ H+ = H+
|
||||
-dw 9.31e-9 838 6.96 -2.285 0.206 24.01 0
|
||||
# Dw(25 C) dw_T a a2 visc a3 a_v_dif
|
||||
# Dw(TK) = 9.31e-9 * exp(838 / TK - 838 / 298.15) * viscos_0_25 / viscos_0_tc
|
||||
# a = DH ion size, a2 = exponent, visc = viscosity exponent, a3(H+) = 24.01 = new dw calculation from A.D. 2024, a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
# a = DH ion size (= 3.5 - 25), a2 = exponent (= 0 2.5), visc = viscosity exponent (= 0 2.5), a3 = switch [a3(H+) = 24.01 = new dw calculation from A.D. 2024], a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
|
||||
# For SC, Dw(TK) *= (viscos_0_tc / viscos)^visc (visc = 0.206 for H+)
|
||||
# a3 > 5 or a3 = 0 or not defined ? ka = DH_B * a * (1 + (vm - v0))^a2 * mu^0.5, in Onsager-Falkenhagen eqn. (For H+, the reference ion, vm = v0 = 0, a *= (1 + mu)^a2.)
|
||||
@ -80,7 +80,7 @@ H+ = H+
|
||||
# If a_v_dif <> 0, Dw(TK) *= (viscos_0_tc / viscos)^a_v_dif in TRANSPORT.
|
||||
e- = e-
|
||||
H2O = H2O
|
||||
-dw 2.299e-9 -254
|
||||
-dw 2.299e-9 -249 # Holz et al., Phys. Chem. Chem. Phys., 2000, 2, 4740.
|
||||
# H2O + 0.01e- = H2O-0.01; -log_k -9 # aids convergence
|
||||
Li+ = Li+
|
||||
-gamma 6 0 # The apparent volume parameters are defined in ref. 1 & 2
|
||||
@ -111,9 +111,9 @@ Ca+2 = Ca+2
|
||||
-dw 0.792e-9 34 5.411 0 1.046
|
||||
Sr+2 = Sr+2
|
||||
-gamma 5.26 0.121
|
||||
-Vm -1.57e-2 -10.15 10.18 -2.36 0.86 5.26 0.859 -27 -4.1e-3 1.97
|
||||
-viscosity 0.472 -0.252 5.51e-3 3.67e-3 0 1.876
|
||||
-dw 0.794e-9 149 0.805 1.961 1e-9 0.7876
|
||||
-Vm -5.6e-2 -10.15 9.90 -2.36 0.807 5.26 2.72 -82.7 -1.37e-2 0.956
|
||||
-viscosity 0.493 -0.255 2.3e-3 4.2e-3 -3.8e-3 1.762
|
||||
-dw 0.794e-9 18 0.681 2.069 0.965 0.271
|
||||
Ba+2 = Ba+2
|
||||
-gamma 5 0
|
||||
-gamma 4 0.153 # Barite solubility
|
||||
@ -147,19 +147,19 @@ CO3-2 = CO3-2
|
||||
-viscosity -0.5 0.6521 5.44e-3 1.06e-3 -2.18e-2 1.208 -2.147
|
||||
-dw 0.955e-9 -103 2.246 7.13e-2 0.3686
|
||||
SO4-2 = SO4-2
|
||||
-gamma 5 -0.04
|
||||
-Vm -7.77 43.17 176 -51.45 3.794 0 42.99 -541 -0.145 0.45 # with analytical_expressions for log K of NaSO4-, KSO4- & MgSO4, 0 - 200 oC
|
||||
-viscosity -0.3 0.501 2.57e-3 0.195 3.14e-2 2.015 0.605
|
||||
-dw 1.07e-9 -114 17 6.02e-2 4.94e-2
|
||||
-gamma 5.0 -0.04
|
||||
-Vm 5.36 10.69 33.566 -15.03 4.2582 25 0.341 153.8 1.089e-2 0.9224 # with Na2SO4 & better calculation of sulfates' solubilities in NaCl
|
||||
-viscosity -0.5 0.521 4.2e-4 9.78e-3 1.24e-2 2.5 -4.94e-2
|
||||
-dw 1.07e-9 -77.4 10.14 0.5 0.5549
|
||||
NO3- = NO3-
|
||||
-gamma 3 0
|
||||
-Vm 6.32 6.78 0 -3.06 0.346 0 0.93 0 -0.012 1
|
||||
-viscosity 8.37e-2 -0.458 1.54e-2 0.34 1.79e-2 5.02e-2 0.7381
|
||||
-dw 1.9e-9 104 1.11
|
||||
# AmmH+ = AmmH+
|
||||
#AmmH+ = AmmH+
|
||||
# -gamma 2.5 0
|
||||
# -Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
# -viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
# -viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
# -dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
H3BO3 = H3BO3
|
||||
-Vm 7.0643 8.8547 3.5844 -3.1451 -0.2 # supcrt
|
||||
@ -174,7 +174,7 @@ F- = F-
|
||||
-viscosity 0 2.85e-2 1.35e-2 6.11e-2 4.38e-3 1.384 0.586
|
||||
-dw 1.46e-9 -36 4.352
|
||||
Br- = Br-
|
||||
-gamma 3 0
|
||||
-gamma 3 0.045
|
||||
-Vm 6.72 2.85 4.21 -3.14 1.38 0 -9.56e-2 7.08 -1.56e-3 1
|
||||
-viscosity -6.98e-2 -0.141 1.78e-2 0.159 7.76e-3 6.25e-2 0.859
|
||||
-dw 2.09e-9 208 3.5 0 0.5737
|
||||
@ -203,21 +203,21 @@ Mtg = Mtg # CH4
|
||||
-Vm 9.01 -1.11 0 -1.85 -1.5 # Hnedkovsky et al., 1996, JCT 28, 125
|
||||
-dw 1.85e-9
|
||||
Ntg = Ntg # N2
|
||||
-Vm 7 # Pray et al., 1952, IEC 44 1146
|
||||
-Vm 7 # Pray et al., 1952, IEC 44, 1146
|
||||
-dw 1.96e-9 -90 # Cadogan et al. 2014, JCED 59, 519
|
||||
H2Sg = H2Sg # H2S
|
||||
-Vm 1.39 28.3 0 -7.22 -0.59 # Hnedkovsky et al., 1996, JCT 28, 125
|
||||
-dw 2.1e-9
|
||||
# aqueous species
|
||||
H2O = OH- + H+
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-gamma 3.5 0
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-Vm -9.66 28.5 80 -22.9 1.89 0 1.09 0 0 1
|
||||
-viscosity -2.26e-2 0.106 2.184e-2 -3.2e-3 0 0.4082 -1.634 # < 5 M Li,Na,KOH
|
||||
-dw 5.27e-9 478 0.8695
|
||||
2 H2O = O2 + 4 H+ + 4 e-
|
||||
-log_k -86.08
|
||||
-delta_h 134.79 kcal
|
||||
-log_k -86.06; -delta_h 138.43 kcal
|
||||
-analytic -1e3 -0.322 -5897.7 416.82 0 -1.88e-5
|
||||
-Vm 5.7889 6.3536 3.2528 -3.0417 -0.3943 # supcrt
|
||||
-dw 2.35e-9
|
||||
2 H+ + 2 e- = H2
|
||||
@ -304,11 +304,11 @@ NO3- + 2 H+ + 2 e- = NO2- + H2O
|
||||
-Vm 7 # Pray et al., 1952, IEC 44 1146
|
||||
-dw 1.96e-9 -90 # Cadogan et al. 2014, JCED 59, 519
|
||||
NO3- + 10 H+ + 8 e- = NH4+ + 3 H2O
|
||||
-log_k 119.077
|
||||
-delta_h -187.055 kcal
|
||||
-log_k 119.077
|
||||
-delta_h -187.055 kcal
|
||||
-gamma 2.5 0
|
||||
-Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
-viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
-viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
-dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
#AmmH+ = Amm + H+
|
||||
NH4+ = NH3 + H+
|
||||
@ -316,15 +316,15 @@ NH4+ = NH3 + H+
|
||||
-delta_h 12.48 kcal
|
||||
-analytic 0.6322 -0.001225 -2835.76
|
||||
-Vm 6.69 2.8 3.58 -2.88 1.43
|
||||
-viscosity 0.08 0 0 7.82e-3 -0.134 -0.986
|
||||
-viscosity 0 -2.24e-2 0.101 8.66e-3 2.86e-2 -0.143 -0.769
|
||||
-dw 2.28e-9
|
||||
#AmmH+ + SO4-2 = AmmHSO4-
|
||||
NH4+ + SO4-2 = NH4SO4-
|
||||
-gamma 2.08 -0.0416
|
||||
-log_k 1.211; -delta_h 8.56 kJ
|
||||
-Vm -8.78 0 -36.09 0 -8.60 0 87.62 0 -0.3123 0.1172
|
||||
-viscosity 0 0.116 -8.6e-3 0.159 -9.3e-3 0.522 0.627
|
||||
-dw 0.9e-9 100 2.1 2 0
|
||||
-gamma 3.64 -4.75e-2
|
||||
-log_k 1.276; -delta_h -3.24 kcal
|
||||
-Vm 6.64 8.5 -5.84 -3.1 2 0 19.24 0 -7.84e-2 0.289
|
||||
-viscosity 0.267 -0.207 9.75e-2 6.18e-2 1.99e-2 1.166 0.61
|
||||
-dw 1.56e-9 498 25 0.5 0.684
|
||||
H3BO3 = H2BO3- + H+
|
||||
-log_k -9.24
|
||||
-delta_h 3.224 kcal
|
||||
@ -376,13 +376,14 @@ Ca+2 + CO3-2 + H+ = CaHCO3+
|
||||
-log_k 10.91; -delta_h 4.38 kcal
|
||||
-analytic -6.009 3.377e-2 2044
|
||||
-gamma 6 0
|
||||
-Vm 30.19 .01 5.75 -2.78 .308 5.4
|
||||
-Vm 3.19 .01 5.75 -2.78 .308 5.4
|
||||
-dw 5.06e-10
|
||||
Ca+2 + SO4-2 = CaSO4
|
||||
-log_k 2.25
|
||||
-delta_h 1.325 kcal
|
||||
-dw 4.71e-10
|
||||
-Vm 2.791 -.9666 6.13 -2.739 -.001 # supcrt
|
||||
-gamma 0 4.45e-2
|
||||
-log_k 2.14; -delta_h 24.4
|
||||
-analytical_expression 1.478 8.29e-3 -538.2
|
||||
-vm 2.7 2 2 -3.7
|
||||
-dw 4.71e-9
|
||||
Ca+2 + HSO4- = CaHSO4+
|
||||
-log_k 1.08
|
||||
Ca+2 + PO4-3 = CaPO4-
|
||||
@ -419,19 +420,19 @@ Mg+2 + H+ + CO3-2 = MgHCO3+
|
||||
-Vm 2.7171 -1.1469 6.2008 -2.7316 .5985 4 # supcrt
|
||||
-dw 4.78e-10
|
||||
Mg+2 + SO4-2 = MgSO4
|
||||
-gamma 0 0.2
|
||||
-log_k 2.42; -delta_h 19 kJ
|
||||
-analytical_expression 0 9.64e-3 -136 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 8.65 -10.21 29.58 -18.6 1.061
|
||||
-viscosity 0.318 -5.4e-4 -3.42e-2 0.708 3.7e-3 0.696
|
||||
-gamma 0 0.20
|
||||
-log_k 2.42; -delta_h 19.0
|
||||
-analytical_expression 0 9.64e-3 -136 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 11.92 -27.758 29.752 -10.302 -0.1
|
||||
-viscosity -0.799 1 2.2e-4 8.53e-2 -4.6e-3 1.35 -0.796
|
||||
-dw 4.45e-10
|
||||
SO4-2 + MgSO4 = Mg(SO4)2-2
|
||||
-gamma 7 0.047
|
||||
-log_k 0.52; -delta_h -13.6 kJ
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm -8.14 -62.2 -15.96 3.29 -3.01 0 150 0 0.153 3.79e-2
|
||||
-viscosity -0.169 5e-4 -5.69e-2 0.11 2.03e-3 2.027 -1e-3
|
||||
-dw 0.845e-9 -200 8 0 0.965
|
||||
-log_k 0.52; -delta_h -13.6
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 4.248 9.83 -7 -2.672 2 3.5 5 100 0.3359 9.518e-2
|
||||
-viscosity 0.324 6.84e-2 -2.09e-2 0.104 6.19e-3 1.983 1e-3
|
||||
-dw 1.11e-9 -500 3.5 0.5 0.731
|
||||
Mg+2 + PO4-3 = MgPO4-
|
||||
-log_k 6.589
|
||||
-delta_h 3.1 kcal
|
||||
@ -457,12 +458,19 @@ Na+ + HCO3- = NaHCO3
|
||||
-viscosity -4e-2 -2.717 1.67e-5
|
||||
-dw 6.73e-10
|
||||
Na+ + SO4-2 = NaSO4-
|
||||
-gamma 5.5 0
|
||||
-log_k 0.6; -delta_h -14.4 kJ
|
||||
-analytical_expression 255.903 0.10057 0 -1.11138e2 -8.5983e5 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 1.99 -10.78 21.88 -12.7 1.601 5 32.38 501 1.565e-2 0.2325
|
||||
-viscosity 0.2 -5.93e-2 -4e-4 8.46e-3 1.78e-3 2.308 -0.208
|
||||
-dw 1.13e-9 -23 8.5 0.392 0.521
|
||||
-gamma 3.5 0.1072
|
||||
-log_k 0.94; -delta_h 8.23
|
||||
-analytical_expression -0.304 4.51e-3 -28.9 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 8.523 -4.685 -8.61 0.106 2.7 25 3.634 13.4 3.738e-2 0.5476
|
||||
-viscosity -1 0.33 0.128 1.143 7.7e-4 1.9e-2 -0.387
|
||||
-dw 4e-10 -200 3.5 0.5 0.5
|
||||
2 Na+ + SO4-2 = Na2SO4
|
||||
-gamma 0 8.85e-2
|
||||
-log_k -2.37; -delta_h 82
|
||||
-analytical_expression 15.432 -5.75e-3 -4796 # sulfates solubilities in NaCl
|
||||
-Vm 9.405 -15.5 25 8.4 0.25
|
||||
-viscosity -0.5 0.485 -1e-3 0.147 0 0.947 -0.175
|
||||
-dw 0.8e-9
|
||||
Na+ + HPO4-2 = NaHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -477,11 +485,11 @@ K+ + HCO3- = KHCO3
|
||||
-viscosity 0.7 -1.289 9e-2
|
||||
K+ + SO4-2 = KSO4-
|
||||
-gamma 5.4 0.19
|
||||
-log_k 0.6; -delta_h -10.4 kJ
|
||||
-log_k 1.18; -delta_h 3
|
||||
-analytical_expression -3.0246 9.986e-3 0 0 1.093e5 # arcanite solubility, 0 - 200 oC
|
||||
-Vm 13.48 -18.03 61.74 -19.6 2.046 5.4 -17.32 0 0.1522 1.919
|
||||
-viscosity -1 1.06 1e-4 -0.464 3.78e-2 0.539 -0.69
|
||||
-dw 0.9e-9 63 8.48 0 1.8
|
||||
-Vm 3.443 5.04 13 -3.324 2.447 0 20 0 7.77e-3 0.3497
|
||||
-viscosity 0.107 0.19 2.23e-2 -0.148 -4.91e-2 0.537 0.195
|
||||
-dw 1.22e-9 100 25 0.5 2.5
|
||||
K+ + HPO4-2 = KHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -501,9 +509,8 @@ Fe+2 + CO3-2 = FeCO3
|
||||
Fe+2 + HCO3- = FeHCO3+
|
||||
-log_k 2
|
||||
Fe+2 + SO4-2 = FeSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.23 kcal
|
||||
-Vm -13 0 123
|
||||
-log_k 2.25; -delta_h 3.23 kcal
|
||||
-Vm 5.8 6.5 3.7 -3 -0.09
|
||||
Fe+2 + HSO4- = FeHSO4+
|
||||
-log_k 1.08
|
||||
Fe+2 + 2 HS- = Fe(HS)2
|
||||
@ -605,9 +612,9 @@ Mn+2 + HCO3- = MnHCO3+
|
||||
-log_k 1.95
|
||||
-gamma 5 0
|
||||
Mn+2 + SO4-2 = MnSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.37 kcal
|
||||
-Vm -1.31 -1.83 62.3 -2.7
|
||||
-gamma 0 -0.098
|
||||
-log_k 1.408; -delta_h 21.55
|
||||
-Vm 1.88 6.5 10 -3 0.1
|
||||
Mn+2 + 2 NO3- = Mn(NO3)2
|
||||
-log_k 0.6
|
||||
-delta_h -0.396 kcal
|
||||
@ -700,7 +707,8 @@ Ba+2 + HCO3- = BaHCO3+
|
||||
-delta_h 5.56 kcal
|
||||
-analytic -3.0938 0.013669
|
||||
Ba+2 + SO4-2 = BaSO4
|
||||
-log_k 2.7
|
||||
-log_k 3.457; -delta_h 26.15
|
||||
-vm -6.25 24.66 -4.38 10.97 0.5
|
||||
Sr+2 + H2O = SrOH+ + H+
|
||||
-log_k -13.29
|
||||
-gamma 5 0
|
||||
@ -819,12 +827,13 @@ Zn+2 + 2 CO3-2 = Zn(CO3)2-2
|
||||
Zn+2 + HCO3- = ZnHCO3+
|
||||
-log_k 2.1
|
||||
Zn+2 + SO4-2 = ZnSO4
|
||||
-log_k 2.37
|
||||
-delta_h 1.36 kcal
|
||||
-Vm 2.51 0 18.8
|
||||
-gamma 0 0.1
|
||||
-log_k 2.26; -delta_h 16.15
|
||||
-Vm 0.409 6.5 2 -3 0
|
||||
Zn+2 + 2 SO4-2 = Zn(SO4)2-2
|
||||
-log_k 3.28
|
||||
-Vm 10.9 0 -98.7 0 0 0 24 0 -0.236 1
|
||||
-gamma 0.59 0.1
|
||||
-log_k 1.15; -delta_h 17.52
|
||||
-Vm 9.21 10.6 9 -3.2 3.8 25 0 100 -1e-3 0.256
|
||||
Zn+2 + Br- = ZnBr+
|
||||
-log_k -0.58
|
||||
Zn+2 + 2 Br- = ZnBr2
|
||||
@ -870,12 +879,13 @@ Cd+2 + 2 CO3-2 = Cd(CO3)2-2
|
||||
Cd+2 + HCO3- = CdHCO3+
|
||||
-log_k 1.5
|
||||
Cd+2 + SO4-2 = CdSO4
|
||||
-log_k 2.46
|
||||
-delta_h 1.08 kcal
|
||||
-Vm 10.4 0 57.9
|
||||
-gamma 0 0.1
|
||||
-log_k 1.016; -delta_h 6.84
|
||||
-Vm 2.11 6.5 10 -3 0.1
|
||||
Cd+2 + 2 SO4-2 = Cd(SO4)2-2
|
||||
-log_k 3.5
|
||||
-Vm -6.29 0 -93 0 9.5 7 0 0 0 1
|
||||
-gamma 5.201 -0.1
|
||||
-log_k 2.688; -delta_h 0.19
|
||||
-Vm 9.14 10.6 -3.06 -3.2 3.8 7.44 1.27 0.32 -1e-3 2.5
|
||||
Cd+2 + Br- = CdBr+
|
||||
-log_k 2.17
|
||||
-delta_h -0.81 kcal
|
||||
@ -995,29 +1005,24 @@ Witherite
|
||||
-Vm 46
|
||||
Gypsum
|
||||
CaSO4:2H2O = Ca+2 + SO4-2 + 2 H2O
|
||||
-log_k -4.58
|
||||
-delta_h -0.109 kcal
|
||||
-analytic 68.2401 0 -3221.51 -25.0627
|
||||
-analytical_expression 93.7 5.99E-3 -4e3 -35.019 # better fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9 # 172.18 / 2.33 (Vm H2O = 13.9 cm3/mol)
|
||||
-log_k -4.55; -delta_h -6.70
|
||||
-analytical_expression 72.244 -1.474e-2 -4040 -23.7823 # fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9
|
||||
Anhydrite
|
||||
CaSO4 = Ca+2 + SO4-2
|
||||
-log_k -4.36
|
||||
-delta_h -1.71 kcal
|
||||
-analytic 84.9 0 -3135.12 -31.79 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
log_k -4.25; -delta_h -22.4
|
||||
-analytical_expression 5.725 -2.478e-2 -790.4 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
-Vm 46.1 # 136.14 / 2.95
|
||||
Celestite
|
||||
SrSO4 = Sr+2 + SO4-2
|
||||
-log_k -6.63
|
||||
-delta_h -4.037 kcal
|
||||
# -analytic -14805.9622 -2.4660924 756968.533 5436.3588 -40553604.0
|
||||
-analytic -7.14 6.11e-3 75 0 0 -1.79e-5 # Howell et al., 1992, JCED 37, 464
|
||||
-Vm 46.4
|
||||
Barite
|
||||
BaSO4 = Ba+2 + SO4-2
|
||||
-log_k -9.97
|
||||
-delta_h 6.35 kcal
|
||||
-analytical_expression -282.43 -8.972e-2 5822 113.08 # Blount 1977; Templeton, 1960
|
||||
-log_k -9.89; -delta_h 11.82
|
||||
-analytical_expression -34.438 -3.316e-2 -1500 15.9485 # Blount 1977; Templeton, 1960
|
||||
-Vm 52.9
|
||||
Arcanite
|
||||
K2SO4 = SO4-2 + 2 K+
|
||||
@ -1027,12 +1032,14 @@ Arcanite
|
||||
-Vm 65.5
|
||||
Mirabilite
|
||||
Na2SO4:10H2O = SO4-2 + 2 Na+ + 10 H2O
|
||||
-analytical_expression -301.9326 -0.16232 0 141.078 # ref. 3
|
||||
-log_k -0.706; -delta_h 124
|
||||
-analytical_expression -53.037 0.1242 4562 # ref. 3
|
||||
Vm 216
|
||||
Thenardite
|
||||
Na2SO4 = 2 Na+ + SO4-2
|
||||
-analytical_expression 57.185 8.6024e-2 0 -30.8341 0 -7.6905e-5 # ref. 3
|
||||
-Vm 52.9
|
||||
-log_k 0.65; -delta_h -23.1
|
||||
-analytical_expression 159.849 1.699e-2 -5000 -59.6073 # ref. 3
|
||||
Vm 52.9
|
||||
Epsomite
|
||||
MgSO4:7H2O = Mg+2 + SO4-2 + 7 H2O
|
||||
log_k -1.74; -delta_h 10.57 kJ
|
||||
@ -1905,7 +1912,6 @@ Pyrolusite
|
||||
110 moles = 2e-3 * 6.98e-5 * (1 - sr_pl) * TIME
|
||||
200 SAVE moles * SOLN_VOL
|
||||
-end
|
||||
|
||||
END
|
||||
# =============================================================================================
|
||||
#(a) means amorphous. (d) means disordered, or less crystalline.
|
||||
@ -1947,17 +1953,17 @@ END
|
||||
# Av is the Debye-H<>ckel limiting slope (DH_AV in PHREEQC basic).
|
||||
# a0 is the ion-size parameter in the extended Debye-H<>ckel equation:
|
||||
# f(I^0.5) = I^0.5 / (1 + a0 * DH_B * I^0.5),
|
||||
# a0 = -gamma x for cations, = 0 for anions.
|
||||
# For details, consult ref. 1.
|
||||
# a0 = -gamma x for cations, = 0 for anions (or fitted).
|
||||
# For details, consult ref. 1 and subroutine calc_vm(tc, pa) in prep.cpp.
|
||||
# =============================================================================================
|
||||
# The viscosity is calculated with a (modified) Jones-Dole equation:
|
||||
# viscos / viscos_0 = 1 + A * Sum(0.5 z_i m_i) + fan * Sum(B_i m_i + D_i m_i n_i)
|
||||
# Parameters are for calculating the B and D terms:
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# z_i is absolute charge number, m_i is molality of i
|
||||
# B_i = b0 + b1 exp(-b2 * tc)
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions and neutral species
|
||||
# D_i = d1 * exp(-d2 tc)
|
||||
# n_i = (I^d3 * (1 + fI) + ((z_i^2 + z_i) / 2 <20> m_i)^d3) / (2 + fI), fI is an ionic strength term.
|
||||
# For details, consult ref. 4.
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
# PHREEQC.DAT for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Augmented with kinetic rates for minerals from compilations. Based on:
|
||||
# phreeqc_rates.dat for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution. Augmented with kinetic rates for minerals from compilations. Based on:
|
||||
# diffusion coefficients and molal volumina of aqueous species, solubility and volume of minerals, and critical temperatures and pressures of gases in Peng-Robinson's EOS.
|
||||
# Details are given at the end of this file.
|
||||
|
||||
SOLUTION_MASTER_SPECIES
|
||||
#
|
||||
#element species alk gfw_formula element_gfw
|
||||
#element species alk gfw_formula element_gfw
|
||||
#
|
||||
H H+ -1 H 1.008
|
||||
H(0) H2 0 H
|
||||
@ -40,7 +40,7 @@ N(+5) NO3- 0 N
|
||||
N(+3) NO2- 0 N
|
||||
N(0) N2 0 N
|
||||
N(-3) NH4+ 0 N 14.0067
|
||||
#Amm AmmH+ 0 AmmH 17.031
|
||||
#Amm AmmH+ 0 AmmH 17.031
|
||||
B H3BO3 0 B 10.81
|
||||
P PO4-3 2 P 30.9738
|
||||
F F- 0 F 18.9984
|
||||
@ -66,7 +66,7 @@ H+ = H+
|
||||
-dw 9.31e-9 838 6.96 -2.285 0.206 24.01 0
|
||||
# Dw(25 C) dw_T a a2 visc a3 a_v_dif
|
||||
# Dw(TK) = 9.31e-9 * exp(838 / TK - 838 / 298.15) * viscos_0_25 / viscos_0_tc
|
||||
# a = DH ion size, a2 = exponent, visc = viscosity exponent, a3(H+) = 24.01 = new dw calculation from A.D. 2024, a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
# a = DH ion size (= 3.5 - 25), a2 = exponent (= 0 2.5), visc = viscosity exponent (= 0 2.5), a3 = switch [a3(H+) = 24.01 = new dw calculation from A.D. 2024], a_v_dif = exponent in (viscos_0_tc / viscos)^a_v_dif for tracer diffusion.
|
||||
|
||||
# For SC, Dw(TK) *= (viscos_0_tc / viscos)^visc (visc = 0.206 for H+)
|
||||
# a3 > 5 or a3 = 0 or not defined ? ka = DH_B * a * (1 + (vm - v0))^a2 * mu^0.5, in Onsager-Falkenhagen eqn. (For H+, the reference ion, vm = v0 = 0, a *= (1 + mu)^a2.)
|
||||
@ -76,7 +76,7 @@ H+ = H+
|
||||
# If a_v_dif <> 0, Dw(TK) *= (viscos_0_tc / viscos)^a_v_dif in TRANSPORT.
|
||||
e- = e-
|
||||
H2O = H2O
|
||||
-dw 2.299e-9 -254
|
||||
-dw 2.299e-9 -249 # Holz et al., Phys. Chem. Chem. Phys., 2000, 2, 4740.
|
||||
# H2O + 0.01e- = H2O-0.01; -log_k -9 # aids convergence
|
||||
Li+ = Li+
|
||||
-gamma 6 0 # The apparent volume parameters are defined in ref. 1 & 2
|
||||
@ -107,9 +107,9 @@ Ca+2 = Ca+2
|
||||
-dw 0.792e-9 34 5.411 0 1.046
|
||||
Sr+2 = Sr+2
|
||||
-gamma 5.26 0.121
|
||||
-Vm -1.57e-2 -10.15 10.18 -2.36 0.86 5.26 0.859 -27 -4.1e-3 1.97
|
||||
-viscosity 0.472 -0.252 5.51e-3 3.67e-3 0 1.876
|
||||
-dw 0.794e-9 149 0.805 1.961 1e-9 0.7876
|
||||
-Vm -5.6e-2 -10.15 9.90 -2.36 0.807 5.26 2.72 -82.7 -1.37e-2 0.956
|
||||
-viscosity 0.493 -0.255 2.3e-3 4.2e-3 -3.8e-3 1.762
|
||||
-dw 0.794e-9 18 0.681 2.069 0.965 0.271
|
||||
Ba+2 = Ba+2
|
||||
-gamma 5 0
|
||||
-gamma 4 0.153 # Barite solubility
|
||||
@ -143,20 +143,20 @@ CO3-2 = CO3-2
|
||||
-viscosity -0.5 0.6521 5.44e-3 1.06e-3 -2.18e-2 1.208 -2.147
|
||||
-dw 0.955e-9 -103 2.246 7.13e-2 0.3686
|
||||
SO4-2 = SO4-2
|
||||
-gamma 5 -0.04
|
||||
-Vm -7.77 43.17 176 -51.45 3.794 0 42.99 -541 -0.145 0.45 # with analytical_expressions for log K of NaSO4-, KSO4- & MgSO4, 0 - 200 oC
|
||||
-viscosity -0.3 0.501 2.57e-3 0.195 3.14e-2 2.015 0.605
|
||||
-dw 1.07e-9 -114 17 6.02e-2 4.94e-2
|
||||
-gamma 5.0 -0.04
|
||||
-Vm 5.36 10.69 33.566 -15.03 4.2582 25 0.341 153.8 1.089e-2 0.9224 # with Na2SO4 & better calculation of sulfates' solubilities in NaCl
|
||||
-viscosity -0.5 0.521 4.2e-4 9.78e-3 1.24e-2 2.5 -4.94e-2
|
||||
-dw 1.07e-9 -77.4 10.14 0.5 0.5549
|
||||
NO3- = NO3-
|
||||
-gamma 3 0
|
||||
-Vm 6.32 6.78 0 -3.06 0.346 0 0.93 0 -0.012 1
|
||||
-viscosity 8.37e-2 -0.458 1.54e-2 0.34 1.79e-2 5.02e-2 0.7381
|
||||
-dw 1.9e-9 104 1.11
|
||||
# AmmH+ = AmmH+
|
||||
# -gamma 2.50
|
||||
# -Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
# -viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
# -dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
#AmmH+ = AmmH+
|
||||
# -gamma 2.5 0
|
||||
# -Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
# -viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
# -dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
H3BO3 = H3BO3
|
||||
-Vm 7.0643 8.8547 3.5844 -3.1451 -0.2 # supcrt
|
||||
-dw 1.1e-9
|
||||
@ -170,7 +170,7 @@ F- = F-
|
||||
-viscosity 0 2.85e-2 1.35e-2 6.11e-2 4.38e-3 1.384 0.586
|
||||
-dw 1.46e-9 -36 4.352
|
||||
Br- = Br-
|
||||
-gamma 3 0
|
||||
-gamma 3 0.045
|
||||
-Vm 6.72 2.85 4.21 -3.14 1.38 0 -9.56e-2 7.08 -1.56e-3 1
|
||||
-viscosity -6.98e-2 -0.141 1.78e-2 0.159 7.76e-3 6.25e-2 0.859
|
||||
-dw 2.09e-9 208 3.5 0 0.5737
|
||||
@ -206,14 +206,14 @@ H2Sg = H2Sg # H2S
|
||||
-dw 2.1e-9
|
||||
# aqueous species
|
||||
H2O = OH- + H+
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-gamma 3.5 0
|
||||
-analytic 293.29227 0.1360833 -10576.913 -123.73158 0 -6.996455e-5
|
||||
-Vm -9.66 28.5 80 -22.9 1.89 0 1.09 0 0 1
|
||||
-viscosity -2.26e-2 0.106 2.184e-2 -3.2e-3 0 0.4082 -1.634 # < 5 M Li,Na,KOH
|
||||
-dw 5.27e-9 478 0.8695
|
||||
2 H2O = O2 + 4 H+ + 4 e-
|
||||
-log_k -86.08
|
||||
-delta_h 134.79 kcal
|
||||
-log_k -86.06; -delta_h 138.43 kcal
|
||||
-analytic -1e3 -0.322 -5897.7 416.82 0 -1.88e-5
|
||||
-Vm 5.7889 6.3536 3.2528 -3.0417 -0.3943 # supcrt
|
||||
-dw 2.35e-9
|
||||
2 H+ + 2 e- = H2
|
||||
@ -300,11 +300,11 @@ NO3- + 2 H+ + 2 e- = NO2- + H2O
|
||||
-Vm 7 # Pray et al., 1952, IEC 44 1146
|
||||
-dw 1.96e-9 -90 # Cadogan et al. 2014, JCED 59, 519
|
||||
NO3- + 10 H+ + 8 e- = NH4+ + 3 H2O
|
||||
-log_k 119.077
|
||||
-delta_h -187.055 kcal
|
||||
-log_k 119.077
|
||||
-delta_h -187.055 kcal
|
||||
-gamma 2.5 0
|
||||
-Vm 5.35 2.345 3.72 -2.88 1.55 2.5 -4.54 217 2.344e-2 0.569
|
||||
-viscosity 9.9e-2 -0.159 1.36e-2 6.51e-3 3.21e-2 0.972
|
||||
-viscosity 6.94e-2 -0.141 2.04e-2 9.4e-3 3.73e-2 0.898
|
||||
-dw 1.98e-9 203 1.47 2.644 6.81e-2
|
||||
#AmmH+ = Amm + H+
|
||||
NH4+ = NH3 + H+
|
||||
@ -312,15 +312,15 @@ NH4+ = NH3 + H+
|
||||
-delta_h 12.48 kcal
|
||||
-analytic 0.6322 -0.001225 -2835.76
|
||||
-Vm 6.69 2.8 3.58 -2.88 1.43
|
||||
-viscosity 0.08 0 0 7.82e-3 -0.134 -0.986
|
||||
-viscosity 0 -2.24e-2 0.101 8.66e-3 2.86e-2 -0.143 -0.769
|
||||
-dw 2.28e-9
|
||||
#AmmH+ + SO4-2 = AmmHSO4-
|
||||
NH4+ + SO4-2 = NH4SO4-
|
||||
-gamma 2.08 -0.0416
|
||||
-log_k 1.211; -delta_h 8.56 kJ
|
||||
-Vm -8.78 0 -36.09 0 -8.60 0 87.62 0 -0.3123 0.1172
|
||||
-viscosity 0 0.116 -8.6e-3 0.159 -9.3e-3 0.522 0.627
|
||||
-dw 0.9e-9 100 2.1 2 0
|
||||
-gamma 3.64 -4.75e-2
|
||||
-log_k 1.276; -delta_h -3.24 kcal
|
||||
-Vm 6.64 8.5 -5.84 -3.1 2 0 19.24 0 -7.84e-2 0.289
|
||||
-viscosity 0.267 -0.207 9.75e-2 6.18e-2 1.99e-2 1.166 0.61
|
||||
-dw 1.56e-9 498 25 0.5 0.684
|
||||
H3BO3 = H2BO3- + H+
|
||||
-log_k -9.24
|
||||
-delta_h 3.224 kcal
|
||||
@ -372,13 +372,14 @@ Ca+2 + CO3-2 + H+ = CaHCO3+
|
||||
-log_k 10.91; -delta_h 4.38 kcal
|
||||
-analytic -6.009 3.377e-2 2044
|
||||
-gamma 6 0
|
||||
-Vm 30.19 .01 5.75 -2.78 .308 5.4
|
||||
-Vm 3.19 .01 5.75 -2.78 .308 5.4
|
||||
-dw 5.06e-10
|
||||
Ca+2 + SO4-2 = CaSO4
|
||||
-log_k 2.25
|
||||
-delta_h 1.325 kcal
|
||||
-dw 4.71e-10
|
||||
-Vm 2.791 -.9666 6.13 -2.739 -.001 # supcrt
|
||||
-gamma 0 4.45e-2
|
||||
-log_k 2.14; -delta_h 24.4
|
||||
-analytical_expression 1.478 8.29e-3 -538.2
|
||||
-vm 2.7 2 2 -3.7
|
||||
-dw 4.71e-9
|
||||
Ca+2 + HSO4- = CaHSO4+
|
||||
-log_k 1.08
|
||||
Ca+2 + PO4-3 = CaPO4-
|
||||
@ -415,19 +416,19 @@ Mg+2 + H+ + CO3-2 = MgHCO3+
|
||||
-Vm 2.7171 -1.1469 6.2008 -2.7316 .5985 4 # supcrt
|
||||
-dw 4.78e-10
|
||||
Mg+2 + SO4-2 = MgSO4
|
||||
-gamma 0 0.2
|
||||
-log_k 2.42; -delta_h 19 kJ
|
||||
-analytical_expression 0 9.64e-3 -136 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 8.65 -10.21 29.58 -18.6 1.061
|
||||
-viscosity 0.318 -5.4e-4 -3.42e-2 0.708 3.7e-3 0.696
|
||||
-gamma 0 0.20
|
||||
-log_k 2.42; -delta_h 19.0
|
||||
-analytical_expression 0 9.64e-3 -136 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 11.92 -27.758 29.752 -10.302 -0.1
|
||||
-viscosity -0.799 1 2.2e-4 8.53e-2 -4.6e-3 1.35 -0.796
|
||||
-dw 4.45e-10
|
||||
SO4-2 + MgSO4 = Mg(SO4)2-2
|
||||
-gamma 7 0.047
|
||||
-log_k 0.52; -delta_h -13.6 kJ
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # mean salt gamma from Pitzer.dat and epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm -8.14 -62.2 -15.96 3.29 -3.01 0 150 0 0.153 3.79e-2
|
||||
-viscosity -0.169 5e-4 -5.69e-2 0.11 2.03e-3 2.027 -1e-3
|
||||
-dw 0.845e-9 -200 8 0 0.965
|
||||
-log_k 0.52; -delta_h -13.6
|
||||
-analytical_expression 0 -1.51e-3 0 0 8.604e4 # epsomite/hexahydrite/kieserite solubilities, 0 - 200 oC
|
||||
-Vm 4.248 9.83 -7 -2.672 2 3.5 5 100 0.3359 9.518e-2
|
||||
-viscosity 0.324 6.84e-2 -2.09e-2 0.104 6.19e-3 1.983 1e-3
|
||||
-dw 1.11e-9 -500 3.5 0.5 0.731
|
||||
Mg+2 + PO4-3 = MgPO4-
|
||||
-log_k 6.589
|
||||
-delta_h 3.1 kcal
|
||||
@ -453,12 +454,19 @@ Na+ + HCO3- = NaHCO3
|
||||
-viscosity -4e-2 -2.717 1.67e-5
|
||||
-dw 6.73e-10
|
||||
Na+ + SO4-2 = NaSO4-
|
||||
-gamma 5.5 0
|
||||
-log_k 0.6; -delta_h -14.4 kJ
|
||||
-analytical_expression 255.903 0.10057 0 -1.11138e2 -8.5983e5 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 1.99 -10.78 21.88 -12.7 1.601 5 32.38 501 1.565e-2 0.2325
|
||||
-viscosity 0.2 -5.93e-2 -4e-4 8.46e-3 1.78e-3 2.308 -0.208
|
||||
-dw 1.13e-9 -23 8.5 0.392 0.521
|
||||
-gamma 3.5 0.1072
|
||||
-log_k 0.94; -delta_h 8.23
|
||||
-analytical_expression -0.304 4.51e-3 -28.9 # mirabilite/thenardite solubilities, 0 - 200 oC
|
||||
-Vm 8.523 -4.685 -8.61 0.106 2.7 25 3.634 13.4 3.738e-2 0.5476
|
||||
-viscosity -1 0.33 0.128 1.143 7.7e-4 1.9e-2 -0.387
|
||||
-dw 4e-10 -200 3.5 0.5 0.5
|
||||
2 Na+ + SO4-2 = Na2SO4
|
||||
-gamma 0 8.85e-2
|
||||
-log_k -2.37; -delta_h 82
|
||||
-analytical_expression 15.432 -5.75e-3 -4796 # sulfates solubilities in NaCl
|
||||
-Vm 9.405 -15.5 25 8.4 0.25
|
||||
-viscosity -0.5 0.485 -1e-3 0.147 0 0.947 -0.175
|
||||
-dw 0.8e-9
|
||||
Na+ + HPO4-2 = NaHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -473,11 +481,11 @@ K+ + HCO3- = KHCO3
|
||||
-viscosity 0.7 -1.289 9e-2
|
||||
K+ + SO4-2 = KSO4-
|
||||
-gamma 5.4 0.19
|
||||
-log_k 0.6; -delta_h -10.4 kJ
|
||||
-log_k 1.18; -delta_h 3
|
||||
-analytical_expression -3.0246 9.986e-3 0 0 1.093e5 # arcanite solubility, 0 - 200 oC
|
||||
-Vm 13.48 -18.03 61.74 -19.6 2.046 5.4 -17.32 0 0.1522 1.919
|
||||
-viscosity -1 1.06 1e-4 -0.464 3.78e-2 0.539 -0.69
|
||||
-dw 0.9e-9 63 8.48 0 1.8
|
||||
-Vm 3.443 5.04 13 -3.324 2.447 0 20 0 7.77e-3 0.3497
|
||||
-viscosity 0.107 0.19 2.23e-2 -0.148 -4.91e-2 0.537 0.195
|
||||
-dw 1.22e-9 100 25 0.5 2.5
|
||||
K+ + HPO4-2 = KHPO4-
|
||||
-log_k 0.29
|
||||
-gamma 5.4 0
|
||||
@ -497,9 +505,8 @@ Fe+2 + CO3-2 = FeCO3
|
||||
Fe+2 + HCO3- = FeHCO3+
|
||||
-log_k 2
|
||||
Fe+2 + SO4-2 = FeSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.23 kcal
|
||||
-Vm -13 0 123
|
||||
-log_k 2.25; -delta_h 3.23 kcal
|
||||
-Vm 5.8 6.5 3.7 -3 -0.09
|
||||
Fe+2 + HSO4- = FeHSO4+
|
||||
-log_k 1.08
|
||||
Fe+2 + 2 HS- = Fe(HS)2
|
||||
@ -601,9 +608,9 @@ Mn+2 + HCO3- = MnHCO3+
|
||||
-log_k 1.95
|
||||
-gamma 5 0
|
||||
Mn+2 + SO4-2 = MnSO4
|
||||
-log_k 2.25
|
||||
-delta_h 3.37 kcal
|
||||
-Vm -1.31 -1.83 62.3 -2.7
|
||||
-gamma 0 -0.098
|
||||
-log_k 1.408; -delta_h 21.55
|
||||
-Vm 1.88 6.5 10 -3 0.1
|
||||
Mn+2 + 2 NO3- = Mn(NO3)2
|
||||
-log_k 0.6
|
||||
-delta_h -0.396 kcal
|
||||
@ -672,7 +679,7 @@ H4SiO4 = H3SiO4- + H+
|
||||
-delta_h 6.12 kcal
|
||||
-analytic -302.3724 -0.050698 15669.69 108.18466 -1119669
|
||||
-gamma 4 0
|
||||
-Vm 7.94 1.0881 5.3224 -2.824 1.4767 # supcrt H2O in a1
|
||||
-Vm 7.94 1.0881 5.3224 -2.824 1.4767 # supcrt + H2O in a1
|
||||
H4SiO4 = H2SiO4-2 + 2 H+
|
||||
-log_k -23
|
||||
-delta_h 17.6 kcal
|
||||
@ -696,7 +703,8 @@ Ba+2 + HCO3- = BaHCO3+
|
||||
-delta_h 5.56 kcal
|
||||
-analytic -3.0938 0.013669
|
||||
Ba+2 + SO4-2 = BaSO4
|
||||
-log_k 2.7
|
||||
-log_k 3.457; -delta_h 26.15
|
||||
-vm -6.25 24.66 -4.38 10.97 0.5
|
||||
Sr+2 + H2O = SrOH+ + H+
|
||||
-log_k -13.29
|
||||
-gamma 5 0
|
||||
@ -815,12 +823,13 @@ Zn+2 + 2 CO3-2 = Zn(CO3)2-2
|
||||
Zn+2 + HCO3- = ZnHCO3+
|
||||
-log_k 2.1
|
||||
Zn+2 + SO4-2 = ZnSO4
|
||||
-log_k 2.37
|
||||
-delta_h 1.36 kcal
|
||||
-Vm 2.51 0 18.8
|
||||
-gamma 0 0.1
|
||||
-log_k 2.26; -delta_h 16.15
|
||||
-Vm 0.409 6.5 2 -3 0
|
||||
Zn+2 + 2 SO4-2 = Zn(SO4)2-2
|
||||
-log_k 3.28
|
||||
-Vm 10.9 0 -98.7 0 0 0 24 0 -0.236 1
|
||||
-gamma 0.59 0.1
|
||||
-log_k 1.15; -delta_h 17.52
|
||||
-Vm 9.21 10.6 9 -3.2 3.8 25 0 100 -1e-3 0.256
|
||||
Zn+2 + Br- = ZnBr+
|
||||
-log_k -0.58
|
||||
Zn+2 + 2 Br- = ZnBr2
|
||||
@ -866,12 +875,13 @@ Cd+2 + 2 CO3-2 = Cd(CO3)2-2
|
||||
Cd+2 + HCO3- = CdHCO3+
|
||||
-log_k 1.5
|
||||
Cd+2 + SO4-2 = CdSO4
|
||||
-log_k 2.46
|
||||
-delta_h 1.08 kcal
|
||||
-Vm 10.4 0 57.9
|
||||
-gamma 0 0.1
|
||||
-log_k 1.016; -delta_h 6.84
|
||||
-Vm 2.11 6.5 10 -3 0.1
|
||||
Cd+2 + 2 SO4-2 = Cd(SO4)2-2
|
||||
-log_k 3.5
|
||||
-Vm -6.29 0 -93 0 9.5 7 0 0 0 1
|
||||
-gamma 5.201 -0.1
|
||||
-log_k 2.688; -delta_h 0.19
|
||||
-Vm 9.14 10.6 -3.06 -3.2 3.8 7.44 1.27 0.32 -1e-3 2.5
|
||||
Cd+2 + Br- = CdBr+
|
||||
-log_k 2.17
|
||||
-delta_h -0.81 kcal
|
||||
@ -991,29 +1001,24 @@ Witherite
|
||||
-Vm 46
|
||||
Gypsum
|
||||
CaSO4:2H2O = Ca+2 + SO4-2 + 2 H2O
|
||||
-log_k -4.58
|
||||
-delta_h -0.109 kcal
|
||||
-analytic 68.2401 0 -3221.51 -25.0627
|
||||
-analytical_expression 93.7 5.99E-3 -4e3 -35.019 # better fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9 # 172.18 / 2.33 (Vm H2O = 13.9 cm3/mol)
|
||||
-log_k -4.55; -delta_h -6.70
|
||||
-analytical_expression 72.244 -1.474e-2 -4040 -23.7823 # fits the appendix data of Appelo, 2015, AG 55, 62
|
||||
-Vm 73.9
|
||||
Anhydrite
|
||||
CaSO4 = Ca+2 + SO4-2
|
||||
-log_k -4.36
|
||||
-delta_h -1.71 kcal
|
||||
-analytic 84.9 0 -3135.12 -31.79 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
log_k -4.25; -delta_h -22.4
|
||||
-analytical_expression 5.725 -2.478e-2 -790.4 # 50 - 160oC, 1 - 1e3 atm, anhydrite dissolution, Blount and Dickson, 1973, Am. Mineral. 58, 323
|
||||
-Vm 46.1 # 136.14 / 2.95
|
||||
Celestite
|
||||
SrSO4 = Sr+2 + SO4-2
|
||||
-log_k -6.63
|
||||
-delta_h -4.037 kcal
|
||||
# -analytic -14805.9622 -2.4660924 756968.533 5436.3588 -40553604.0
|
||||
-analytic -7.14 6.11e-3 75 0 0 -1.79e-5 # Howell et al., 1992, JCED 37, 464
|
||||
-Vm 46.4
|
||||
Barite
|
||||
BaSO4 = Ba+2 + SO4-2
|
||||
-log_k -9.97
|
||||
-delta_h 6.35 kcal
|
||||
-analytical_expression -282.43 -8.972e-2 5822 113.08 # Blount 1977; Templeton, 1960
|
||||
-log_k -9.89; -delta_h 11.82
|
||||
-analytical_expression -34.438 -3.316e-2 -1500 15.9485 # Blount 1977; Templeton, 1960
|
||||
-Vm 52.9
|
||||
Arcanite
|
||||
K2SO4 = SO4-2 + 2 K+
|
||||
@ -1023,12 +1028,14 @@ Arcanite
|
||||
-Vm 65.5
|
||||
Mirabilite
|
||||
Na2SO4:10H2O = SO4-2 + 2 Na+ + 10 H2O
|
||||
-analytical_expression -301.9326 -0.16232 0 141.078 # ref. 3
|
||||
-log_k -0.706; -delta_h 124
|
||||
-analytical_expression -53.037 0.1242 4562 # ref. 3
|
||||
Vm 216
|
||||
Thenardite
|
||||
Na2SO4 = 2 Na+ + SO4-2
|
||||
-analytical_expression 57.185 8.6024e-2 0 -30.8341 0 -7.6905e-5 # ref. 3
|
||||
-Vm 52.9
|
||||
-log_k 0.65; -delta_h -23.1
|
||||
-analytical_expression 159.849 1.699e-2 -5000 -59.6073 # ref. 3
|
||||
Vm 52.9
|
||||
Epsomite
|
||||
MgSO4:7H2O = Mg+2 + SO4-2 + 7 H2O
|
||||
log_k -1.74; -delta_h 10.57 kJ
|
||||
@ -1240,7 +1247,7 @@ CH4(g)
|
||||
#Amm(g)
|
||||
# Amm = Amm
|
||||
NH3(g)
|
||||
NH3 = NH3
|
||||
NH3 = NH3
|
||||
-log_k 1.7966
|
||||
-analytic -18.758 3.367e-4 2.5113e3 4.8619 39.192
|
||||
-T_c 405.6; -P_c 111.3; -Omega 0.25
|
||||
@ -3133,17 +3140,17 @@ Wollastonite -6.97 700 56 0.4 0 0
|
||||
# Av is the Debye-H<>ckel limiting slope (DH_AV in PHREEQC basic).
|
||||
# a0 is the ion-size parameter in the extended Debye-H<>ckel equation:
|
||||
# f(I^0.5) = I^0.5 / (1 + a0 * DH_B * I^0.5),
|
||||
# a0 = -gamma x for cations, = 0 for anions.
|
||||
# For details, consult ref. 1.
|
||||
# a0 = -gamma x for cations, = 0 for anions (or fitted).
|
||||
# For details, consult ref. 1 and subroutine calc_vm(tc, pa) in prep.cpp.
|
||||
# =============================================================================================
|
||||
# The viscosity is calculated with a (modified) Jones-Dole equation:
|
||||
# viscos / viscos_0 = 1 + A * Sum(0.5 z_i m_i) + fan * Sum(B_i m_i + D_i m_i n_i)
|
||||
# Parameters are for calculating the B and D terms:
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# -viscosity 9.35e-2 -8.31e-2 2.487e-2 4.49e-4 2.01e-2 1.570 0
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# z_i is absolute charge number, m_i is molality of i
|
||||
# B_i = b0 + b1 exp(-b2 * tc)
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions and neutral species
|
||||
# D_i = d1 * exp(-d2 tc)
|
||||
# n_i = (I^d3 * (1 + fI) + ((z_i^2 + z_i) / 2 <20> m_i)^d3) / (2 + fI), fI is an ionic strength term.
|
||||
# For details, consult ref. 4.
|
||||
|
||||
@ -1,8 +1,4 @@
|
||||
# File 1 = C:\GitPrograms\phreeqc3-1\database\pitzer.dat, 22/05/2024 19:46, 1033 lines, 38088 bytes, md5=d70476773ed110a269ebbcaf334f1133
|
||||
# Created 22 May 2024 19:49:25
|
||||
# C:\3rdParty\lsp\lsp.exe -f2 -k=asis -ts pitzer.dat
|
||||
|
||||
# Pitzer.DAT for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution, using
|
||||
# pitzer.dat for calculating temperature and pressure dependence of reactions, and the specific conductance and viscosity of the solution, using
|
||||
# diffusion coefficients of species, molal volumina of aqueous species and minerals, and critical temperatures and pressures of gases used in Peng-Robinson's EOS.
|
||||
# Details are given at the end of this file.
|
||||
|
||||
@ -73,13 +69,13 @@ Mg+2 = Mg+2
|
||||
-viscosity 0.426 0 0 1.66e-3 4.32e-3 2.461
|
||||
-dw 0.705e-9 -4 5.569 0 1.047
|
||||
Ca+2 = Ca+2
|
||||
-Vm -0.3456 -7.252 6.149 -2.479 1.239 5 1.6 -57.1 -6.12e-3 1 # The apparent volume parameters are defined in ref. 1 & 2
|
||||
-Vm -0.3456 -7.252 6.149 -2.479 1.239 5 1.6 -57.1 -6.12e-3 1
|
||||
-viscosity 0.359 -0.158 4.2e-2 1.5e-3 8.04e-3 2.3 # ref. 4, CaCl2 < 6 M
|
||||
-dw 0.792e-9 34 5.411 0 1.046
|
||||
Sr+2 = Sr+2
|
||||
-Vm -1.57e-2 -10.15 10.18 -2.36 0.86 5.26 0.859 -27 -4.1e-3 1.97
|
||||
-viscosity 0.472 -0.252 5.51e-3 3.67e-3 0 1.876
|
||||
-dw 0.794e-9 149 0.805 1.961 1e-9 0.7876
|
||||
-Vm -5.6e-2 -10.15 9.90 -2.36 0.807 5.26 2.72 -82.7 -1.37e-2 0.956
|
||||
-viscosity 0.493 -0.255 2.3e-3 4.2e-3 -3.8e-3 1.762
|
||||
-dw 0.794e-9 18 0.681 2.069 0.965 0.271
|
||||
Ba+2 = Ba+2
|
||||
-Vm 2.063 -10.06 1.9534 -2.36 0.4218 5 1.58 -12.03 -8.35e-3 1
|
||||
-viscosity 0.338 -0.227 1.39e-2 3.07e-2 0 0.768
|
||||
@ -217,11 +213,11 @@ Anthophyllite
|
||||
log_k 66.8
|
||||
-delta_H -483 kJ/mol
|
||||
Vm 269
|
||||
Antigorite
|
||||
Mg48Si34O85(OH)62 + 96 H+ = 34 H4SiO4 + 48 Mg+2 + 11 H2O # llnl.dat
|
||||
log_k 477.19
|
||||
-delta_H -3364 kJ/mol
|
||||
Vm 1745
|
||||
# Antigorite
|
||||
# Mg48Si34O85(OH)62 + 96 H+ = 34 H4SiO4 + 48 Mg+2 + 11 H2O # llnl.dat
|
||||
# log_k 477.19 # seawater is impossibly supersaturated
|
||||
# -delta_H -3364 kJ/mol
|
||||
# Vm 1745
|
||||
Aragonite
|
||||
CaCO3 = CO3-2 + Ca+2
|
||||
log_k -8.336
|
||||
@ -1030,7 +1026,7 @@ END
|
||||
# # b0 b1 b2 d1 d2 d3 tan
|
||||
# z_i is absolute charge number, m_i is molality of i
|
||||
# B_i = b0 + b1 exp(-b2 * tc)
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions
|
||||
# fan = (2 - tan V_i / V_Cl-), corrects for the volume of anions and neutral species
|
||||
# D_i = d1 * exp(-d2 tc)
|
||||
# n_i = (I^d3 * (1 + fI) + ((z_i^2 + z_i) / 2 <20> m_i)^d3) / (2 + fI), fI is an ionic strength term.
|
||||
# For details, consult ref. 5.
|
||||
|
||||
269
database/sit.dat
269
database/sit.dat
@ -6,153 +6,153 @@ SOLUTION_SPECIES
|
||||
# Name : ThermoChimie project
|
||||
# Database date: 22/08/2023 0:00:00
|
||||
# Generated by XCheck Tool v5.2.0
|
||||
# Comment: tidied with lsp.exe from https://phreeplot.org/lsp/lsp.html
|
||||
# Comment: tidied with lsp.exe from https://phreeplot.org/lsp/lsp.html
|
||||
# Redox states modified by David Parkhurst May 18, 2024
|
||||
# GFW of S(6) and Si modified by David Parkhurst May 18, 2024
|
||||
SOLUTION_MASTER_SPECIES
|
||||
#element species alk gfw_formula element_gfw
|
||||
E e- 1 0 0
|
||||
# DLP: Set Alkalinity to 1 to account for non-master species with e- in equations
|
||||
Alkalinity CO3-2 1 Ca0.5(CO3)0.5 50.0436
|
||||
Adipate Adipate-2 1 Adipate 144.0700
|
||||
Acetate Acetate- 1 Acetate 59.0100
|
||||
Ag Ag+ -2 Ag 107.8682
|
||||
Al Al+3 0 Al 26.9815
|
||||
Am Am+3 0 Am 243.0000
|
||||
Am(+3) Am+3 0 Am 243.0000
|
||||
Am(+2) Am+2 0 Am 243.0000
|
||||
Am(+4) Am+4 0 Am 243.0000
|
||||
Am(+5) AmO2+ 0 Am 243.0000
|
||||
Am(+6) AmO2+2 0 Am 243.0000
|
||||
As AsO4-3 2 As 74.9216
|
||||
As(+5) AsO4-3 2 As 74.9216
|
||||
As(+3) H3(AsO3) 0 As 74.9216
|
||||
B B(OH)4- 1 B 10.8110
|
||||
Ba Ba+2 0 Ba 137.3270
|
||||
Be Be+2 0 Be 9.0122
|
||||
Br Br- 0 Br 79.9040
|
||||
C CO3-2 2 C 12.0110
|
||||
#element species alk gfw_formula element_gfw
|
||||
E e- 1 0 0
|
||||
# DLP: Set Alkalinity to 1 to account for non-master species with e- in equations
|
||||
Alkalinity CO3-2 1 Ca0.5(CO3)0.5 50.0436
|
||||
Adipate Adipate-2 1 Adipate 144.0700
|
||||
Acetate Acetate- 1 Acetate 59.0100
|
||||
Ag Ag+ -2 Ag 107.8682
|
||||
Al Al+3 0 Al 26.9815
|
||||
Am Am+3 0 Am 243.0000
|
||||
Am(+3) Am+3 0 Am 243.0000
|
||||
Am(+2) Am+2 0 Am 243.0000
|
||||
Am(+4) Am+4 0 Am 243.0000
|
||||
Am(+5) AmO2+ 0 Am 243.0000
|
||||
Am(+6) AmO2+2 0 Am 243.0000
|
||||
As AsO4-3 2 As 74.9216
|
||||
As(+5) AsO4-3 2 As 74.9216
|
||||
As(+3) H3(AsO3) 0 As 74.9216
|
||||
B B(OH)4- 1 B 10.8110
|
||||
Ba Ba+2 0 Ba 137.3270
|
||||
Be Be+2 0 Be 9.0122
|
||||
Br Br- 0 Br 79.9040
|
||||
C CO3-2 2 C 12.0110
|
||||
C(2) CO 0 C # DLP
|
||||
C(+4) CO3-2 2 C 12.0110
|
||||
C(-4) CH4 0 C 12.0110
|
||||
Ca Ca+2 0 Ca 40.0780
|
||||
Cd Cd+2 -1 Cd 112.4110
|
||||
Cit Cit-3 1 Cit 189.1013
|
||||
Cl Cl- 0 Cl 35.4527
|
||||
C(+4) CO3-2 2 C 12.0110
|
||||
C(-4) CH4 0 C 12.0110
|
||||
Ca Ca+2 0 Ca 40.0780
|
||||
Cd Cd+2 -1 Cd 112.4110
|
||||
Cit Cit-3 1 Cit 189.1013
|
||||
Cl Cl- 0 Cl 35.4527
|
||||
Cl(-1) Cl- 0 Cl # DLP
|
||||
Cl(0) Cl2 0 Cl # DLP
|
||||
Cl(7) ClO4- 0 Cl # DLP
|
||||
Cm Cm+3 0 Cm 247.0000
|
||||
Co Co+2 0 Co 58.9332
|
||||
Cr CrO4-2 1 Cr 51.9961
|
||||
Cr(+6) CrO4-2 1 Cr 51.9961
|
||||
Cr(+2) Cr+2 -1 Cr 51.9961
|
||||
Cr(+3) Cr+3 2 Cr 51.9961
|
||||
Cs Cs+ 0 Cs 132.9054
|
||||
Cu Cu+2 0 Cu 63.5460
|
||||
Cu(+2) Cu+2 0 Cu 63.5460
|
||||
Cu(+1) Cu+ -2 Cu 63.5460
|
||||
Edta Edta-4 2 Edta 288.2134
|
||||
Eu Eu+3 0 Eu 151.9650
|
||||
Eu(+3) Eu+3 0 Eu 151.9650
|
||||
Eu(+2) Eu+2 0 Eu 151.9650
|
||||
F F- 0 F 18.9984
|
||||
Fe Fe+2 0 Fe 55.8470
|
||||
Fe(+2) Fe+2 0 Fe 55.8470
|
||||
Fe(+3) Fe+3 -2 Fe 55.8470
|
||||
Glu HGlu- 0 Glu 194.1380
|
||||
H H+ -1 H 1.0079
|
||||
H(+1) H+ -1 H 1.0079
|
||||
H(0) H2 0 H 1.0079
|
||||
Hf Hf+4 -4 Hf 178.4900
|
||||
Hg Hg+2 -2 Hg 200.5900
|
||||
Hg(+2) Hg+2 -2 Hg 200.5900
|
||||
Hg(+1) Hg2+2 0 Hg 200.5900
|
||||
Ho Ho+3 0 Ho 164.9303
|
||||
I I- 0 I 126.9045
|
||||
I(-1) I- 0 I 126.9045
|
||||
I(1) IO- 0 I # DLP
|
||||
I(+5) IO3- 0 I 126.9045
|
||||
Cm Cm+3 0 Cm 247.0000
|
||||
Co Co+2 0 Co 58.9332
|
||||
Cr CrO4-2 1 Cr 51.9961
|
||||
Cr(+6) CrO4-2 1 Cr 51.9961
|
||||
Cr(+2) Cr+2 -1 Cr 51.9961
|
||||
Cr(+3) Cr+3 2 Cr 51.9961
|
||||
Cs Cs+ 0 Cs 132.9054
|
||||
Cu Cu+2 0 Cu 63.5460
|
||||
Cu(+2) Cu+2 0 Cu 63.5460
|
||||
Cu(+1) Cu+ -2 Cu 63.5460
|
||||
Edta Edta-4 2 Edta 288.2134
|
||||
Eu Eu+3 0 Eu 151.9650
|
||||
Eu(+3) Eu+3 0 Eu 151.9650
|
||||
Eu(+2) Eu+2 0 Eu 151.9650
|
||||
F F- 0 F 18.9984
|
||||
Fe Fe+2 0 Fe 55.8470
|
||||
Fe(+2) Fe+2 0 Fe 55.8470
|
||||
Fe(+3) Fe+3 -2 Fe 55.8470
|
||||
Glu HGlu- 0 Glu 194.1380
|
||||
H H+ -1 H 1.0079
|
||||
H(+1) H+ -1 H 1.0079
|
||||
H(0) H2 0 H 1.0079
|
||||
Hf Hf+4 -4 Hf 178.4900
|
||||
Hg Hg+2 -2 Hg 200.5900
|
||||
Hg(+2) Hg+2 -2 Hg 200.5900
|
||||
Hg(+1) Hg2+2 0 Hg 200.5900
|
||||
Ho Ho+3 0 Ho 164.9303
|
||||
I I- 0 I 126.9045
|
||||
I(-1) I- 0 I 126.9045
|
||||
I(1) IO- 0 I # DLP
|
||||
I(+5) IO3- 0 I 126.9045
|
||||
I(7) IO4- 0 I # DLP
|
||||
Isa HIsa- 0 Isa 178.1421
|
||||
K K+ 0 K 39.0983
|
||||
Li Li+ 0 Li 6.9410
|
||||
Malonate Malonate-2 1 Malonate 102.0464
|
||||
Mg Mg+2 0 Mg 24.3050
|
||||
Mn Mn+2 0 Mn 54.9380
|
||||
Isa HIsa- 0 Isa 178.1421
|
||||
K K+ 0 K 39.0983
|
||||
Li Li+ 0 Li 6.9410
|
||||
Malonate Malonate-2 1 Malonate 102.0464
|
||||
Mg Mg+2 0 Mg 24.3050
|
||||
Mn Mn+2 0 Mn 54.9380
|
||||
Mn(+2) Mn+2 0 Mn # DLP
|
||||
Mn(+3) Mn+3 0 Mn # DLP
|
||||
Mn(+5) MnO4-3 0 Mn # DLP
|
||||
Mn(+6) MnO4-2 0 Mn # DLP
|
||||
Mn(+7) MnO4- 0 Mn # DLP
|
||||
Mo MoO4-2 0 Mo 95.9400
|
||||
Mn(+7) MnO4- 0 Mn # DLP
|
||||
Mo MoO4-2 0 Mo 95.9400
|
||||
Mo(6) MoO4-2 0 Mo # DLP
|
||||
Mo(3) Mo+3 0 Mo # DLP
|
||||
N NO3- 0 N 14.0067
|
||||
N(+5) NO3- 0 N 14.0067
|
||||
N(-3) NH3 1 N 14.0067
|
||||
Na Na+ 0 Na 22.9898
|
||||
Nb Nb(OH)6- 1 Nb 92.9064
|
||||
Ni Ni+2 0 Ni 58.6900
|
||||
Np NpO2+2 0 Np 237.0480
|
||||
Np(+6) NpO2+2 0 Np 237.0480
|
||||
Np(+3) Np+3 0 Np 237.0480
|
||||
Np(+4) Np+4 -3 Np 237.0480
|
||||
Np(+5) NpO2+ 0 Np 237.0480
|
||||
Nta Nta-3 1 Nta 188.1165
|
||||
O H2O 0 O 15.9994
|
||||
O(-2) H2O 0 O 15.9994
|
||||
O(0) O2 0 O 15.9994
|
||||
Ox Ox-2 0 Ox 88.0196
|
||||
P H2(PO4)- 0 P 30.9738
|
||||
Pa Pa+4 -3 Pa 231.0359
|
||||
Pa(+4) Pa+4 -3 Pa 231.0359
|
||||
Pa(+5) PaO2+ 0 Pa 231.0359
|
||||
Pb Pb+2 -1 Pb 207.2000
|
||||
Pd Pd+2 -4 Pd 106.4200
|
||||
Phthalat Phthalat-2 2 Phthalat 164.0840
|
||||
Pu PuO2+2 0 Pu 244.0000
|
||||
Pu(+6) PuO2+2 0 Pu 244.0000
|
||||
Pu(+3) Pu+3 0 Pu 244.0000
|
||||
Pu(+4) Pu+4 -3 Pu 244.0000
|
||||
Pu(+5) PuO2+ -1 Pu 244.0000
|
||||
Pyrophos Pyrophos-4 2 Pyrophos 173.9500
|
||||
Ra Ra+2 0 Ra 226.0250
|
||||
Rb Rb+ 0 Rb 85.4678
|
||||
S SO4-2 0 S 32.0660
|
||||
S(+6) SO4-2 0 SO4 32.0660 # DLP
|
||||
S(-2) HS- 1 S 32.0660
|
||||
S(+2) S2O3-2 0 S 32.0660
|
||||
S(+3) S2O4-2 0 S 32.0660
|
||||
S(+4) SO3-2 1 S 32.0660
|
||||
Mo(3) Mo+3 0 Mo # DLP
|
||||
N NO3- 0 N 14.0067
|
||||
N(+5) NO3- 0 N 14.0067
|
||||
N(-3) NH3 1 N 14.0067
|
||||
Na Na+ 0 Na 22.9898
|
||||
Nb Nb(OH)6- 1 Nb 92.9064
|
||||
Ni Ni+2 0 Ni 58.6900
|
||||
Np NpO2+2 0 Np 237.0480
|
||||
Np(+6) NpO2+2 0 Np 237.0480
|
||||
Np(+3) Np+3 0 Np 237.0480
|
||||
Np(+4) Np+4 -3 Np 237.0480
|
||||
Np(+5) NpO2+ 0 Np 237.0480
|
||||
Nta Nta-3 1 Nta 188.1165
|
||||
O H2O 0 O 15.9994
|
||||
O(-2) H2O 0 O 15.9994
|
||||
O(0) O2 0 O 15.9994
|
||||
Ox Ox-2 0 Ox 88.0196
|
||||
P H2(PO4)- 0 P 30.9738
|
||||
Pa Pa+4 -3 Pa 231.0359
|
||||
Pa(+4) Pa+4 -3 Pa 231.0359
|
||||
Pa(+5) PaO2+ 0 Pa 231.0359
|
||||
Pb Pb+2 -1 Pb 207.2000
|
||||
Pd Pd+2 -4 Pd 106.4200
|
||||
Phthalat Phthalat-2 2 Phthalat 164.0840
|
||||
Pu PuO2+2 0 Pu 244.0000
|
||||
Pu(+6) PuO2+2 0 Pu 244.0000
|
||||
Pu(+3) Pu+3 0 Pu 244.0000
|
||||
Pu(+4) Pu+4 -3 Pu 244.0000
|
||||
Pu(+5) PuO2+ -1 Pu 244.0000
|
||||
Pyrophos Pyrophos-4 2 Pyrophos 173.9500
|
||||
Ra Ra+2 0 Ra 226.0250
|
||||
Rb Rb+ 0 Rb 85.4678
|
||||
S SO4-2 0 S 32.0660
|
||||
S(+6) SO4-2 0 SO4 32.0660 # DLP
|
||||
S(-2) HS- 1 S 32.0660
|
||||
S(+2) S2O3-2 0 S 32.0660
|
||||
S(+3) S2O4-2 0 S 32.0660
|
||||
S(+4) SO3-2 1 S 32.0660
|
||||
S(8) HSO5- 0 S # DLP
|
||||
Sb Sb(OH)3 0 Sb 121.7600
|
||||
Sb(+3) Sb(OH)3 0 Sb 121.7600
|
||||
Sb(+5) Sb(OH)5 -6 Sb 121.7600
|
||||
Se SeO4-2 0 Se 78.9600
|
||||
Se(+6) SeO4-2 0 Se 78.9600
|
||||
Se(-2) HSe- -1 Se 78.9600
|
||||
Se(+4) SeO3-2 1 Se 78.9600
|
||||
Sb Sb(OH)3 0 Sb 121.7600
|
||||
Sb(+3) Sb(OH)3 0 Sb 121.7600
|
||||
Sb(+5) Sb(OH)5 -6 Sb 121.7600
|
||||
Se SeO4-2 0 Se 78.9600
|
||||
Se(+6) SeO4-2 0 Se 78.9600
|
||||
Se(-2) HSe- -1 Se 78.9600
|
||||
Se(+4) SeO3-2 1 Se 78.9600
|
||||
Si H4(SiO4) 0 SiO2 28.0855 # DLP
|
||||
Sm Sm+3 0 Sm 150.3600
|
||||
Sn Sn+2 -2 Sn 118.7100
|
||||
Sn(+2) Sn+2 -2 Sn 118.7100
|
||||
Sn(+4) Sn+4 -4 Sn 118.7100
|
||||
Sr Sr+2 0 Sr 87.6200
|
||||
Succinat Succinat-2 1 Succinat 116.0700
|
||||
Suberate Suberate-2 1 Suberate 172.1804
|
||||
Tc TcO(OH)2 0 Tc 98.0000
|
||||
Tc(+4) TcO(OH)2 0 Tc 98.0000
|
||||
Tc(+7) TcO4- 0 Tc 98.0000
|
||||
Tc(+6) TcO4-2 0 Tc 98.0000
|
||||
Th Th+4 0 Th 232.0381
|
||||
U UO2+2 0 U 238.0289
|
||||
U(+6) UO2+2 0 U 238.0289
|
||||
U(+3) U+3 0 U 238.0289
|
||||
U(+4) U+4 -3 U 238.0289
|
||||
U(+5) UO2+ 0 U 238.0289
|
||||
Zn Zn+2 0 Zn 65.3900
|
||||
Zr Zr+4 -4 Zr 91.2200
|
||||
Sm Sm+3 0 Sm 150.3600
|
||||
Sn Sn+2 -2 Sn 118.7100
|
||||
Sn(+2) Sn+2 -2 Sn 118.7100
|
||||
Sn(+4) Sn+4 -4 Sn 118.7100
|
||||
Sr Sr+2 0 Sr 87.6200
|
||||
Succinat Succinat-2 1 Succinat 116.0700
|
||||
Suberate Suberate-2 1 Suberate 172.1804
|
||||
Tc TcO(OH)2 0 Tc 98.0000
|
||||
Tc(+4) TcO(OH)2 0 Tc 98.0000
|
||||
Tc(+7) TcO4- 0 Tc 98.0000
|
||||
Tc(+6) TcO4-2 0 Tc 98.0000
|
||||
Th Th+4 0 Th 232.0381
|
||||
U UO2+2 0 U 238.0289
|
||||
U(+6) UO2+2 0 U 238.0289
|
||||
U(+3) U+3 0 U 238.0289
|
||||
U(+4) U+4 -3 U 238.0289
|
||||
U(+5) UO2+ 0 U 238.0289
|
||||
Zn Zn+2 0 Zn 65.3900
|
||||
Zr Zr+4 -4 Zr 91.2200
|
||||
|
||||
SIT
|
||||
-epsilon
|
||||
@ -4547,12 +4547,12 @@ H+ + S2O4-2 = HS2O4-
|
||||
delta_h 118.877 #kJ/mol
|
||||
# Enthalpy of formation: -51.463 kJ/mol 92JOH/OEL
|
||||
-analytic 26.56356E-1 00E+0 -62.09378E+2 00E+0 00E+0
|
||||
|
||||
|
||||
- 2 e- + 2 Cl- + I- = ICl2-
|
||||
# DLP: This species will be in the I(-1) and Cl(-1) mole balances
|
||||
log_k -26.8 #96FAL/REA
|
||||
-analytic -26.8E+0 00E+0 00E+0 00E+0 00E+0
|
||||
|
||||
|
||||
- 2 H+ - 2 e- + I- + H2O = IO-
|
||||
log_k -44 #96FAL/REA
|
||||
-analytic -44E+0 00E+0 00E+0 00E+0 00E+0
|
||||
@ -14345,4 +14345,3 @@ SO2 = 2 H+ + SO3-2 - H2O
|
||||
delta_h -48.42 #kJ/mol
|
||||
# Enthalpy of formation: -296.810 kJ/mol 89COX/WAG
|
||||
-analytic -17.42282E+0 00E+0 25.29153E+2 00E+0 00E+0
|
||||
|
||||
|
||||
2129
database/stimela.dat
Normal file
2129
database/stimela.dat
Normal file
File diff suppressed because it is too large
Load Diff
@ -7,72 +7,72 @@
|
||||
|
||||
SOLUTION_MASTER_SPECIES
|
||||
|
||||
Ag Ag+ 0 107.868 107.868
|
||||
Al Al+3 0 26.9815 26.9815
|
||||
Alkalinity CO3-2 1 50.05 50.05
|
||||
As H3AsO4 -1 74.9216 74.9216
|
||||
As(+3) H3AsO3 0 74.9216 74.9216
|
||||
As(+5) H3AsO4 -1 74.9216
|
||||
B H3BO3 0 10.81 10.81
|
||||
Ba Ba+2 0 137.34 137.34
|
||||
Br Br- 0 79.904 79.904
|
||||
C CO3-2 2 61.0173 12.0111
|
||||
C(+4) CO3-2 2 61.0173
|
||||
C(-4) CH4 0 16.042
|
||||
Ca Ca+2 0 40.08 40.08
|
||||
Cd Cd+2 0 112.4 112.4
|
||||
Cl Cl- 0 35.453 35.453
|
||||
Cs Cs+ 0 132.905 132.905
|
||||
Cu Cu+2 0 63.546 63.546
|
||||
Cu(+1) Cu+1 0 63.546
|
||||
Cu(+2) Cu+2 0 63.546
|
||||
E e- 1 0 0
|
||||
F F- 0 18.9984 18.9984
|
||||
Fe Fe+2 0 55.847 55.847
|
||||
Fe(+2) Fe+2 0 55.847
|
||||
Fe(+3) Fe+3 -2 55.847
|
||||
Fulvate Fulvate-2 0 650 650
|
||||
H H+ -1 1.008 1.008
|
||||
H(0) H2 0 1.008
|
||||
H(1) H+ -1 1.008
|
||||
Humate Humate-2 0 2000 2000
|
||||
I I- 0 126.9044 126.9044
|
||||
K K+ 0 39.102 39.102
|
||||
Li Li+ 0 6.939 6.939
|
||||
Mg Mg+2 0 24.312 24.312
|
||||
Mn Mn+2 0 54.938 54.938
|
||||
Mn(2) Mn+2 0 54.938
|
||||
Mn(3) Mn+3 0 54.938
|
||||
Mn(6) MnO4-2 0 54.938
|
||||
Mn(7) MnO4- 0 54.938
|
||||
N NO3- 0 14.0067 14.0067
|
||||
N(-3) NH4+ 0 14.0067
|
||||
N(0) N2 0 14.0067
|
||||
N(+3) NO2- 0 14.0067
|
||||
N(+5) NO3- 0 14.0067
|
||||
Na Na+ 0 22.9898 22.9898
|
||||
Ni Ni+2 0 58.71 58.71
|
||||
O H2O 0 16 16
|
||||
O(-2) H2O 0 18.016
|
||||
O(0) O2 0 16
|
||||
P PO4-3 2 30.9738 30.9738
|
||||
Pb Pb+2 0 207.19 207.19
|
||||
Rb Rb+ 0 85.47 85.47
|
||||
S SO4-2 0 96.0616 32.064
|
||||
S(-2) H2S 0 32.064
|
||||
S(6) SO4-2 0 96.0616
|
||||
Se SeO4-2 0 78.96 78.96
|
||||
Se(-2) HSe- 0 78.96
|
||||
Se(4) SeO3-2 0 78.96
|
||||
Se(6) SeO4-2 0 78.96
|
||||
Si H4SiO4 0 60.0843 28.0843
|
||||
Sr Sr+2 0 87.62 87.62
|
||||
Zn Zn+2 0 65.37 65.37
|
||||
U UO2+2 0 238.029 238.029
|
||||
U(3) U+3 0 238.029 238.029
|
||||
U(4) U+4 0 238.029 238.029
|
||||
U(5) UO2+ 0 238.029 238.029
|
||||
U(6) UO2+2 0 238.029 238.029
|
||||
Ag Ag+ 0 107.868 107.868
|
||||
Al Al+3 0 26.9815 26.9815
|
||||
Alkalinity CO3-2 1 50.05 50.05
|
||||
As H3AsO4 -1 74.9216 74.9216
|
||||
As(+3) H3AsO3 0 74.9216 74.9216
|
||||
As(+5) H3AsO4 -1 74.9216
|
||||
B H3BO3 0 10.81 10.81
|
||||
Ba Ba+2 0 137.34 137.34
|
||||
Br Br- 0 79.904 79.904
|
||||
C CO3-2 2 61.0173 12.0111
|
||||
C(+4) CO3-2 2 61.0173
|
||||
C(-4) CH4 0 16.042
|
||||
Ca Ca+2 0 40.08 40.08
|
||||
Cd Cd+2 0 112.4 112.4
|
||||
Cl Cl- 0 35.453 35.453
|
||||
Cs Cs+ 0 132.905 132.905
|
||||
Cu Cu+2 0 63.546 63.546
|
||||
Cu(+1) Cu+1 0 63.546
|
||||
Cu(+2) Cu+2 0 63.546
|
||||
E e- 1 0 0
|
||||
F F- 0 18.9984 18.9984
|
||||
Fe Fe+2 0 55.847 55.847
|
||||
Fe(+2) Fe+2 0 55.847
|
||||
Fe(+3) Fe+3 -2 55.847
|
||||
Fulvate Fulvate-2 0 650 650
|
||||
H H+ -1 1.008 1.008
|
||||
H(0) H2 0 1.008
|
||||
H(1) H+ -1 1.008
|
||||
Humate Humate-2 0 2000 2000
|
||||
I I- 0 126.9044 126.9044
|
||||
K K+ 0 39.102 39.102
|
||||
Li Li+ 0 6.939 6.939
|
||||
Mg Mg+2 0 24.312 24.312
|
||||
Mn Mn+2 0 54.938 54.938
|
||||
Mn(2) Mn+2 0 54.938
|
||||
Mn(3) Mn+3 0 54.938
|
||||
Mn(6) MnO4-2 0 54.938
|
||||
Mn(7) MnO4- 0 54.938
|
||||
N NO3- 0 14.0067 14.0067
|
||||
N(-3) NH4+ 0 14.0067
|
||||
N(0) N2 0 14.0067
|
||||
N(+3) NO2- 0 14.0067
|
||||
N(+5) NO3- 0 14.0067
|
||||
Na Na+ 0 22.9898 22.9898
|
||||
Ni Ni+2 0 58.71 58.71
|
||||
O H2O 0 16 16
|
||||
O(-2) H2O 0 18.016
|
||||
O(0) O2 0 16
|
||||
P PO4-3 2 30.9738 30.9738
|
||||
Pb Pb+2 0 207.19 207.19
|
||||
Rb Rb+ 0 85.47 85.47
|
||||
S SO4-2 0 96.0616 32.064
|
||||
S(-2) H2S 0 32.064
|
||||
S(6) SO4-2 0 96.0616
|
||||
Se SeO4-2 0 78.96 78.96
|
||||
Se(-2) HSe- 0 78.96
|
||||
Se(4) SeO3-2 0 78.96
|
||||
Se(6) SeO4-2 0 78.96
|
||||
Si H4SiO4 0 60.0843 28.0843
|
||||
Sr Sr+2 0 87.62 87.62
|
||||
Zn Zn+2 0 65.37 65.37
|
||||
U UO2+2 0 238.029 238.029
|
||||
U(3) U+3 0 238.029 238.029
|
||||
U(4) U+4 0 238.029 238.029
|
||||
U(5) UO2+ 0 238.029 238.029
|
||||
U(6) UO2+2 0 238.029 238.029
|
||||
|
||||
SOLUTION_SPECIES
|
||||
|
||||
@ -1345,53 +1345,53 @@ SOLUTION_SPECIES
|
||||
Fe+2 + 3 HS- = Fe(HS)3-
|
||||
log_k 10.987
|
||||
|
||||
#H2AsO3- 478
|
||||
H3AsO3 = H2AsO3- + H+
|
||||
log_k -9.15
|
||||
delta_h 27.54 kJ
|
||||
#H2AsO3- 478
|
||||
H3AsO3 = H2AsO3- + H+
|
||||
log_k -9.15
|
||||
delta_h 27.54 kJ
|
||||
|
||||
#HAsO3-2 479
|
||||
H3AsO3 = HAsO3-2 + 2 H+
|
||||
log_k -23.85
|
||||
delta_h 59.41 kJ
|
||||
#HAsO3-2 479
|
||||
H3AsO3 = HAsO3-2 + 2 H+
|
||||
log_k -23.85
|
||||
delta_h 59.41 kJ
|
||||
|
||||
#AsO3-3 480
|
||||
H3AsO3 = AsO3-3 + 3 H+
|
||||
log_k -39.55
|
||||
delta_h 84.73 kJ
|
||||
#AsO3-3 480
|
||||
H3AsO3 = AsO3-3 + 3 H+
|
||||
log_k -39.55
|
||||
delta_h 84.73 kJ
|
||||
|
||||
#H4AsO3+ 481
|
||||
H3AsO3 + H+ = H4AsO3+
|
||||
log_k -0.305
|
||||
|
||||
#H2AsO4- 482
|
||||
H3AsO4 = H2AsO4- + H+
|
||||
log_k -2.3
|
||||
delta_h -7.066 kJ
|
||||
#H2AsO4- 482
|
||||
H3AsO4 = H2AsO4- + H+
|
||||
log_k -2.3
|
||||
delta_h -7.066 kJ
|
||||
|
||||
#HAsO4-2 483
|
||||
H3AsO4 = HAsO4-2 + 2 H+
|
||||
log_k -9.46
|
||||
delta_h -3.846 kJ
|
||||
#HAsO4-2 483
|
||||
H3AsO4 = HAsO4-2 + 2 H+
|
||||
log_k -9.46
|
||||
delta_h -3.846 kJ
|
||||
|
||||
#AsO43- 484
|
||||
H3AsO4 = AsO4-3 + 3 H+
|
||||
log_k -21.11
|
||||
delta_h 14.354 kJ
|
||||
#AsO43- 484
|
||||
H3AsO4 = AsO4-3 + 3 H+
|
||||
log_k -21.11
|
||||
delta_h 14.354 kJ
|
||||
|
||||
#As3 secondary master species 487
|
||||
H3AsO4 + H2 = H3AsO3 + H2O
|
||||
log_k 22.5
|
||||
delta_h -117.480344 kJ
|
||||
H3AsO4 + H2 = H3AsO3 + H2O
|
||||
log_k 22.5
|
||||
delta_h -117.480344 kJ
|
||||
|
||||
#As3S4(HS)-2 631
|
||||
3 H3AsO3 + 6 HS- + 5 H+ = As3S4(HS)2- + 9 H2O
|
||||
log_k 72.314
|
||||
#As3S4(HS)-2 631
|
||||
3 H3AsO3 + 6 HS- + 5 H+ = As3S4(HS)2- + 9 H2O
|
||||
log_k 72.314
|
||||
-gamma 5 0
|
||||
|
||||
#AsS(OH)(HS)- 637
|
||||
H3AsO3 + 2 HS- + H+ = AsS(OH)(HS)- + 2 H2O
|
||||
log_k 18.038
|
||||
#AsS(OH)(HS)- 637
|
||||
H3AsO3 + 2 HS- + H+ = AsS(OH)(HS)- + 2 H2O
|
||||
log_k 18.038
|
||||
-gamma 5 0
|
||||
|
||||
#
|
||||
@ -3136,8 +3136,8 @@ Basaluminite 472
|
||||
|
||||
As_native 557
|
||||
As + 3 H2O = H3AsO3 + 3 H+ + 3 e-
|
||||
log_k -12.532
|
||||
delta_h 115.131 kJ
|
||||
log_k -12.532
|
||||
delta_h 115.131 kJ
|
||||
|
||||
As2O5(cr) 488
|
||||
As2O5 + 3 H2O = 2 H3AsO4
|
||||
@ -3180,17 +3180,17 @@ Arsenolite 497
|
||||
# As4O6 + 6H2O = 4H3AsO3
|
||||
# log_k -2.801
|
||||
# delta_h 14.330 kcal
|
||||
As2O3 + 3 H2O = 2 H3AsO3
|
||||
log_k -1.38
|
||||
delta_h 30.041 kJ
|
||||
As2O3 + 3 H2O = 2 H3AsO3
|
||||
log_k -1.38
|
||||
delta_h 30.041 kJ
|
||||
|
||||
Claudetite 498
|
||||
# As4O6 + 6H2O = 4H3AsO3
|
||||
# log_k -3.065
|
||||
# delta_h 13.290 kcal
|
||||
As2O3 + 3 H2O = 2 H3AsO3
|
||||
log_k -1.34
|
||||
delta_h 28.443 kJ
|
||||
As2O3 + 3 H2O = 2 H3AsO3
|
||||
log_k -1.34
|
||||
delta_h 28.443 kJ
|
||||
|
||||
AsI3 499
|
||||
AsI3 + 3 H2O = H3AsO3 + 3 I- + 3 H+
|
||||
@ -3201,20 +3201,20 @@ Orpiment 500
|
||||
As2S3 + 6 H2O = 2 H3AsO3 + 3 HS- + 3 H+
|
||||
# log_k -60.971
|
||||
# delta_h 82.890 kcal
|
||||
log_k -46.3
|
||||
delta_h 263.1 kJ
|
||||
log_k -46.3
|
||||
delta_h 263.1 kJ
|
||||
|
||||
As2S3(am) 132
|
||||
As2S3 + 6 H2O = 2 H3AsO3 + 3 HS- + 3 H+
|
||||
log_k -44.9
|
||||
delta_h 244.2 kJ
|
||||
log_k -44.9
|
||||
delta_h 244.2 kJ
|
||||
|
||||
Realgar 501
|
||||
AsS + 3 H2O = H3AsO3 + HS- + 2 H+ + e-
|
||||
# log_k -19.747
|
||||
# delta_h 30.545 kcal
|
||||
log_k -19.944
|
||||
delta_h 129.2625 kJ
|
||||
log_k -19.944
|
||||
delta_h 129.2625 kJ
|
||||
|
||||
BlaubleiI 533
|
||||
Cu0.9Cu0.2S + H+ = 0.9 Cu+2 + 0.2 Cu+ + HS-
|
||||
@ -3432,7 +3432,7 @@ O2(g)
|
||||
O2 = O2
|
||||
# log_k -2.960
|
||||
# delta_h -1.844 kcal
|
||||
# log K from llnl.dat Aug 23, 2005
|
||||
# log K from llnl.dat Aug 23, 2005
|
||||
log_k -2.8983
|
||||
-analytic -7.5001e+0 7.8981e-3 0e+0 0e+0 2.0027e+5
|
||||
|
||||
@ -3727,9 +3727,9 @@ SURFACE_SPECIES
|
||||
#
|
||||
# Silicate: Swedlund, P.J. and Webster, J.G., 1999. Water Research, 33, 3413-3422.
|
||||
#
|
||||
Hfo_wOH + H4SiO4 = Hfo_wH3SiO4 + H2O; log_K 4.28
|
||||
Hfo_wOH + H4SiO4 = Hfo_wH2SiO4- + H+ + H2O; log_K -3.22
|
||||
Hfo_wOH + H4SiO4 = Hfo_wHSiO4-2 + 2 H+ + H2O; log_K -11.69
|
||||
Hfo_wOH + H4SiO4 = Hfo_wH3SiO4 + H2O; log_K 4.28
|
||||
Hfo_wOH + H4SiO4 = Hfo_wH2SiO4- + H+ + H2O; log_K -3.22
|
||||
Hfo_wOH + H4SiO4 = Hfo_wHSiO4-2 + 2 H+ + H2O; log_K -11.69
|
||||
|
||||
RATES
|
||||
###########
|
||||
@ -3738,12 +3738,12 @@ RATES
|
||||
#
|
||||
#######
|
||||
# Example of quartz kinetic rates block:
|
||||
# KINETICS
|
||||
# Quartz
|
||||
# -m0 158.8 # 90 % Qu
|
||||
# -parms 0.146 1.5
|
||||
# -step 3.1536e8 in 10
|
||||
# -tol 1e-12
|
||||
# KINETICS
|
||||
# Quartz
|
||||
# -m0 158.8 # 90 % Qu
|
||||
# -parms 0.146 1.5
|
||||
# -step 3.1536e8 in 10
|
||||
# -tol 1e-12
|
||||
|
||||
Quartz
|
||||
-start
|
||||
@ -3756,7 +3756,7 @@ Quartz
|
||||
10 dif_temp = 1/TK - 1/298
|
||||
20 pk_w = 13.7 + 4700.4 * dif_temp
|
||||
40 moles = PARM(1) * M0 * PARM(2) * (M/M0)^0.67 * 10^-pk_w * (1 - SR("Quartz"))
|
||||
# Integrate...
|
||||
# Integrate...
|
||||
50 SAVE moles * TIME
|
||||
-end
|
||||
|
||||
@ -4033,4 +4033,3 @@ Pyrolusite
|
||||
200 SAVE moles * SOLN_VOL
|
||||
-end
|
||||
END
|
||||
|
||||
|
||||
1
examples/c/.github/subtrees.json
vendored
Normal file
1
examples/c/.github/subtrees.json
vendored
Normal file
@ -0,0 +1 @@
|
||||
[]
|
||||
9
examples/c/.github/superprojects.json
vendored
Normal file
9
examples/c/.github/superprojects.json
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"usgs-coupled-subtrees/phreeqc-commanuscript-cgfinal-examples-c": {
|
||||
"superprojects": [
|
||||
"usgs-coupled-subtrees/iphreeqc",
|
||||
"usgs-coupled-subtrees/iphreeqccom",
|
||||
"usgs-coupled-subtrees/phreeqc"
|
||||
]
|
||||
}
|
||||
}
|
||||
19
examples/c/.github/workflows/lint-subtrees.yml
vendored
Normal file
19
examples/c/.github/workflows/lint-subtrees.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Lint subtrees.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/subtrees.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-subtrees:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-subtrees/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
16
examples/c/.github/workflows/lint-superprojects.yml
vendored
Normal file
16
examples/c/.github/workflows/lint-superprojects.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Lint superprojects.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/superprojects.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-superprojects:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-superprojects/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
37
examples/c/.github/workflows/subtree.yml
vendored
Normal file
37
examples/c/.github/workflows/subtree.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Sync Subtrees
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
dryRun:
|
||||
description: 'If true, don’t push any changes (for testing only).'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
testMerge:
|
||||
description: 'Run in test mode, pushing to a test branch.'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
sync-subtrees:
|
||||
if: startsWith(github.repository, 'usgs-coupled-subtrees/')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
GH_TOKEN: ${{ secrets.WORKFLOW_PAT }}
|
||||
steps:
|
||||
- name: Run sync-subtrees-action
|
||||
uses: usgs-coupled-subtrees/sync-subtrees-action@main
|
||||
with:
|
||||
dryRun: ${{ inputs.dryRun }}
|
||||
testMerge: ${{ inputs.testMerge }}
|
||||
repository_name: ${{ github.event.repository.name }}
|
||||
default_branch: ${{ github.event.repository.default_branch }}
|
||||
run_number: ${{ github.run_number }}
|
||||
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
1
examples/com/.github/subtrees.json
vendored
Normal file
1
examples/com/.github/subtrees.json
vendored
Normal file
@ -0,0 +1 @@
|
||||
[]
|
||||
9
examples/com/.github/superprojects.json
vendored
Normal file
9
examples/com/.github/superprojects.json
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"usgs-coupled-subtrees/phreeqc-commanuscript-cgfinal-examples-com": {
|
||||
"superprojects": [
|
||||
"usgs-coupled-subtrees/iphreeqc",
|
||||
"usgs-coupled-subtrees/iphreeqccom",
|
||||
"usgs-coupled-subtrees/phreeqc"
|
||||
]
|
||||
}
|
||||
}
|
||||
19
examples/com/.github/workflows/lint-subtrees.yml
vendored
Normal file
19
examples/com/.github/workflows/lint-subtrees.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Lint subtrees.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/subtrees.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-subtrees:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-subtrees/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
16
examples/com/.github/workflows/lint-superprojects.yml
vendored
Normal file
16
examples/com/.github/workflows/lint-superprojects.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Lint superprojects.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/superprojects.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-superprojects:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-superprojects/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
37
examples/com/.github/workflows/subtree.yml
vendored
Normal file
37
examples/com/.github/workflows/subtree.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Sync Subtrees
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
dryRun:
|
||||
description: 'If true, don’t push any changes (for testing only).'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
testMerge:
|
||||
description: 'Run in test mode, pushing to a test branch.'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
sync-subtrees:
|
||||
if: startsWith(github.repository, 'usgs-coupled-subtrees/')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
GH_TOKEN: ${{ secrets.WORKFLOW_PAT }}
|
||||
steps:
|
||||
- name: Run sync-subtrees-action
|
||||
uses: usgs-coupled-subtrees/sync-subtrees-action@main
|
||||
with:
|
||||
dryRun: ${{ inputs.dryRun }}
|
||||
testMerge: ${{ inputs.testMerge }}
|
||||
repository_name: ${{ github.event.repository.name }}
|
||||
default_branch: ${{ github.event.repository.default_branch }}
|
||||
run_number: ${{ github.run_number }}
|
||||
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
@ -214,7 +214,7 @@ class ReactionModel(object):
|
||||
class PhreeqcCalculator(object):
|
||||
"""All PHREEQC calculations happen here.
|
||||
|
||||
This is the only place where we interact wit IPhreeqc.
|
||||
This is the only place where we interact with IPhreeqc.
|
||||
Each instance of this class might run in a different
|
||||
process using `multiprocessing`.
|
||||
"""
|
||||
|
||||
1
examples/fortran/.github/subtrees.json
vendored
Normal file
1
examples/fortran/.github/subtrees.json
vendored
Normal file
@ -0,0 +1 @@
|
||||
[]
|
||||
9
examples/fortran/.github/superprojects.json
vendored
Normal file
9
examples/fortran/.github/superprojects.json
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"usgs-coupled-subtrees/phreeqc-COMManuscript-CGfinal-examples-fortran": {
|
||||
"superprojects": [
|
||||
"usgs-coupled-subtrees/iphreeqc",
|
||||
"usgs-coupled-subtrees/iphreeqccom",
|
||||
"usgs-coupled-subtrees/phreeqc"
|
||||
]
|
||||
}
|
||||
}
|
||||
19
examples/fortran/.github/workflows/lint-subtrees.yml
vendored
Normal file
19
examples/fortran/.github/workflows/lint-subtrees.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Lint subtrees.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/subtrees.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-subtrees:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-subtrees/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
16
examples/fortran/.github/workflows/lint-superprojects.yml
vendored
Normal file
16
examples/fortran/.github/workflows/lint-superprojects.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Lint superprojects.json
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/superprojects.json'
|
||||
workflow_call:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint-superprojects:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: usgs-coupled-subtrees/sync-subtrees-action/lint-superprojects/@main
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
37
examples/fortran/.github/workflows/subtree.yml
vendored
Normal file
37
examples/fortran/.github/workflows/subtree.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Sync Subtrees
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
dryRun:
|
||||
description: 'If true, don’t push any changes (for testing only).'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
testMerge:
|
||||
description: 'Run in test mode, pushing to a test branch.'
|
||||
required: true
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
sync-subtrees:
|
||||
if: startsWith(github.repository, 'usgs-coupled-subtrees/')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
CI_SERVER_HOST: github.com
|
||||
GROUP: usgs-coupled
|
||||
GH_TOKEN: ${{ secrets.WORKFLOW_PAT }}
|
||||
steps:
|
||||
- name: Run sync-subtrees-action
|
||||
uses: usgs-coupled-subtrees/sync-subtrees-action@main
|
||||
with:
|
||||
dryRun: ${{ inputs.dryRun }}
|
||||
testMerge: ${{ inputs.testMerge }}
|
||||
repository_name: ${{ github.event.repository.name }}
|
||||
default_branch: ${{ github.event.repository.default_branch }}
|
||||
run_number: ${{ github.run_number }}
|
||||
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
@ -128,6 +128,12 @@ configure_file(
|
||||
COPYONLY
|
||||
)
|
||||
|
||||
configure_file(
|
||||
../database/stimela.dat
|
||||
stimela.dat
|
||||
COPYONLY
|
||||
)
|
||||
|
||||
configure_file(
|
||||
../database/ColdChem.dat
|
||||
ColdChem.dat
|
||||
|
||||
@ -26,7 +26,7 @@ TEST(TestIPhreeqc, TestLoadDatabase)
|
||||
std::string FILES[] = { "phreeqc.dat", "pitzer.dat", "wateq4f.dat",
|
||||
"Amm.dat", "frezchem.dat", "iso.dat",
|
||||
"llnl.dat", "minteq.dat", "minteq.v4.dat",
|
||||
"sit.dat","ColdChem.dat","core10.dat",
|
||||
"sit.dat", "stimela.dat" ,"ColdChem.dat","core10.dat",
|
||||
"Tipping_Hurley.dat"
|
||||
};
|
||||
|
||||
@ -283,7 +283,7 @@ TEST(TestIPhreeqc, TestSetErrorOn)
|
||||
ASSERT_EQ(false, ::FileExists("missing.file"));
|
||||
|
||||
IPhreeqc obj;
|
||||
ASSERT_EQ(true, obj.GetErrorOn()); // intial setting is true
|
||||
ASSERT_EQ(true, obj.GetErrorOn()); // initial setting is true
|
||||
|
||||
obj.SetErrorOn(false);
|
||||
ASSERT_EQ(false, obj.GetErrorOn());
|
||||
@ -314,7 +314,7 @@ TEST(TestIPhreeqc, TestSetErrorOn2)
|
||||
obj.SetErrorFileOn(true);
|
||||
obj.SetErrorFileName(ERR_FILENAME);
|
||||
|
||||
ASSERT_EQ(true, obj.GetErrorOn()); // intial setting is true
|
||||
ASSERT_EQ(true, obj.GetErrorOn()); // initial setting is true
|
||||
|
||||
obj.SetErrorOn(false);
|
||||
ASSERT_EQ(false, obj.GetErrorOn());
|
||||
@ -3829,7 +3829,7 @@ TEST(TestIPhreeqc, TestCErrorReporter)
|
||||
TEST(TestIPhreeqc, TestDelete)
|
||||
{
|
||||
const char input[] =
|
||||
"SOLUTION 1 # definition of intial condition 1\n"
|
||||
"SOLUTION 1 # definition of initial condition 1\n"
|
||||
"COPY cell 1 7405 # copy cell 1 to placeholder cell with index larger than the number of cells in the model domain\n"
|
||||
"END\n"
|
||||
"DELETE # delete initial condition 1 to allow for a redefinition of all reactions\n"
|
||||
|
||||
@ -128,7 +128,7 @@ TEST(TestIPhreeqcLib, TestLoadDatabase)
|
||||
std::string FILES[] = { "phreeqc.dat", "pitzer.dat", "wateq4f.dat",
|
||||
"Amm.dat", "frezchem.dat", "iso.dat",
|
||||
"llnl.dat", "minteq.dat", "minteq.v4.dat",
|
||||
"sit.dat","ColdChem.dat","core10.dat",
|
||||
"sit.dat", "stimela.dat", "ColdChem.dat","core10.dat",
|
||||
"Tipping_Hurley.dat"
|
||||
};
|
||||
|
||||
@ -190,7 +190,7 @@ TEST(TestIPhreeqcLib, TestSetErrorOn)
|
||||
int n = ::CreateIPhreeqc();
|
||||
ASSERT_TRUE(n >= 0);
|
||||
|
||||
ASSERT_EQ(1, ::GetErrorOn(n)); // intial setting is true
|
||||
ASSERT_EQ(1, ::GetErrorOn(n)); // initial setting is true
|
||||
ASSERT_EQ(IPQ_OK, ::SetErrorOn(n, 0));
|
||||
ASSERT_EQ(0, ::GetErrorOn(n));
|
||||
|
||||
@ -4005,7 +4005,7 @@ TEST(TestIPhreeqcLib, TestIEEE)
|
||||
TEST(TestIPhreeqcLib, TestDelete)
|
||||
{
|
||||
const char input[] =
|
||||
"SOLUTION 1 # definition of intial condition 1\n"
|
||||
"SOLUTION 1 # definition of initial condition 1\n"
|
||||
"COPY cell 1 7405 # copy cell 1 to placeholder cell with index larger than the number of cells in the model domain\n"
|
||||
"END\n"
|
||||
"DELETE # delete initial condition 1 to allow for a redefinition of all reactions\n"
|
||||
|
||||
@ -17,7 +17,7 @@
|
||||
# from the top-level of a branches/0.24.2 working copy will create
|
||||
# the 0.24.2 release tarball.
|
||||
#
|
||||
# When building a alpha, beta or rc tarballs pass the apppropriate flag
|
||||
# When building a alpha, beta or rc tarballs pass the appropriate flag
|
||||
# followed by the number for that release. For example you'd do
|
||||
# the following for a Beta 1 release:
|
||||
# ./dist.sh -v 1.1.0 -r 10277 -pr branches/1.1.x -beta 1
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
set(POET_SOURCE_FILES
|
||||
|
||||
set(LPQC_SOURCE_FILES
|
||||
src/Engine.cpp
|
||||
src/Runner.cpp
|
||||
src/Knobs.cpp
|
||||
@ -20,19 +21,19 @@ set(POET_SOURCE_FILES
|
||||
src/PhreeqcMatrix/Misc.cpp
|
||||
)
|
||||
|
||||
add_library(IPhreeqcPOET ${POET_SOURCE_FILES})
|
||||
target_link_libraries(IPhreeqcPOET PUBLIC IPhreeqc)
|
||||
target_include_directories(IPhreeqcPOET PUBLIC
|
||||
add_library(litephreeqc STATIC ${LPQC_SOURCE_FILES})
|
||||
target_link_libraries(litephreeqc PUBLIC IPhreeqc)
|
||||
target_include_directories(litephreeqc PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||
$<INSTALL_INTERFACE:include>)
|
||||
|
||||
# Set C++20 standard
|
||||
target_compile_features(IPhreeqcPOET PUBLIC cxx_std_20)
|
||||
target_compile_features(litephreeqc PUBLIC cxx_std_20)
|
||||
|
||||
if (BUILD_TESTING AND STANDALONE_BUILD)
|
||||
enable_testing()
|
||||
|
||||
set(POET_TEST_SOURCE_FILES
|
||||
set(LPQC_TEST_SOURCE_FILES
|
||||
test/testPhreeqcEngine.cpp
|
||||
test/testPhreeqcMatrix.cpp
|
||||
test/testPhreeqcRunner.cpp
|
||||
@ -41,15 +42,15 @@ if (BUILD_TESTING AND STANDALONE_BUILD)
|
||||
test/IPhreeqcReader.cpp
|
||||
)
|
||||
|
||||
add_executable(poet_test ${POET_TEST_SOURCE_FILES})
|
||||
add_executable(litephreeqc_test ${LPQC_TEST_SOURCE_FILES})
|
||||
|
||||
target_link_libraries(
|
||||
poet_test
|
||||
IPhreeqcPOET
|
||||
litephreeqc_test
|
||||
litephreeqc
|
||||
GTest::gtest_main
|
||||
)
|
||||
|
||||
target_include_directories(poet_test PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
||||
target_include_directories(litephreeqc_test PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
# read file and store in variable
|
||||
file(REAL_PATH "${PROJECT_SOURCE_DIR}/database/phreeqc.dat" POET_PHREEQCDAT_DB)
|
||||
@ -59,11 +60,11 @@ if (BUILD_TESTING AND STANDALONE_BUILD)
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/test/testInput.hpp.in" "${CMAKE_CURRENT_BINARY_DIR}/testInput.hpp")
|
||||
|
||||
include(GoogleTest)
|
||||
gtest_discover_tests(poet_test)
|
||||
gtest_discover_tests(litephreeqc_test)
|
||||
endif()
|
||||
|
||||
add_executable(testGolemRunner test/testGolemRunner.cpp)
|
||||
target_link_libraries(testGolemRunner IPhreeqcPOET)
|
||||
add_executable(golemrunner test/testGolemRunner.cpp)
|
||||
target_link_libraries(golemrunner litephreeqc)
|
||||
|
||||
add_executable(testGetters test/testGetters.cpp)
|
||||
target_link_libraries(testGetters IPhreeqcPOET)
|
||||
target_link_libraries(testGetters litephreeqc)
|
||||
10
litephreeqc/LICENSE.txt
Normal file
10
litephreeqc/LICENSE.txt
Normal file
@ -0,0 +1,10 @@
|
||||
This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
version of the PHREEQC code that has been modified to be used as a library.
|
||||
|
||||
It adds a C++ interface on top of the original PHREEQC code, with small changes
|
||||
to the original code base.
|
||||
|
||||
Authors of Modifications:
|
||||
- Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
- Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <map>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "PhreeqcEngine.hpp"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PhreeqcEngine.hpp"
|
||||
#include <cstddef>
|
||||
#include <iomanip>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PhreeqcKnobs.hpp"
|
||||
|
||||
#include <Phreeqc.h>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include <PhreeqcMatrix.hpp>
|
||||
#include <algorithm>
|
||||
#include <cstddef>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "IPhreeqc.hpp"
|
||||
#include "PhreeqcKnobs.hpp"
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
|
||||
#include "../Wrapper/EquilibriumWrapper.hpp"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
|
||||
#include <IPhreeqc.hpp>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "PhreeqcEngine.hpp"
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
#include "PhreeqcRunner.hpp"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "EquilibriumWrapper.hpp"
|
||||
|
||||
EquilibriumWrapper::EquilibriumCompWrapper::EquilibriumCompWrapper(
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "EquilibriumWrapper.hpp"
|
||||
|
||||
#include <algorithm>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "PPassemblage.h"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "ExchangeWrapper.hpp"
|
||||
|
||||
ExchangeWrapper::ExchangeCompWrapper::ExchangeCompWrapper(cxxExchComp &comp)
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "ExchangeWrapper.hpp"
|
||||
|
||||
ExchangeWrapper::ExchangeWrapper(cxxExchange *exch,
|
||||
@ -21,36 +34,36 @@ ExchangeWrapper::ExchangeWrapper(cxxExchange *exch,
|
||||
num_elements += exchange_comps.back()->size();
|
||||
}
|
||||
|
||||
// const std::size_t defined_comps = exchange->Get_exchange_comps().size();
|
||||
// const std::size_t defined_comps = exchange->Get_exchange_comps().size();
|
||||
|
||||
// auto header_it = remaining_field_header.begin();
|
||||
// auto header_it = remaining_field_header.begin();
|
||||
|
||||
// while (header_it != remaining_field_header.end() &&
|
||||
// exchange_comps.size() < defined_comps) {
|
||||
// const std::string formular = *header_it;
|
||||
// while (header_it != remaining_field_header.end() &&
|
||||
// exchange_comps.size() < defined_comps) {
|
||||
// const std::string formular = *header_it;
|
||||
|
||||
// auto it = std::find_if(exchange->Get_exchange_comps().begin(),
|
||||
// exchange->Get_exchange_comps().end(),
|
||||
// [&](const cxxExchComp &comp) {
|
||||
// return comp.Get_formula() == formular;
|
||||
// });
|
||||
// auto it = std::find_if(exchange->Get_exchange_comps().begin(),
|
||||
// exchange->Get_exchange_comps().end(),
|
||||
// [&](const cxxExchComp &comp) {
|
||||
// return comp.Get_formula() == formular;
|
||||
// });
|
||||
|
||||
// if (it != exchange->Get_exchange_comps().end()) {
|
||||
// const size_t i = this->exchange_comps.size();
|
||||
// if (it != exchange->Get_exchange_comps().end()) {
|
||||
// const size_t i = this->exchange_comps.size();
|
||||
|
||||
// exchange_comps.push_back(std::make_unique<ExchangeCompWrapper>(*it));
|
||||
// header_it += this->exchange_comps[i]->size();
|
||||
// num_elements += this->exchange_comps[i]->size();
|
||||
// continue;
|
||||
// }
|
||||
// exchange_comps.push_back(std::make_unique<ExchangeCompWrapper>(*it));
|
||||
// header_it += this->exchange_comps[i]->size();
|
||||
// num_elements += this->exchange_comps[i]->size();
|
||||
// continue;
|
||||
// }
|
||||
|
||||
// header_it++;
|
||||
// }
|
||||
// header_it++;
|
||||
// }
|
||||
|
||||
// if (exchange_comps.size() != defined_comps) {
|
||||
// throw std::runtime_error(
|
||||
// "Not all exchange components found in Phreeqc variables");
|
||||
// }
|
||||
// if (exchange_comps.size() != defined_comps) {
|
||||
// throw std::runtime_error(
|
||||
// "Not all exchange components found in Phreeqc variables");
|
||||
// }
|
||||
}
|
||||
|
||||
void ExchangeWrapper::get(std::span<LDBLE> &exchange) const {
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ExchComp.h"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "KineticWrapper.hpp"
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "KineticWrapper.hpp"
|
||||
#include <vector>
|
||||
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "KineticsComp.h"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "SolutionWrapper.hpp"
|
||||
#include "NameDouble.h"
|
||||
#include <set>
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "Solution.h"
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "SurfaceWrapper.hpp"
|
||||
|
||||
SurfaceWrapper::SurfaceChargeWrapper::SurfaceChargeWrapper(
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "SurfaceWrapper.hpp"
|
||||
|
||||
SurfaceWrapper::SurfaceCompWrapper::SurfaceCompWrapper(cxxSurfaceComp &comp)
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#include "SurfaceWrapper.hpp"
|
||||
#include "SurfaceComp.h"
|
||||
|
||||
@ -1,3 +1,16 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "Surface.h"
|
||||
31
litephreeqc/src/Wrapper/WrapperBase.hpp
Normal file
31
litephreeqc/src/Wrapper/WrapperBase.hpp
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
* This project is subject to the original PHREEQC license. `litephreeqc` is a
|
||||
* version of the PHREEQC code that has been modified to be used as a library.
|
||||
*
|
||||
* It adds a C++ interface on top of the original PHREEQC code, with small
|
||||
* changes to the original code base.
|
||||
*
|
||||
* Authors of Modifications:
|
||||
* - Max Luebke (mluebke@uni-potsdam.de) - University of Potsdam
|
||||
* - Marco De Lucia (delucia@gfz.de) - GFZ Helmholz Centre for Geosciences
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <phrqtype.h>
|
||||
#include <span>
|
||||
|
||||
class WrapperBase {
|
||||
public:
|
||||
virtual ~WrapperBase() = default;
|
||||
|
||||
std::size_t size() const { return this->num_elements; };
|
||||
|
||||
virtual void get(std::span<LDBLE> &data) const = 0;
|
||||
|
||||
virtual void set(const std::span<LDBLE> &data) = 0;
|
||||
|
||||
protected:
|
||||
std::size_t num_elements = 0;
|
||||
};
|
||||
147
litephreeqc/test/testGolemRunner.cpp
Normal file
147
litephreeqc/test/testGolemRunner.cpp
Normal file
@ -0,0 +1,147 @@
|
||||
// Time-stamp: "Last modified 2025-07-28 13:03:01 delucia"
|
||||
#include <algorithm>
|
||||
#include <cmath>
|
||||
#include <fstream>
|
||||
#include <iomanip>
|
||||
#include <iostream>
|
||||
#include <iterator>
|
||||
#include <linux/limits.h>
|
||||
#include <memory>
|
||||
#include <sstream>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "PhreeqcEngine.hpp"
|
||||
#include "PhreeqcMatrix.hpp"
|
||||
#include "PhreeqcRunner.hpp"
|
||||
|
||||
std::string readFile(const std::string &path) {
|
||||
std::string string_rpath(PATH_MAX, '\0');
|
||||
|
||||
if (realpath(path.c_str(), string_rpath.data()) == nullptr) {
|
||||
throw std::runtime_error(":: Failed to resolve the realpath to file " +
|
||||
path);
|
||||
}
|
||||
|
||||
std::ifstream file(string_rpath);
|
||||
|
||||
if (!file.is_open()) {
|
||||
throw std::runtime_error(":: Failed to open file: " + path);
|
||||
}
|
||||
|
||||
std::stringstream buffer;
|
||||
buffer << file.rdbuf();
|
||||
|
||||
return buffer.str();
|
||||
}
|
||||
|
||||
// pretty print a vector, standard implementation from stackoverflow
|
||||
template <typename T>
|
||||
std::ostream &operator<<(std::ostream &os, std::vector<T> vec) {
|
||||
os << "{ ";
|
||||
std::copy(vec.begin(), vec.end(), std::ostream_iterator<T>(os, ", "));
|
||||
os << " }";
|
||||
return os;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
|
||||
if (argc < 3) {
|
||||
std::cout << "::" << argv[0] << ": two args needed, script and database\n";
|
||||
return 1;
|
||||
}
|
||||
|
||||
////// INITIALISATION
|
||||
// read Script and Database and put it in a std::string
|
||||
auto script = readFile(argv[1]);
|
||||
auto db = readFile(argv[2]);
|
||||
|
||||
// Create the matrix directly from database and init script
|
||||
PhreeqcMatrix pqc_mat(db, script, true, true);
|
||||
|
||||
// How many different SOLUTIONS ("CELLS") are defined in the script?
|
||||
const auto ids = pqc_mat.getIds();
|
||||
|
||||
int n = ids.size();
|
||||
|
||||
std::cout << ":: Found " << n << " distinct PHREEQC problems \n";
|
||||
std::cout << ids << "\n";
|
||||
|
||||
const auto solutes = pqc_mat.getSolutionNames();
|
||||
std::cout << ":: These are the common solutes across all the " << n
|
||||
<< " problems: \n";
|
||||
std::cout << solutes << "\n";
|
||||
|
||||
// iterate on the ids (THEY start at 1!!)
|
||||
for (const auto &i : ids) {
|
||||
auto pphases = pqc_mat.getEquilibriumNames(i);
|
||||
if (!pphases.empty()) {
|
||||
std::cout << ":: Equilibrium phases [" << (int)i << "]: \n";
|
||||
std::cout << pphases << "\n";
|
||||
}
|
||||
|
||||
auto kinetics = pqc_mat.getKineticsNames(i);
|
||||
if (!kinetics.empty()) {
|
||||
std::cout << ":: Kinetics [" << i << "]: \n";
|
||||
std::cout << kinetics << "\n";
|
||||
}
|
||||
}
|
||||
|
||||
// The exported data type holds the matrix in a "STL format" with
|
||||
// a "header" of names and their accompanying values. The values
|
||||
// are stored in a row-major order per default.
|
||||
auto exported_mat = pqc_mat.get();
|
||||
// Get the total number of solutes
|
||||
const int len = exported_mat.names.size();
|
||||
// Get the values as reference to modify them in place
|
||||
std::vector<double> &cell_values = exported_mat.values;
|
||||
|
||||
std::cout << ":: Values in the PhreeqcMatrix: \n";
|
||||
|
||||
//// Phreeqc RUN through the new Runner class
|
||||
|
||||
// optional SUBSET the matrix (i.e., the unique ids defined in
|
||||
// golem map as input)
|
||||
// const auto subsetted_pqc_mat = pqc_mat.subset({1, 2});
|
||||
PhreeqcRunner runner(pqc_mat);
|
||||
|
||||
const auto stl_mat = pqc_mat.get();
|
||||
const auto matrix_values = stl_mat.values;
|
||||
const auto num_columns = stl_mat.names.size();
|
||||
const auto spec_names = stl_mat.names;
|
||||
|
||||
// container to pass in/out
|
||||
std::vector<std::vector<double>> simulationInOut;
|
||||
|
||||
// copy the values to the InOut vector. We replicate cell 1
|
||||
for (std::size_t index = 0; index < n; ++index) {
|
||||
simulationInOut.push_back(
|
||||
std::vector<double>(matrix_values.begin() + num_columns * index,
|
||||
matrix_values.begin() + num_columns * (index + 1)));
|
||||
}
|
||||
|
||||
const double timestep = 100.;
|
||||
|
||||
// compute 1 timestep
|
||||
runner.run(simulationInOut, timestep);
|
||||
|
||||
for (std::size_t cell_index = 0; cell_index < simulationInOut.size();
|
||||
++cell_index) {
|
||||
|
||||
std::cout << "Grid element: " << cell_index << " \n";
|
||||
for (std::size_t spec = 0; spec < num_columns; ++spec) {
|
||||
std::cout << ":" << spec_names[spec] << "="
|
||||
<< simulationInOut[cell_index][spec];
|
||||
}
|
||||
std::cout << "\n";
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Oneliner for rz-vm278 relative to iphreeqc/poet/test!!
|
||||
|
||||
// g++ testGolemRunner.cpp -o testG -Wall -I../../poet/include -I../../src
|
||||
// -I../../src/phreeqcpp -I../../src/phreeqcpp/common
|
||||
// -I../../src/phreeqcpp/PhreeqcKeywords -lIPhreeqc -lIPhreeqcPOET
|
||||
// -L../../bbuild/ -L../../bbuild/poet
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#define POET_TEST(name) TEST(TestPOET, name)
|
||||
#define POET_TEST(name) TEST(litephreeqc, name)
|
||||
|
||||
namespace base_test {
|
||||
const std::string script = R"(SOLUTION 1
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user