diff --git a/test_problems/cathermo/DH_graph_1/.cvsignore b/test_problems/cathermo/DH_graph_1/.cvsignore
new file mode 100644
index 000000000..cfcf9c707
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/.cvsignore
@@ -0,0 +1,15 @@
+Makefile
+DH_NaCl_NM.csv
+DH_NaCl.csv
+DH_NaCl_Pitzer.csv
+DH_NaCl_acommon.csv
+DH_NaCl_bdotak.csv
+DH_NaCl_dilute.csv
+DH_graph_1
+DH_graph_1.d
+DH_graph_1.out
+csvCode.txt
+diff.out
+diff_test.out
+table.csv
+.depends
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl.xml
new file mode 100644
index 000000000..b22c93dc4
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl.xml
@@ -0,0 +1,263 @@
+
+
+
+
+
+ 300
+ 101325.0
+
+ Na+:9.3549
+ Cl-:9.3549
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+ 0.0410
+ 3.0
+
+
+ Na+:4.0
+ Cl-:3.0
+ H+:9.0
+ OH-:3.5
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq) SiO2(aq)
+ NaH3SiO4(aq) H3SiO4-
+
+
+
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01,
+ 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188671E+04, -2.8827879E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ -240.34
+ 2
+
+ -103.98186, -103.98186
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ -167.08
+ 2
+
+ -74.20664, -74.20664
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 0.0
+
+
+
+ 0.0
+ 2
+
+ 0.0, 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ -230.015
+ 2
+
+ -91.50963 , -85.
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -96.03E3
+ 2
+
+
+ -174.5057463, -174.5057463
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 O:1 H:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -472.4865
+ 2
+
+
+ -195.02569, -195.02569
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:2
+
+ 1.3
+
+ 0.0
+ nonpolarNeutral
+
+
+ -890.
+ 2
+
+ -363.2104, -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Na:1 H:3 Si:1 O:4
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ -890.
+ 2
+
+ -694.683918 , -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -588.0556 , -450
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_NM.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl_NM.xml
new file mode 100644
index 000000000..ef084e6ff
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_NM.xml
@@ -0,0 +1,270 @@
+
+
+
+
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq)
+ NaH3SiO4(aq) SiO2(aq) H3SiO4-
+
+
+ 300
+ 101325.0
+
+ Na+:3.0
+ Cl-:3.0
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+
+
+
+ H+:Cl-:0.27
+ Na+:Cl-:0.15
+ Na+:OH-:0.06
+
+
+ NaCl(aq):-1.0
+
+
+ H+:chargedSpecies
+ NaCl(aq):weakAcidAssociated
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01, 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188654990E+04, -2.882801370E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ 0.0
+ 2
+
+ -125.5213, -125.5213
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -52.8716 , -52.8716
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ 0.0 , 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -91.523 , -91.523
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Si:1 O:2
+ 0
+ 0.0
+ nonpolarNeutral
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Na:1 O:1 H:1
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Na:1 Si:1 O:4 H:3
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_NM_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_NM_blessed.csv
new file mode 100644
index 000000000..e361d5b5b
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_NM_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.964651, -0.0156299, 0.964651, 0.964651, 1
+ 0.00408122, 0.0638844, 0.933152, -0.0300474, 0.933152, 0.933152, 1
+ 0.00918274, 0.0958266, 0.905034, -0.0433353, 0.905034, 0.905034, 1.00001
+ 0.0163249, 0.127769, 0.879899, -0.055567, 0.879899, 0.879899, 1.00002
+ 0.0255076, 0.159711, 0.857417, -0.0668077, 0.857417, 0.857417, 1.00004
+ 0.0367309, 0.191653, 0.837306, -0.0771158, 0.837306, 0.837306, 1.00007
+ 0.0499949, 0.223595, 0.819326, -0.0865435, 0.819326, 0.819326, 1.0001
+ 0.0652995, 0.255538, 0.803271, -0.0951377, 0.803271, 0.803271, 1.00014
+ 0.0826446, 0.28748, 0.788968, -0.102941, 0.788968, 0.788968, 1.00019
+ 0.10203, 0.319422, 0.776264, -0.109991, 0.776264, 0.776264, 1.00024
+ 0.123457, 0.351364, 0.765029, -0.116322, 0.765029, 0.765029, 1.00029
+ 0.146924, 0.383306, 0.755151, -0.121966, 0.755151, 0.755151, 1.00035
+ 0.172431, 0.415249, 0.746532, -0.126951, 0.746532, 0.746532, 1.00041
+ 0.19998, 0.447191, 0.739087, -0.131304, 0.739087, 0.739087, 1.00047
+ 0.229568, 0.479133, 0.732743, -0.135048, 0.732743, 0.732743, 1.00053
+ 0.261198, 0.511075, 0.727436, -0.138205, 0.727436, 0.727436, 1.00059
+ 0.294868, 0.543017, 0.723112, -0.140795, 0.723112, 0.723112, 1.00063
+ 0.330579, 0.57496, 0.719722, -0.142835, 0.719722, 0.719722, 1.00067
+ 0.36833, 0.606902, 0.717226, -0.144344, 0.717226, 0.717226, 1.0007
+ 0.408122, 0.638844, 0.715589, -0.145337, 0.715589, 0.715589, 1.00071
+ 0.449954, 0.670786, 0.714781, -0.145827, 0.714781, 0.714781, 1.00071
+ 0.493827, 0.702728, 0.714779, -0.145828, 0.714779, 0.714779, 1.00068
+ 0.539741, 0.734671, 0.715561, -0.145354, 0.715561, 0.715561, 1.00063
+ 0.587695, 0.766613, 0.717111, -0.144414, 0.717111, 0.717111, 1.00055
+ 0.63769, 0.798555, 0.719417, -0.143019, 0.719417, 0.719417, 1.00044
+ 0.689726, 0.830497, 0.722469, -0.141181, 0.722469, 0.722469, 1.00029
+ 0.743802, 0.862439, 0.726262, -0.138906, 0.726262, 0.726262, 1.00011
+ 0.799918, 0.894382, 0.730793, -0.136206, 0.730793, 0.730793, 0.999883
+ 0.858076, 0.926324, 0.736062, -0.133086, 0.736062, 0.736062, 0.999607
+ 0.918274, 0.958266, 0.74207, -0.129555, 0.74207, 0.74207, 0.99928
+ 0.980512, 0.990208, 0.748825, -0.12562, 0.748825, 0.748825, 0.998896
+ 1.04479, 1.02215, 0.756334, -0.121287, 0.756334, 0.756334, 0.998451
+ 1.11111, 1.05409, 0.764606, -0.116562, 0.764606, 0.764606, 0.99794
+ 1.17947, 1.08603, 0.773657, -0.111452, 0.773657, 0.773657, 0.997358
+ 1.24987, 1.11798, 0.7835, -0.105961, 0.7835, 0.7835, 0.9967
+ 1.32231, 1.14992, 0.794155, -0.100095, 0.794155, 0.794155, 0.995961
+ 1.3968, 1.18186, 0.805641, -0.0938585, 0.805641, 0.805641, 0.995136
+ 1.47332, 1.2138, 0.817982, -0.0872561, 0.817982, 0.817982, 0.994219
+ 1.55188, 1.24575, 0.831205, -0.080292, 0.831205, 0.831205, 0.993205
+ 1.63249, 1.27769, 0.845337, -0.0729703, 0.845337, 0.845337, 0.992089
+ 1.71513, 1.30963, 0.86041, -0.0652948, 0.86041, 0.86041, 0.990864
+ 1.79982, 1.34157, 0.876458, -0.057269, 0.876458, 0.876458, 0.989525
+ 1.88654, 1.37351, 0.893519, -0.0488964, 0.893519, 0.893519, 0.988067
+ 1.97531, 1.40546, 0.911632, -0.0401802, 0.911632, 0.911632, 0.986483
+ 2.06612, 1.4374, 0.930843, -0.0311235, 0.930843, 0.930843, 0.984767
+ 2.15896, 1.46934, 0.951198, -0.0217292, 0.951198, 0.951198, 0.982915
+ 2.25385, 1.50128, 0.972747, -0.0119999, 0.972747, 0.972747, 0.980918
+ 2.35078, 1.53323, 0.995547, -0.00193836, 0.995547, 0.995547, 0.978773
+ 2.44975, 1.56517, 1.01965, 0.00845299, 1.01965, 1.01965, 0.976473
+ 2.55076, 1.59711, 1.04513, 0.0191718, 1.04513, 1.04513, 0.974011
+ 2.65381, 1.62905, 1.07205, 0.0302158, 1.07205, 1.07205, 0.971382
+ 2.7589, 1.66099, 1.10048, 0.0415828, 1.10048, 1.10048, 0.96858
+ 2.86603, 1.69294, 1.1305, 0.0532709, 1.1305, 1.1305, 0.965599
+ 2.97521, 1.72488, 1.16219, 0.065278, 1.16219, 1.16219, 0.962433
+ 3.08642, 1.75682, 1.19565, 0.0776024, 1.19565, 1.19565, 0.959077
+ 3.19967, 1.78876, 1.23096, 0.0902423, 1.23096, 1.23096, 0.955524
+ 3.31497, 1.82071, 1.26822, 0.103196, 1.26822, 1.26822, 0.95177
+ 3.4323, 1.85265, 1.30756, 0.116462, 1.30756, 1.30756, 0.947808
+ 3.55168, 1.88459, 1.34908, 0.130038, 1.34908, 1.34908, 0.943634
+ 3.67309, 1.91653, 1.39291, 0.143924, 1.39291, 1.39291, 0.939241
+ 3.79655, 1.94847, 1.43919, 0.158117, 1.43919, 1.43919, 0.934627
+ 3.92205, 1.98042, 1.48805, 0.172617, 1.48805, 1.48805, 0.929784
+ 4.04959, 2.01236, 1.53965, 0.187422, 1.53965, 1.53965, 0.92471
+ 4.17917, 2.0443, 1.59416, 0.202531, 1.59416, 1.59416, 0.919398
+ 4.31078, 2.07624, 1.65174, 0.217942, 1.65174, 1.65174, 0.913847
+ 4.44444, 2.10819, 1.7126, 0.233655, 1.7126, 1.7126, 0.90805
+ 4.58014, 2.14013, 1.77692, 0.249669, 1.77692, 1.77692, 0.902006
+ 4.71789, 2.17207, 1.84494, 0.265982, 1.84494, 1.84494, 0.895711
+ 4.85767, 2.20401, 1.91687, 0.282593, 1.91687, 1.91687, 0.889161
+ 4.99949, 2.23595, 1.99298, 0.299502, 1.99298, 1.99298, 0.882354
+ 5.14335, 2.2679, 2.07352, 0.316708, 2.07352, 2.07352, 0.875289
+ 5.28926, 2.29984, 2.15878, 0.334209, 2.15878, 2.15878, 0.867962
+ 5.4372, 2.33178, 2.24908, 0.352005, 2.24908, 2.24908, 0.860373
+ 5.58718, 2.36372, 2.34474, 0.370095, 2.34474, 2.34474, 0.852521
+ 5.73921, 2.39566, 2.44612, 0.388478, 2.44612, 2.44612, 0.844406
+ 5.89328, 2.42761, 2.5536, 0.407153, 2.5536, 2.5536, 0.836026
+ 6.04938, 2.45955, 2.6676, 0.42612, 2.6676, 2.6676, 0.827383
+ 6.20753, 2.49149, 2.78855, 0.445378, 2.78855, 2.78855, 0.818477
+ 6.36772, 2.52343, 2.91693, 0.464926, 2.91693, 2.91693, 0.80931
+ 6.52995, 2.55538, 3.05326, 0.484764, 3.05326, 3.05326, 0.799884
+ 6.69421, 2.58732, 3.1981, 0.504891, 3.1981, 3.1981, 0.7902
+ 6.86052, 2.61926, 3.35202, 0.525307, 3.35202, 3.35202, 0.780263
+ 7.02887, 2.6512, 3.51568, 0.54601, 3.51568, 3.51568, 0.770076
+ 7.19927, 2.68314, 3.68978, 0.567, 3.68978, 3.68978, 0.759642
+ 7.3717, 2.71509, 3.87505, 0.588277, 3.87505, 3.87505, 0.748967
+ 7.54617, 2.74703, 4.07231, 0.60984, 4.07231, 4.07231, 0.738056
+ 7.72268, 2.77897, 4.28242, 0.631689, 4.28242, 4.28242, 0.726915
+ 7.90123, 2.81091, 4.50633, 0.653823, 4.50633, 4.50633, 0.71555
+ 8.08183, 2.84286, 4.74506, 0.676242, 4.74506, 4.74506, 0.703968
+ 8.26446, 2.8748, 4.9997, 0.698944, 4.9997, 4.9997, 0.692177
+ 8.44914, 2.90674, 5.27146, 0.721931, 5.27146, 5.27146, 0.680185
+ 8.63585, 2.93868, 5.56161, 0.745201, 5.56161, 5.56161, 0.668002
+ 8.82461, 2.97062, 5.87156, 0.768753, 5.87156, 5.87156, 0.655635
+ 9.01541, 3.00257, 6.20281, 0.792588, 6.20281, 6.20281, 0.643096
+ 9.20824, 3.03451, 6.557, 0.816705, 6.557, 6.557, 0.630394
+ 9.40312, 3.06645, 6.93592, 0.841104, 6.93592, 6.93592, 0.617541
+ 9.60004, 3.09839, 7.34149, 0.865784, 7.34149, 7.34149, 0.604548
+ 9.799, 3.13034, 7.77581, 0.890746, 7.77581, 7.77581, 0.591426
+ 10, 3.16228, 8.24114, 0.915987, 8.24114, 8.24114, 0.57819
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer.xml
new file mode 100644
index 000000000..f2814426f
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer.xml
@@ -0,0 +1,270 @@
+
+
+
+
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq)
+ NaH3SiO4(aq) SiO2(aq) H3SiO4-
+
+
+ 300
+ 101325.0
+
+ Na+:3.0
+ Cl-:3.0
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+
+
+
+ H+:Cl-:0.27
+ Na+:Cl-:0.15
+ Na+:OH-:0.06
+
+
+ NaCl(aq):-1.0
+
+
+ H+:chargedSpecies
+ NaCl(aq):weakAcidAssociated
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01, 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188654990E+04, -2.882801370E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ 0.0
+ 2
+
+ -125.5213, -125.5213
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -52.8716 , -52.8716
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ 0.0 , 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -91.523 , -91.523
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Si:1 O:2
+ 0
+ 0.0
+ nonpolarNeutral
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Na:1 O:1 H:1
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+ Na:1 Si:1 O:4 H:3
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -63.47 , -63.47
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer_blessed.csv
new file mode 100644
index 000000000..fda0c2f53
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_Pitzer_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.964282, -0.015796, 0.964282, 0.964282, 1
+ 0.00408122, 0.0638844, 0.931783, -0.0306852, 0.931783, 0.931783, 1
+ 0.00918274, 0.0958266, 0.902164, -0.0447144, 0.902164, 0.902164, 1.00001
+ 0.0163249, 0.127769, 0.875133, -0.0579257, 0.875133, 0.875133, 1.00002
+ 0.0255076, 0.159711, 0.850439, -0.070357, 0.850439, 0.850439, 1.00005
+ 0.0367309, 0.191653, 0.827861, -0.0820425, 0.827861, 0.827861, 1.00008
+ 0.0499949, 0.223595, 0.80721, -0.0930134, 0.80721, 0.80721, 1.00011
+ 0.0652995, 0.255538, 0.78832, -0.103298, 0.78832, 0.78832, 1.00016
+ 0.0826446, 0.28748, 0.771043, -0.112921, 0.771043, 0.771043, 1.00022
+ 0.10203, 0.319422, 0.755253, -0.121907, 0.755253, 0.755253, 1.00028
+ 0.123457, 0.351364, 0.740836, -0.130278, 0.740836, 0.740836, 1.00036
+ 0.146924, 0.383306, 0.727693, -0.138052, 0.727693, 0.727693, 1.00044
+ 0.172431, 0.415249, 0.715734, -0.145249, 0.715734, 0.715734, 1.00053
+ 0.19998, 0.447191, 0.704882, -0.151884, 0.704882, 0.704882, 1.00063
+ 0.229568, 0.479133, 0.695067, -0.157974, 0.695067, 0.695067, 1.00073
+ 0.261198, 0.511075, 0.686227, -0.163532, 0.686227, 0.686227, 1.00083
+ 0.294868, 0.543017, 0.678309, -0.168572, 0.678309, 0.678309, 1.00094
+ 0.330579, 0.57496, 0.671263, -0.173107, 0.671263, 0.671263, 1.00104
+ 0.36833, 0.606902, 0.665047, -0.177147, 0.665047, 0.665047, 1.00114
+ 0.408122, 0.638844, 0.659623, -0.180704, 0.659623, 0.659623, 1.00123
+ 0.449954, 0.670786, 0.654956, -0.183788, 0.654956, 0.654956, 1.00132
+ 0.493827, 0.702728, 0.651019, -0.186407, 0.651019, 0.651019, 1.0014
+ 0.539741, 0.734671, 0.647784, -0.18857, 0.647784, 0.647784, 1.00146
+ 0.587695, 0.766613, 0.645229, -0.190286, 0.645229, 0.645229, 1.0015
+ 0.63769, 0.798555, 0.643336, -0.191562, 0.643336, 0.643336, 1.00153
+ 0.689726, 0.830497, 0.642087, -0.192406, 0.642087, 0.642087, 1.00153
+ 0.743802, 0.862439, 0.641469, -0.192824, 0.641469, 0.641469, 1.00151
+ 0.799918, 0.894382, 0.641471, -0.192823, 0.641471, 0.641471, 1.00145
+ 0.858076, 0.926324, 0.642084, -0.192408, 0.642084, 0.642084, 1.00136
+ 0.918274, 0.958266, 0.643301, -0.191586, 0.643301, 0.643301, 1.00124
+ 0.980512, 0.990208, 0.645118, -0.190361, 0.645118, 0.645118, 1.00107
+ 1.04479, 1.02215, 0.647531, -0.188739, 0.647531, 0.647531, 1.00085
+ 1.11111, 1.05409, 0.650542, -0.186725, 0.650542, 0.650542, 1.00058
+ 1.17947, 1.08603, 0.654151, -0.184322, 0.654151, 0.654151, 1.00025
+ 1.24987, 1.11798, 0.658361, -0.181536, 0.658361, 0.658361, 0.999864
+ 1.32231, 1.14992, 0.663177, -0.17837, 0.663177, 0.663177, 0.99941
+ 1.3968, 1.18186, 0.668607, -0.174829, 0.668607, 0.668607, 0.998886
+ 1.47332, 1.2138, 0.674659, -0.170916, 0.674659, 0.674659, 0.998285
+ 1.55188, 1.24575, 0.681344, -0.166634, 0.681344, 0.681344, 0.997603
+ 1.63249, 1.27769, 0.688673, -0.161987, 0.688673, 0.688673, 0.996833
+ 1.71513, 1.30963, 0.696662, -0.156978, 0.696662, 0.696662, 0.995971
+ 1.79982, 1.34157, 0.705326, -0.15161, 0.705326, 0.705326, 0.995011
+ 1.88654, 1.37351, 0.714684, -0.145886, 0.714684, 0.714684, 0.993947
+ 1.97531, 1.40546, 0.724755, -0.139809, 0.724755, 0.724755, 0.992773
+ 2.06612, 1.4374, 0.735561, -0.133381, 0.735561, 0.735561, 0.991484
+ 2.15896, 1.46934, 0.747127, -0.126605, 0.747127, 0.747127, 0.990073
+ 2.25385, 1.50128, 0.75948, -0.119484, 0.75948, 0.75948, 0.988534
+ 2.35078, 1.53323, 0.772647, -0.112019, 0.772647, 0.772647, 0.986861
+ 2.44975, 1.56517, 0.786661, -0.104213, 0.786661, 0.786661, 0.985048
+ 2.55076, 1.59711, 0.801553, -0.0960675, 0.801553, 0.801553, 0.98309
+ 2.65381, 1.62905, 0.817362, -0.0875853, 0.817362, 0.817362, 0.980979
+ 2.7589, 1.66099, 0.834126, -0.0787681, 0.834126, 0.834126, 0.978709
+ 2.86603, 1.69294, 0.851888, -0.0696177, 0.851888, 0.851888, 0.976275
+ 2.97521, 1.72488, 0.870691, -0.0601359, 0.870691, 0.870691, 0.97367
+ 3.08642, 1.75682, 0.890585, -0.0503245, 0.890585, 0.890585, 0.970887
+ 3.19967, 1.78876, 0.911622, -0.0401851, 0.911622, 0.911622, 0.967922
+ 3.31497, 1.82071, 0.933858, -0.0297193, 0.933858, 0.933858, 0.964767
+ 3.4323, 1.85265, 0.957351, -0.0189287, 0.957351, 0.957351, 0.961417
+ 3.55168, 1.88459, 0.982167, -0.00781474, 0.982167, 0.982167, 0.957866
+ 3.67309, 1.91653, 1.00837, 0.00362117, 1.00837, 1.00837, 0.954107
+ 3.79655, 1.94847, 1.03604, 0.0153776, 1.03604, 1.03604, 0.950137
+ 3.92205, 1.98042, 1.06525, 0.0274533, 1.06525, 1.06525, 0.945948
+ 4.04959, 2.01236, 1.09609, 0.039847, 1.09609, 1.09609, 0.941535
+ 4.17917, 2.0443, 1.12864, 0.0525574, 1.12864, 1.12864, 0.936894
+ 4.31078, 2.07624, 1.16301, 0.0655832, 1.16301, 1.16301, 0.932019
+ 4.44444, 2.10819, 1.19929, 0.0789235, 1.19929, 1.19929, 0.926906
+ 4.58014, 2.14013, 1.23759, 0.092577, 1.23759, 1.23759, 0.92155
+ 4.71789, 2.17207, 1.27803, 0.106543, 1.27803, 1.27803, 0.915947
+ 4.85767, 2.20401, 1.32075, 0.12082, 1.32075, 1.32075, 0.910093
+ 4.99949, 2.23595, 1.36586, 0.135407, 1.36586, 1.36586, 0.903984
+ 5.14335, 2.2679, 1.41352, 0.150303, 1.41352, 1.41352, 0.897617
+ 5.28926, 2.29984, 1.46389, 0.165507, 1.46389, 1.46389, 0.890988
+ 5.4372, 2.33178, 1.51712, 0.181019, 1.51712, 1.51712, 0.884096
+ 5.58718, 2.36372, 1.57339, 0.196837, 1.57339, 1.57339, 0.876938
+ 5.73921, 2.39566, 1.6329, 0.212961, 1.6329, 1.6329, 0.869513
+ 5.89328, 2.42761, 1.69586, 0.229389, 1.69586, 1.69586, 0.861818
+ 6.04938, 2.45955, 1.76247, 0.246122, 1.76247, 1.76247, 0.853853
+ 6.20753, 2.49149, 1.83298, 0.263157, 1.83298, 1.83298, 0.845617
+ 6.36772, 2.52343, 1.90764, 0.280496, 1.90764, 1.90764, 0.83711
+ 6.52995, 2.55538, 1.98671, 0.298135, 1.98671, 1.98671, 0.828334
+ 6.69421, 2.58732, 2.0705, 0.316076, 2.0705, 2.0705, 0.819288
+ 6.86052, 2.61926, 2.15932, 0.334317, 2.15932, 2.15932, 0.809975
+ 7.02887, 2.6512, 2.2535, 0.352858, 2.2535, 2.2535, 0.800396
+ 7.19927, 2.68314, 2.35341, 0.371697, 2.35341, 2.35341, 0.790555
+ 7.3717, 2.71509, 2.45943, 0.390835, 2.45943, 2.45943, 0.780454
+ 7.54617, 2.74703, 2.572, 0.410271, 2.572, 2.572, 0.770097
+ 7.72268, 2.77897, 2.69156, 0.430004, 2.69156, 2.69156, 0.759489
+ 7.90123, 2.81091, 2.8186, 0.450033, 2.8186, 2.8186, 0.748635
+ 8.08183, 2.84286, 2.95365, 0.470358, 2.95365, 2.95365, 0.737541
+ 8.26446, 2.8748, 3.09727, 0.490979, 3.09727, 3.09727, 0.726212
+ 8.44914, 2.90674, 3.25008, 0.511895, 3.25008, 3.25008, 0.714656
+ 8.63585, 2.93868, 3.41275, 0.533105, 3.41275, 3.41275, 0.70288
+ 8.82461, 2.97062, 3.58599, 0.554609, 3.58599, 3.58599, 0.690892
+ 9.01541, 3.00257, 3.77056, 0.576406, 3.77056, 3.77056, 0.678701
+ 9.20824, 3.03451, 3.96731, 0.598496, 3.96731, 3.96731, 0.666316
+ 9.40312, 3.06645, 4.17714, 0.620879, 4.17714, 4.17714, 0.653747
+ 9.60004, 3.09839, 4.40102, 0.643553, 4.40102, 4.40102, 0.641005
+ 9.799, 3.13034, 4.64001, 0.666519, 4.64001, 4.64001, 0.6281
+ 10, 3.16228, 4.89527, 0.689776, 4.89527, 4.89527, 0.615045
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon.xml
new file mode 100644
index 000000000..cfdba87c9
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon.xml
@@ -0,0 +1,262 @@
+
+
+
+
+
+ 300
+ 101325.0
+
+ Na+:9.3549
+ Cl-:9.3549
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+ 0.00
+ 50.0
+
+ Na+:4.0
+ Cl-:3.0
+ H+:9.0
+ OH-:3.5
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq) SiO2(aq)
+ NaH3SiO4(aq) H3SiO4-
+
+
+
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01,
+ 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188671E+04, -2.8827879E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ -240.34
+ 2
+
+ -103.98186, -103.98186
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ -167.08
+ 2
+
+ -74.20664, -74.20664
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 0.0
+
+
+
+ 0.0
+ 2
+
+ 0.0, 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ -230.015
+ 2
+
+ -91.50963 , -85.
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -96.03E3
+ 2
+
+
+ -174.5057463, -174.5057463
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 O:1 H:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -472.4865
+ 2
+
+
+ -195.02569, -195.02569
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:2
+
+ 1.3
+
+ 0.0
+ nonpolarNeutral
+
+
+ -890.
+ 2
+
+ -363.2104, -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Na:1 H:3 Si:1 O:4
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ -890.
+ 2
+
+ -694.683918 , -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -588.0556 , -450
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon_blessed.csv
new file mode 100644
index 000000000..8251579c8
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_acommon_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.964518, -0.0156899, 0.964518, 0.964518, 1
+ 0.00408122, 0.0638844, 0.932597, -0.0303058, 0.932597, 0.932597, 1
+ 0.00918274, 0.0958266, 0.903745, -0.0439543, 0.903745, 0.903745, 1.00001
+ 0.0163249, 0.127769, 0.87755, -0.0567283, 0.87755, 0.87755, 1.00002
+ 0.0255076, 0.159711, 0.853671, -0.0687094, 0.853671, 0.853671, 1.00004
+ 0.0367309, 0.191653, 0.831823, -0.0799691, 0.831823, 0.831823, 1.00007
+ 0.0499949, 0.223595, 0.811763, -0.0905707, 0.811763, 0.811763, 1.00011
+ 0.0652995, 0.255538, 0.793286, -0.10057, 0.793286, 0.793286, 1.00016
+ 0.0826446, 0.28748, 0.776216, -0.110018, 0.776216, 0.776216, 1.00021
+ 0.10203, 0.319422, 0.760401, -0.118957, 0.760401, 0.760401, 1.00028
+ 0.123457, 0.351364, 0.745712, -0.127429, 0.745712, 0.745712, 1.00035
+ 0.146924, 0.383306, 0.732034, -0.135469, 0.732034, 0.732034, 1.00044
+ 0.172431, 0.415249, 0.719269, -0.143109, 0.719269, 0.719269, 1.00054
+ 0.19998, 0.447191, 0.70733, -0.150378, 0.70733, 0.70733, 1.00064
+ 0.229568, 0.479133, 0.696141, -0.157303, 0.696141, 0.696141, 1.00076
+ 0.261198, 0.511075, 0.685635, -0.163907, 0.685635, 0.685635, 1.00088
+ 0.294868, 0.543017, 0.675752, -0.170213, 0.675752, 0.675752, 1.00101
+ 0.330579, 0.57496, 0.666439, -0.17624, 0.666439, 0.666439, 1.00116
+ 0.36833, 0.606902, 0.657649, -0.182006, 0.657649, 0.657649, 1.00131
+ 0.408122, 0.638844, 0.649341, -0.187527, 0.649341, 0.649341, 1.00146
+ 0.449954, 0.670786, 0.641475, -0.19282, 0.641475, 0.641475, 1.00163
+ 0.493827, 0.702728, 0.634019, -0.197898, 0.634019, 0.634019, 1.0018
+ 0.539741, 0.734671, 0.626941, -0.202773, 0.626941, 0.626941, 1.00198
+ 0.587695, 0.766613, 0.620214, -0.207458, 0.620214, 0.620214, 1.00217
+ 0.63769, 0.798555, 0.613813, -0.211964, 0.613813, 0.613813, 1.00236
+ 0.689726, 0.830497, 0.607715, -0.2163, 0.607715, 0.607715, 1.00255
+ 0.743802, 0.862439, 0.601899, -0.220476, 0.601899, 0.601899, 1.00275
+ 0.799918, 0.894382, 0.596347, -0.224501, 0.596347, 0.596347, 1.00296
+ 0.858076, 0.926324, 0.59104, -0.228383, 0.59104, 0.59104, 1.00316
+ 0.918274, 0.958266, 0.585964, -0.232129, 0.585964, 0.585964, 1.00337
+ 0.980512, 0.990208, 0.581103, -0.235747, 0.581103, 0.581103, 1.00358
+ 1.04479, 1.02215, 0.576445, -0.239242, 0.576445, 0.576445, 1.0038
+ 1.11111, 1.05409, 0.571977, -0.242621, 0.571977, 0.571977, 1.00401
+ 1.17947, 1.08603, 0.567688, -0.24589, 0.567688, 0.567688, 1.00422
+ 1.24987, 1.11798, 0.563568, -0.249054, 0.563568, 0.563568, 1.00444
+ 1.32231, 1.14992, 0.559606, -0.252117, 0.559606, 0.559606, 1.00465
+ 1.3968, 1.18186, 0.555795, -0.255086, 0.555795, 0.555795, 1.00486
+ 1.47332, 1.2138, 0.552125, -0.257963, 0.552125, 0.552125, 1.00507
+ 1.55188, 1.24575, 0.548589, -0.260753, 0.548589, 0.548589, 1.00527
+ 1.63249, 1.27769, 0.54518, -0.26346, 0.54518, 0.54518, 1.00547
+ 1.71513, 1.30963, 0.541891, -0.266088, 0.541891, 0.541891, 1.00567
+ 1.79982, 1.34157, 0.538716, -0.26864, 0.538716, 0.538716, 1.00586
+ 1.88654, 1.37351, 0.535649, -0.271119, 0.535649, 0.535649, 1.00605
+ 1.97531, 1.40546, 0.532686, -0.273529, 0.532686, 0.532686, 1.00623
+ 2.06612, 1.4374, 0.52982, -0.275872, 0.52982, 0.52982, 1.0064
+ 2.15896, 1.46934, 0.527047, -0.278151, 0.527047, 0.527047, 1.00656
+ 2.25385, 1.50128, 0.524363, -0.280368, 0.524363, 0.524363, 1.00672
+ 2.35078, 1.53323, 0.521763, -0.282527, 0.521763, 0.521763, 1.00686
+ 2.44975, 1.56517, 0.519244, -0.284629, 0.519244, 0.519244, 1.007
+ 2.55076, 1.59711, 0.516802, -0.286676, 0.516802, 0.516802, 1.00712
+ 2.65381, 1.62905, 0.514433, -0.288671, 0.514433, 0.514433, 1.00724
+ 2.7589, 1.66099, 0.512134, -0.290616, 0.512134, 0.512134, 1.00734
+ 2.86603, 1.69294, 0.509903, -0.292512, 0.509903, 0.509903, 1.00742
+ 2.97521, 1.72488, 0.507736, -0.294362, 0.507736, 0.507736, 1.0075
+ 3.08642, 1.75682, 0.505631, -0.296166, 0.505631, 0.505631, 1.00756
+ 3.19967, 1.78876, 0.503585, -0.297928, 0.503585, 0.503585, 1.0076
+ 3.31497, 1.82071, 0.501595, -0.299647, 0.501595, 0.501595, 1.00763
+ 3.4323, 1.85265, 0.499659, -0.301326, 0.499659, 0.499659, 1.00764
+ 3.55168, 1.88459, 0.497776, -0.302966, 0.497776, 0.497776, 1.00764
+ 3.67309, 1.91653, 0.495943, -0.304568, 0.495943, 0.495943, 1.00761
+ 3.79655, 1.94847, 0.494158, -0.306135, 0.494158, 0.494158, 1.00757
+ 3.92205, 1.98042, 0.492419, -0.307666, 0.492419, 0.492419, 1.00751
+ 4.04959, 2.01236, 0.490724, -0.309163, 0.490724, 0.490724, 1.00743
+ 4.17917, 2.0443, 0.489072, -0.310627, 0.489072, 0.489072, 1.00732
+ 4.31078, 2.07624, 0.487462, -0.312059, 0.487462, 0.487462, 1.0072
+ 4.44444, 2.10819, 0.485891, -0.313461, 0.485891, 0.485891, 1.00705
+ 4.58014, 2.14013, 0.484358, -0.314833, 0.484358, 0.484358, 1.00688
+ 4.71789, 2.17207, 0.482863, -0.316176, 0.482863, 0.482863, 1.00668
+ 4.85767, 2.20401, 0.481403, -0.317492, 0.481403, 0.481403, 1.00646
+ 4.99949, 2.23595, 0.479977, -0.31878, 0.479977, 0.479977, 1.00622
+ 5.14335, 2.2679, 0.478584, -0.320042, 0.478584, 0.478584, 1.00594
+ 5.28926, 2.29984, 0.477223, -0.321278, 0.477223, 0.477223, 1.00565
+ 5.4372, 2.33178, 0.475894, -0.32249, 0.475894, 0.475894, 1.00532
+ 5.58718, 2.36372, 0.474594, -0.323678, 0.474594, 0.474594, 1.00497
+ 5.73921, 2.39566, 0.473323, -0.324843, 0.473323, 0.473323, 1.00458
+ 5.89328, 2.42761, 0.472079, -0.325985, 0.472079, 0.472079, 1.00417
+ 6.04938, 2.45955, 0.470863, -0.327105, 0.470863, 0.470863, 1.00373
+ 6.20753, 2.49149, 0.469673, -0.328204, 0.469673, 0.469673, 1.00325
+ 6.36772, 2.52343, 0.468509, -0.329282, 0.468509, 0.468509, 1.00275
+ 6.52995, 2.55538, 0.467369, -0.33034, 0.467369, 0.467369, 1.00221
+ 6.69421, 2.58732, 0.466253, -0.331379, 0.466253, 0.466253, 1.00164
+ 6.86052, 2.61926, 0.465159, -0.332398, 0.465159, 0.465159, 1.00104
+ 7.02887, 2.6512, 0.464088, -0.333399, 0.464088, 0.464088, 1.0004
+ 7.19927, 2.68314, 0.463039, -0.334382, 0.463039, 0.463039, 0.999728
+ 7.3717, 2.71509, 0.462011, -0.335348, 0.462011, 0.462011, 0.99902
+ 7.54617, 2.74703, 0.461003, -0.336296, 0.461003, 0.461003, 0.998277
+ 7.72268, 2.77897, 0.460015, -0.337228, 0.460015, 0.460015, 0.997496
+ 7.90123, 2.81091, 0.459046, -0.338144, 0.459046, 0.459046, 0.996679
+ 8.08183, 2.84286, 0.458096, -0.339044, 0.458096, 0.458096, 0.995824
+ 8.26446, 2.8748, 0.457164, -0.339928, 0.457164, 0.457164, 0.994931
+ 8.44914, 2.90674, 0.456249, -0.340798, 0.456249, 0.456249, 0.993999
+ 8.63585, 2.93868, 0.455352, -0.341653, 0.455352, 0.455352, 0.993028
+ 8.82461, 2.97062, 0.454471, -0.342494, 0.454471, 0.454471, 0.992017
+ 9.01541, 3.00257, 0.453607, -0.34332, 0.453607, 0.453607, 0.990966
+ 9.20824, 3.03451, 0.452758, -0.344134, 0.452758, 0.452758, 0.989874
+ 9.40312, 3.06645, 0.451925, -0.344934, 0.451925, 0.451925, 0.988741
+ 9.60004, 3.09839, 0.451106, -0.345721, 0.451106, 0.451106, 0.987567
+ 9.799, 3.13034, 0.450302, -0.346496, 0.450302, 0.450302, 0.98635
+ 10, 3.16228, 0.449512, -0.347258, 0.449512, 0.449512, 0.98509
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak.xml
new file mode 100644
index 000000000..0a6427394
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak.xml
@@ -0,0 +1,262 @@
+
+
+
+
+
+ 300
+ 101325.0
+
+ Na+:9.3549
+ Cl-:9.3549
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+ 0.0410
+ 50.0
+
+ Na+:4.0
+ Cl-:3.0
+ H+:9.0
+ OH-:3.5
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq) SiO2(aq)
+ NaH3SiO4(aq) H3SiO4-
+
+
+
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01,
+ 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188671E+04, -2.8827879E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ -240.34
+ 2
+
+ -103.98186, -103.98186
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ -167.08
+ 2
+
+ -74.20664, -74.20664
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 0.0
+
+
+
+ 0.0
+ 2
+
+ 0.0, 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ -230.015
+ 2
+
+ -91.50963 , -85.
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -96.03E3
+ 2
+
+
+ -174.5057463, -174.5057463
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 O:1 H:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -472.4865
+ 2
+
+
+ -195.02569, -195.02569
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:2
+
+ 1.3
+
+ 0.0
+ nonpolarNeutral
+
+
+ -890.
+ 2
+
+ -363.2104, -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Na:1 H:3 Si:1 O:4
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ -890.
+ 2
+
+ -694.683918 , -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -588.0556 , -450
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak_blessed.csv
new file mode 100644
index 000000000..46d2837e5
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_bdotak_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.96461, -0.0156485, 0.964786, 0.964433, 1
+ 0.00408122, 0.0638844, 0.932951, -0.0301413, 0.933588, 0.932314, 1
+ 0.00918274, 0.0958266, 0.90451, -0.0435866, 0.90581, 0.903212, 1.00001
+ 0.0163249, 0.127769, 0.878865, -0.056078, 0.880969, 0.876765, 1.00002
+ 0.0255076, 0.159711, 0.855663, -0.0676974, 0.858671, 0.852665, 1.00004
+ 0.0367309, 0.191653, 0.83461, -0.0785164, 0.838588, 0.830651, 1.00007
+ 0.0499949, 0.223595, 0.815458, -0.0885983, 0.820448, 0.810499, 1.00011
+ 0.0652995, 0.255538, 0.797997, -0.097999, 0.804022, 0.792016, 1.00015
+ 0.0826446, 0.28748, 0.782046, -0.106768, 0.789119, 0.775035, 1.0002
+ 0.10203, 0.319422, 0.767451, -0.114949, 0.775574, 0.759412, 1.00026
+ 0.123457, 0.351364, 0.754079, -0.122583, 0.763248, 0.745021, 1.00033
+ 0.146924, 0.383306, 0.741815, -0.129704, 0.752019, 0.73175, 1.00041
+ 0.172431, 0.415249, 0.730559, -0.136345, 0.741784, 0.719503, 1.00049
+ 0.19998, 0.447191, 0.720222, -0.142534, 0.732454, 0.708194, 1.00058
+ 0.229568, 0.479133, 0.710728, -0.148297, 0.723949, 0.697747, 1.00067
+ 0.261198, 0.511075, 0.702008, -0.153658, 0.716202, 0.688096, 1.00077
+ 0.294868, 0.543017, 0.694003, -0.158638, 0.709151, 0.67918, 1.00087
+ 0.330579, 0.57496, 0.686661, -0.163258, 0.702744, 0.670946, 1.00098
+ 0.36833, 0.606902, 0.679933, -0.167534, 0.696934, 0.663346, 1.00109
+ 0.408122, 0.638844, 0.673777, -0.171484, 0.69168, 0.656338, 1.00119
+ 0.449954, 0.670786, 0.668157, -0.175121, 0.686945, 0.649883, 1.0013
+ 0.493827, 0.702728, 0.663039, -0.178461, 0.682697, 0.643947, 1.0014
+ 0.539741, 0.734671, 0.658392, -0.181516, 0.678905, 0.638499, 1.0015
+ 0.587695, 0.766613, 0.654189, -0.184296, 0.675544, 0.63351, 1.0016
+ 0.63769, 0.798555, 0.650407, -0.186815, 0.672591, 0.628955, 1.00169
+ 0.689726, 0.830497, 0.647023, -0.18908, 0.670024, 0.624812, 1.00177
+ 0.743802, 0.862439, 0.644018, -0.191102, 0.667825, 0.621059, 1.00184
+ 0.799918, 0.894382, 0.641374, -0.192889, 0.665978, 0.617678, 1.0019
+ 0.858076, 0.926324, 0.639074, -0.194449, 0.664467, 0.614651, 1.00195
+ 0.918274, 0.958266, 0.637104, -0.19579, 0.663278, 0.611963, 1.00198
+ 0.980512, 0.990208, 0.635451, -0.196918, 0.662399, 0.6096, 1.00199
+ 1.04479, 1.02215, 0.634103, -0.19784, 0.66182, 0.607548, 1.00199
+ 1.11111, 1.05409, 0.63305, -0.198562, 0.66153, 0.605797, 1.00196
+ 1.17947, 1.08603, 0.632282, -0.199089, 0.661521, 0.604335, 1.00192
+ 1.24987, 1.11798, 0.631789, -0.199428, 0.661785, 0.603153, 1.00184
+ 1.32231, 1.14992, 0.631565, -0.199582, 0.662315, 0.602242, 1.00174
+ 1.3968, 1.18186, 0.631602, -0.199557, 0.663105, 0.601595, 1.00162
+ 1.47332, 1.2138, 0.631893, -0.199356, 0.664149, 0.601203, 1.00146
+ 1.55188, 1.24575, 0.632434, -0.198985, 0.665443, 0.601062, 1.00126
+ 1.63249, 1.27769, 0.633219, -0.198446, 0.666982, 0.601165, 1.00103
+ 1.71513, 1.30963, 0.634244, -0.197744, 0.668763, 0.601506, 1.00077
+ 1.79982, 1.34157, 0.635504, -0.196881, 0.670782, 0.602082, 1.00046
+ 1.88654, 1.37351, 0.636998, -0.195862, 0.673038, 0.602888, 1.00011
+ 1.97531, 1.40546, 0.638721, -0.194689, 0.675527, 0.60392, 0.999713
+ 2.06612, 1.4374, 0.640671, -0.193365, 0.678248, 0.605176, 0.999269
+ 2.15896, 1.46934, 0.642847, -0.191892, 0.681201, 0.606653, 0.998774
+ 2.25385, 1.50128, 0.645247, -0.190274, 0.684384, 0.608348, 0.998227
+ 2.35078, 1.53323, 0.647869, -0.188513, 0.687796, 0.61026, 0.997624
+ 2.44975, 1.56517, 0.650713, -0.18661, 0.691438, 0.612387, 0.996964
+ 2.55076, 1.59711, 0.653779, -0.184569, 0.695309, 0.614729, 0.996242
+ 2.65381, 1.62905, 0.657065, -0.182392, 0.699411, 0.617283, 0.995457
+ 2.7589, 1.66099, 0.660573, -0.180079, 0.703744, 0.62005, 0.994605
+ 2.86603, 1.69294, 0.664302, -0.177634, 0.70831, 0.623029, 0.993685
+ 2.97521, 1.72488, 0.668254, -0.175058, 0.713109, 0.626221, 0.992693
+ 3.08642, 1.75682, 0.67243, -0.172353, 0.718143, 0.629626, 0.991627
+ 3.19967, 1.78876, 0.676831, -0.16952, 0.723416, 0.633245, 0.990483
+ 3.31497, 1.82071, 0.681458, -0.166561, 0.728928, 0.637079, 0.989259
+ 3.4323, 1.85265, 0.686314, -0.163477, 0.734683, 0.641128, 0.987953
+ 3.55168, 1.88459, 0.6914, -0.160271, 0.740684, 0.645395, 0.986561
+ 3.67309, 1.91653, 0.69672, -0.156942, 0.746934, 0.649882, 0.985081
+ 3.79655, 1.94847, 0.702275, -0.153493, 0.753435, 0.654589, 0.98351
+ 3.92205, 1.98042, 0.70807, -0.149924, 0.760193, 0.65952, 0.981845
+ 4.04959, 2.01236, 0.714106, -0.146237, 0.76721, 0.664677, 0.980083
+ 4.17917, 2.0443, 0.720388, -0.142433, 0.774492, 0.670063, 0.978221
+ 4.31078, 2.07624, 0.726919, -0.138514, 0.782043, 0.675681, 0.976257
+ 4.44444, 2.10819, 0.733704, -0.134479, 0.789867, 0.681535, 0.974188
+ 4.58014, 2.14013, 0.740747, -0.13033, 0.79797, 0.687627, 0.972012
+ 4.71789, 2.17207, 0.748051, -0.126069, 0.806358, 0.693961, 0.969724
+ 4.85767, 2.20401, 0.755623, -0.121695, 0.815035, 0.700542, 0.967324
+ 4.99949, 2.23595, 0.763467, -0.11721, 0.824008, 0.707374, 0.964808
+ 5.14335, 2.2679, 0.771588, -0.112614, 0.833283, 0.714462, 0.962173
+ 5.28926, 2.29984, 0.779993, -0.107909, 0.842867, 0.721809, 0.959418
+ 5.4372, 2.33178, 0.788687, -0.103095, 0.852767, 0.729423, 0.956539
+ 5.58718, 2.36372, 0.797676, -0.0981733, 0.862989, 0.737306, 0.953534
+ 5.73921, 2.39566, 0.806968, -0.0931439, 0.873542, 0.745467, 0.950401
+ 5.89328, 2.42761, 0.816568, -0.0880077, 0.884434, 0.753909, 0.947137
+ 6.04938, 2.45955, 0.826484, -0.0827656, 0.895672, 0.762641, 0.94374
+ 6.20753, 2.49149, 0.836724, -0.077418, 0.907265, 0.771667, 0.940208
+ 6.36772, 2.52343, 0.847295, -0.0719656, 0.919222, 0.780995, 0.936539
+ 6.52995, 2.55538, 0.858205, -0.0664089, 0.931553, 0.790632, 0.93273
+ 6.69421, 2.58732, 0.869463, -0.0607487, 0.944267, 0.800586, 0.92878
+ 6.86052, 2.61926, 0.881079, -0.0549852, 0.957374, 0.810864, 0.924687
+ 7.02887, 2.6512, 0.89306, -0.0491192, 0.970885, 0.821474, 0.920449
+ 7.19927, 2.68314, 0.905417, -0.0431511, 0.98481, 0.832425, 0.916064
+ 7.3717, 2.71509, 0.91816, -0.0370814, 0.999162, 0.843726, 0.911531
+ 7.54617, 2.74703, 0.9313, -0.0309106, 1.01395, 0.855385, 0.906849
+ 7.72268, 2.77897, 0.944846, -0.0246391, 1.02919, 0.867413, 0.902015
+ 7.90123, 2.81091, 0.95881, -0.0182673, 1.04489, 0.879819, 0.89703
+ 8.08183, 2.84286, 0.973205, -0.0117958, 1.06107, 0.892613, 0.891891
+ 8.26446, 2.8748, 0.988042, -0.00522478, 1.07774, 0.905807, 0.886597
+ 8.44914, 2.90674, 1.00333, 0.00144521, 1.09492, 0.919412, 0.881149
+ 8.63585, 2.93868, 1.01909, 0.00821382, 1.11261, 0.933438, 0.875545
+ 8.82461, 2.97062, 1.03533, 0.0150807, 1.13083, 0.9479, 0.869784
+ 9.01541, 3.00257, 1.05207, 0.0220455, 1.14961, 0.962808, 0.863867
+ 9.20824, 3.03451, 1.06932, 0.0291078, 1.16896, 0.978176, 0.857793
+ 9.40312, 3.06645, 1.08709, 0.0362673, 1.18889, 0.994018, 0.851562
+ 9.60004, 3.09839, 1.10541, 0.0435238, 1.20942, 1.01035, 0.845174
+ 9.799, 3.13034, 1.12429, 0.0508768, 1.23057, 1.02718, 0.83863
+ 10, 3.16228, 1.14374, 0.0583261, 1.25237, 1.04453, 0.831929
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_blessed.csv
new file mode 100644
index 000000000..6319b5c91
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.96461, -0.0156485, 0.964786, 0.964433, 1
+ 0.00408122, 0.0638844, 0.932951, -0.0301413, 0.933588, 0.932314, 1
+ 0.00918274, 0.0958266, 0.90451, -0.0435866, 0.90581, 0.903212, 1.00001
+ 0.0163249, 0.127769, 0.878865, -0.056078, 0.880969, 0.876765, 1.00002
+ 0.0255076, 0.159711, 0.855663, -0.0676974, 0.858671, 0.852665, 1.00004
+ 0.0367309, 0.191653, 0.83461, -0.0785164, 0.838588, 0.830651, 1.00007
+ 0.0499949, 0.223595, 0.815458, -0.0885983, 0.820448, 0.810499, 1.0001
+ 0.0652995, 0.255538, 0.797997, -0.097999, 0.804022, 0.792016, 1.00014
+ 0.0826446, 0.28748, 0.782046, -0.106768, 0.789119, 0.775035, 1.00019
+ 0.10203, 0.319422, 0.767451, -0.114949, 0.775574, 0.759412, 1.00024
+ 0.123457, 0.351364, 0.754079, -0.122583, 0.763248, 0.745021, 1.00031
+ 0.146924, 0.383306, 0.741815, -0.129704, 0.752019, 0.73175, 1.00038
+ 0.172431, 0.415249, 0.730559, -0.136345, 0.741784, 0.719503, 1.00046
+ 0.19998, 0.447191, 0.720222, -0.142534, 0.732454, 0.708194, 1.00054
+ 0.229568, 0.479133, 0.710728, -0.148297, 0.723949, 0.697747, 1.00063
+ 0.261198, 0.511075, 0.702008, -0.153658, 0.716202, 0.688096, 1.00072
+ 0.294868, 0.543017, 0.694003, -0.158638, 0.709151, 0.67918, 1.00082
+ 0.330579, 0.57496, 0.686661, -0.163258, 0.702744, 0.670946, 1.00092
+ 0.36833, 0.606902, 0.679933, -0.167534, 0.696934, 0.663346, 1.00103
+ 0.408122, 0.638844, 0.673777, -0.171484, 0.69168, 0.656338, 1.00114
+ 0.449954, 0.670786, 0.668157, -0.175121, 0.686945, 0.649883, 1.00125
+ 0.493827, 0.702728, 0.663039, -0.178461, 0.682697, 0.643947, 1.00136
+ 0.539741, 0.734671, 0.658392, -0.181516, 0.678905, 0.638499, 1.00147
+ 0.587695, 0.766613, 0.654189, -0.184296, 0.675544, 0.63351, 1.00157
+ 0.63769, 0.798555, 0.650407, -0.186815, 0.672591, 0.628955, 1.00168
+ 0.689726, 0.830497, 0.647023, -0.18908, 0.670024, 0.624812, 1.00178
+ 0.743802, 0.862439, 0.644018, -0.191102, 0.667825, 0.621059, 1.00188
+ 0.799918, 0.894382, 0.641374, -0.192889, 0.665978, 0.617678, 1.00197
+ 0.858076, 0.926324, 0.639074, -0.194449, 0.664467, 0.614651, 1.00205
+ 0.918274, 0.958266, 0.637104, -0.19579, 0.663278, 0.611963, 1.00212
+ 0.980512, 0.990208, 0.635451, -0.196918, 0.662399, 0.6096, 1.00219
+ 1.04479, 1.02215, 0.634103, -0.19784, 0.66182, 0.607548, 1.00224
+ 1.11111, 1.05409, 0.63305, -0.198562, 0.66153, 0.605797, 1.00227
+ 1.17947, 1.08603, 0.632282, -0.199089, 0.661521, 0.604335, 1.0023
+ 1.24987, 1.11798, 0.631789, -0.199428, 0.661785, 0.603153, 1.0023
+ 1.32231, 1.14992, 0.631565, -0.199582, 0.662315, 0.602242, 1.00228
+ 1.3968, 1.18186, 0.631602, -0.199557, 0.663105, 0.601595, 1.00225
+ 1.47332, 1.2138, 0.631893, -0.199356, 0.664149, 0.601203, 1.00219
+ 1.55188, 1.24575, 0.632434, -0.198985, 0.665443, 0.601062, 1.0021
+ 1.63249, 1.27769, 0.633219, -0.198446, 0.666982, 0.601165, 1.00199
+ 1.71513, 1.30963, 0.634244, -0.197744, 0.668763, 0.601506, 1.00185
+ 1.79982, 1.34157, 0.635504, -0.196881, 0.670782, 0.602082, 1.00167
+ 1.88654, 1.37351, 0.636998, -0.195862, 0.673038, 0.602888, 1.00146
+ 1.97531, 1.40546, 0.638721, -0.194689, 0.675527, 0.60392, 1.00122
+ 2.06612, 1.4374, 0.640671, -0.193365, 0.678248, 0.605176, 1.00093
+ 2.15896, 1.46934, 0.642847, -0.191892, 0.681201, 0.606653, 1.0006
+ 2.25385, 1.50128, 0.645247, -0.190274, 0.684384, 0.608348, 1.00022
+ 2.35078, 1.53323, 0.647869, -0.188513, 0.687796, 0.61026, 0.9998
+ 2.44975, 1.56517, 0.650713, -0.18661, 0.691438, 0.612387, 0.999326
+ 2.55076, 1.59711, 0.653779, -0.184569, 0.695309, 0.614729, 0.998798
+ 2.65381, 1.62905, 0.657065, -0.182392, 0.699411, 0.617283, 0.998212
+ 2.7589, 1.66099, 0.660573, -0.180079, 0.703744, 0.62005, 0.997567
+ 2.86603, 1.69294, 0.664302, -0.177634, 0.70831, 0.623029, 0.996858
+ 2.97521, 1.72488, 0.668254, -0.175058, 0.713109, 0.626221, 0.996083
+ 3.08642, 1.75682, 0.669172, -0.174462, 0.714219, 0.626967, 0.998696
+ 3.19967, 1.78876, 0.669172, -0.174462, 0.714219, 0.626967, 1.00236
+ 3.31497, 1.82071, 0.669172, -0.174462, 0.714219, 0.626967, 1.00609
+ 3.4323, 1.85265, 0.669172, -0.174462, 0.714219, 0.626967, 1.00989
+ 3.55168, 1.88459, 0.669172, -0.174462, 0.714219, 0.626967, 1.01375
+ 3.67309, 1.91653, 0.669172, -0.174462, 0.714219, 0.626967, 1.01768
+ 3.79655, 1.94847, 0.669172, -0.174462, 0.714219, 0.626967, 1.02167
+ 3.92205, 1.98042, 0.669172, -0.174462, 0.714219, 0.626967, 1.02573
+ 4.04959, 2.01236, 0.669172, -0.174462, 0.714219, 0.626967, 1.02986
+ 4.17917, 2.0443, 0.669172, -0.174462, 0.714219, 0.626967, 1.03405
+ 4.31078, 2.07624, 0.669172, -0.174462, 0.714219, 0.626967, 1.03831
+ 4.44444, 2.10819, 0.669172, -0.174462, 0.714219, 0.626967, 1.04264
+ 4.58014, 2.14013, 0.669172, -0.174462, 0.714219, 0.626967, 1.04703
+ 4.71789, 2.17207, 0.669172, -0.174462, 0.714219, 0.626967, 1.05149
+ 4.85767, 2.20401, 0.669172, -0.174462, 0.714219, 0.626967, 1.05601
+ 4.99949, 2.23595, 0.669172, -0.174462, 0.714219, 0.626967, 1.0606
+ 5.14335, 2.2679, 0.669172, -0.174462, 0.714219, 0.626967, 1.06525
+ 5.28926, 2.29984, 0.669172, -0.174462, 0.714219, 0.626967, 1.06997
+ 5.4372, 2.33178, 0.669172, -0.174462, 0.714219, 0.626967, 1.07476
+ 5.58718, 2.36372, 0.669172, -0.174462, 0.714219, 0.626967, 1.07961
+ 5.73921, 2.39566, 0.669172, -0.174462, 0.714219, 0.626967, 1.08453
+ 5.89328, 2.42761, 0.669172, -0.174462, 0.714219, 0.626967, 1.08952
+ 6.04938, 2.45955, 0.669172, -0.174462, 0.714219, 0.626967, 1.09457
+ 6.20753, 2.49149, 0.669172, -0.174462, 0.714219, 0.626967, 1.09969
+ 6.36772, 2.52343, 0.669172, -0.174462, 0.714219, 0.626967, 1.10487
+ 6.52995, 2.55538, 0.669172, -0.174462, 0.714219, 0.626967, 1.11012
+ 6.69421, 2.58732, 0.669172, -0.174462, 0.714219, 0.626967, 1.11544
+ 6.86052, 2.61926, 0.669172, -0.174462, 0.714219, 0.626967, 1.12082
+ 7.02887, 2.6512, 0.669172, -0.174462, 0.714219, 0.626967, 1.12626
+ 7.19927, 2.68314, 0.669172, -0.174462, 0.714219, 0.626967, 1.13178
+ 7.3717, 2.71509, 0.669172, -0.174462, 0.714219, 0.626967, 1.13736
+ 7.54617, 2.74703, 0.669172, -0.174462, 0.714219, 0.626967, 1.143
+ 7.72268, 2.77897, 0.669172, -0.174462, 0.714219, 0.626967, 1.14871
+ 7.90123, 2.81091, 0.669172, -0.174462, 0.714219, 0.626967, 1.15449
+ 8.08183, 2.84286, 0.669172, -0.174462, 0.714219, 0.626967, 1.16034
+ 8.26446, 2.8748, 0.669172, -0.174462, 0.714219, 0.626967, 1.16625
+ 8.44914, 2.90674, 0.669172, -0.174462, 0.714219, 0.626967, 1.17222
+ 8.63585, 2.93868, 0.669172, -0.174462, 0.714219, 0.626967, 1.17826
+ 8.82461, 2.97062, 0.669172, -0.174462, 0.714219, 0.626967, 1.18437
+ 9.01541, 3.00257, 0.669172, -0.174462, 0.714219, 0.626967, 1.19054
+ 9.20824, 3.03451, 0.669172, -0.174462, 0.714219, 0.626967, 1.19678
+ 9.40312, 3.06645, 0.669172, -0.174462, 0.714219, 0.626967, 1.20309
+ 9.60004, 3.09839, 0.669172, -0.174462, 0.714219, 0.626967, 1.20946
+ 9.799, 3.13034, 0.669172, -0.174462, 0.714219, 0.626967, 1.2159
+ 10, 3.16228, 0.669172, -0.174462, 0.714219, 0.626967, 1.2224
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute.xml b/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute.xml
new file mode 100644
index 000000000..826575880
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute.xml
@@ -0,0 +1,262 @@
+
+
+
+
+
+ 300
+ 101325.0
+
+ Na+:9.3549
+ Cl-:9.3549
+ H+:1.0499E-8
+ OH-:1.3765E-6
+ NaCl(aq):0.98492
+ NaOH(aq):3.8836E-6
+ NaH3SiO4(aq):6.8798E-5
+ SiO2(aq):3.0179E-5
+ H3SiO4-:1.0231E-6
+
+
+
+
+
+
+
+ 1.172576
+
+ 3.28640E9
+ 3.0
+
+
+ Na+:4.0
+ Cl-:3.0
+ H+:9.0
+ OH-:3.5
+
+
+ H2O(L)
+
+ O H C Fe Si N Na Cl
+
+ H2O(L) Na+ Cl- H+ OH- NaCl(aq) NaOH(aq) SiO2(aq)
+ NaH3SiO4(aq) H3SiO4-
+
+
+
+
+
+
+
+
+
+ H:2 O:1
+
+
+
+ 7.255750050E+01, -6.624454020E-01,
+ 2.561987460E-03, -4.365919230E-06,
+ 2.781789810E-09, -4.188671E+04, -2.8827879E+02
+
+
+
+
+ 0.05555555
+
+
+
+
+ Na:1
+ +1
+
+
+ -240.34
+ 2
+
+ -103.98186, -103.98186
+
+
+ 298.15, 333.15
+
+
+
+
+ 1.3
+
+
+
+
+ Cl:1
+ -1
+
+ 1.3
+
+
+
+ -167.08
+ 2
+
+ -74.20664, -74.20664
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ H:1
+ +1
+
+ 0.0
+
+
+
+ 0.0
+ 2
+
+ 0.0, 0.0
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ O:1 H:1
+ -1
+
+ 1.3
+
+
+
+ -230.015
+ 2
+
+ -91.50963 , -85.
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 Cl:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -96.03E3
+ 2
+
+
+ -174.5057463, -174.5057463
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+ Na:1 O:1 H:1
+
+ 1.3
+
+ -1.0
+ weakAcidAssociated
+
+
+ -472.4865
+ 2
+
+
+ -195.02569, -195.02569
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:2
+
+ 1.3
+
+ 0.0
+ nonpolarNeutral
+
+
+ -890.
+ 2
+
+ -363.2104, -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Na:1 H:3 Si:1 O:4
+ 0
+ -1.0
+ weakAcidAssociated
+
+ 1.3
+
+
+
+ -890.
+ 2
+
+ -694.683918 , -300.
+
+
+ 298.15, 323.15
+
+
+
+
+
+
+ Si:1 O:4 H:3
+ -1
+ -1.0
+ chargedSpecies
+
+ 1.3
+
+
+
+ 0.0
+ 2
+
+ -588.0556 , -450
+
+
+ 298.15, 333.15
+
+
+
+
+
+
+
+
diff --git a/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute_blessed.csv b/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute_blessed.csv
new file mode 100644
index 000000000..73aeba6d6
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_NaCl_dilute_blessed.csv
@@ -0,0 +1,101 @@
+ Is, sqrtIs, meanAc, log10(meanAC), acMol_Na+,, acMol_Cl-, ac_Water
+ 0, 0, 1, 0, 1, 1, 1
+ 0.0010203, 0.0319422, 0.963238, -0.0162664, 0.963238, 0.963238, 1
+ 0.00408122, 0.0638844, 0.927828, -0.0325327, 0.927828, 0.927828, 1
+ 0.00918274, 0.0958266, 0.893719, -0.0487991, 0.893719, 0.893719, 1.00001
+ 0.0163249, 0.127769, 0.860864, -0.0650654, 0.860864, 0.860864, 1.00003
+ 0.0255076, 0.159711, 0.829217, -0.0813318, 0.829217, 0.829217, 1.00006
+ 0.0367309, 0.191653, 0.798733, -0.0975981, 0.798733, 0.798733, 1.0001
+ 0.0499949, 0.223595, 0.769371, -0.113864, 0.769371, 0.769371, 1.00016
+ 0.0652995, 0.255538, 0.741087, -0.130131, 0.741087, 0.741087, 1.00023
+ 0.0826446, 0.28748, 0.713843, -0.146397, 0.713843, 0.713843, 1.00033
+ 0.10203, 0.319422, 0.687601, -0.162664, 0.687601, 0.687601, 1.00045
+ 0.123457, 0.351364, 0.662323, -0.17893, 0.662323, 0.662323, 1.0006
+ 0.146924, 0.383306, 0.637975, -0.195196, 0.637975, 0.637975, 1.00078
+ 0.172431, 0.415249, 0.614522, -0.211463, 0.614522, 0.614522, 1.00099
+ 0.19998, 0.447191, 0.591931, -0.227729, 0.591931, 0.591931, 1.00123
+ 0.229568, 0.479133, 0.570171, -0.243995, 0.570171, 0.570171, 1.00152
+ 0.261198, 0.511075, 0.54921, -0.260262, 0.54921, 0.54921, 1.00184
+ 0.294868, 0.543017, 0.52902, -0.276528, 0.52902, 0.52902, 1.0022
+ 0.330579, 0.57496, 0.509572, -0.292794, 0.509572, 0.509572, 1.00261
+ 0.36833, 0.606902, 0.490839, -0.309061, 0.490839, 0.490839, 1.00307
+ 0.408122, 0.638844, 0.472795, -0.325327, 0.472795, 0.472795, 1.00357
+ 0.449954, 0.670786, 0.455414, -0.341593, 0.455414, 0.455414, 1.00413
+ 0.493827, 0.702728, 0.438672, -0.35786, 0.438672, 0.438672, 1.00474
+ 0.539741, 0.734671, 0.422546, -0.374126, 0.422546, 0.422546, 1.00541
+ 0.587695, 0.766613, 0.407012, -0.390392, 0.407012, 0.407012, 1.00614
+ 0.63769, 0.798555, 0.39205, -0.406659, 0.39205, 0.39205, 1.00694
+ 0.689726, 0.830497, 0.377637, -0.422925, 0.377637, 0.377637, 1.00779
+ 0.743802, 0.862439, 0.363755, -0.439191, 0.363755, 0.363755, 1.00872
+ 0.799918, 0.894382, 0.350382, -0.455458, 0.350382, 0.350382, 1.00971
+ 0.858076, 0.926324, 0.337502, -0.471724, 0.337502, 0.337502, 1.01078
+ 0.918274, 0.958266, 0.325094, -0.487991, 0.325094, 0.325094, 1.01193
+ 0.980512, 0.990208, 0.313143, -0.504257, 0.313143, 0.313143, 1.01315
+ 1.04479, 1.02215, 0.301632, -0.520523, 0.301632, 0.301632, 1.01445
+ 1.11111, 1.05409, 0.290543, -0.53679, 0.290543, 0.290543, 1.01584
+ 1.17947, 1.08603, 0.279862, -0.553056, 0.279862, 0.279862, 1.01731
+ 1.24987, 1.11798, 0.269574, -0.569322, 0.269574, 0.269574, 1.01887
+ 1.32231, 1.14992, 0.259664, -0.585589, 0.259664, 0.259664, 1.02052
+ 1.3968, 1.18186, 0.250118, -0.601855, 0.250118, 0.250118, 1.02227
+ 1.47332, 1.2138, 0.240923, -0.618121, 0.240923, 0.240923, 1.02411
+ 1.55188, 1.24575, 0.232066, -0.634388, 0.232066, 0.232066, 1.02605
+ 1.63249, 1.27769, 0.223535, -0.650654, 0.223535, 0.223535, 1.0281
+ 1.71513, 1.30963, 0.215318, -0.66692, 0.215318, 0.215318, 1.03025
+ 1.79982, 1.34157, 0.207402, -0.683187, 0.207402, 0.207402, 1.03251
+ 1.88654, 1.37351, 0.199778, -0.699453, 0.199778, 0.199778, 1.03488
+ 1.97531, 1.40546, 0.192433, -0.715719, 0.192433, 0.192433, 1.03736
+ 2.06612, 1.4374, 0.185359, -0.731986, 0.185359, 0.185359, 1.03996
+ 2.15896, 1.46934, 0.178545, -0.748252, 0.178545, 0.178545, 1.04268
+ 2.25385, 1.50128, 0.171981, -0.764518, 0.171981, 0.171981, 1.04553
+ 2.35078, 1.53323, 0.165659, -0.780785, 0.165659, 0.165659, 1.0485
+ 2.44975, 1.56517, 0.159569, -0.797051, 0.159569, 0.159569, 1.0516
+ 2.55076, 1.59711, 0.153703, -0.813318, 0.153703, 0.153703, 1.05484
+ 2.65381, 1.62905, 0.148053, -0.829584, 0.148053, 0.148053, 1.05821
+ 2.7589, 1.66099, 0.14261, -0.84585, 0.14261, 0.14261, 1.06173
+ 2.86603, 1.69294, 0.137367, -0.862117, 0.137367, 0.137367, 1.06539
+ 2.97521, 1.72488, 0.132317, -0.878383, 0.132317, 0.132317, 1.06919
+ 3.08642, 1.75682, 0.131209, -0.882035, 0.131209, 0.131209, 1.06974
+ 3.19967, 1.78876, 0.131209, -0.882035, 0.131209, 0.131209, 1.0693
+ 3.31497, 1.82071, 0.131209, -0.882035, 0.131209, 0.131209, 1.06883
+ 3.4323, 1.85265, 0.131209, -0.882035, 0.131209, 0.131209, 1.06834
+ 3.55168, 1.88459, 0.131209, -0.882035, 0.131209, 0.131209, 1.06783
+ 3.67309, 1.91653, 0.131209, -0.882035, 0.131209, 0.131209, 1.06729
+ 3.79655, 1.94847, 0.131209, -0.882035, 0.131209, 0.131209, 1.06673
+ 3.92205, 1.98042, 0.131209, -0.882035, 0.131209, 0.131209, 1.06614
+ 4.04959, 2.01236, 0.131209, -0.882035, 0.131209, 0.131209, 1.06552
+ 4.17917, 2.0443, 0.131209, -0.882035, 0.131209, 0.131209, 1.06488
+ 4.31078, 2.07624, 0.131209, -0.882035, 0.131209, 0.131209, 1.06421
+ 4.44444, 2.10819, 0.131209, -0.882035, 0.131209, 0.131209, 1.06351
+ 4.58014, 2.14013, 0.131209, -0.882035, 0.131209, 0.131209, 1.06279
+ 4.71789, 2.17207, 0.131209, -0.882035, 0.131209, 0.131209, 1.06203
+ 4.85767, 2.20401, 0.131209, -0.882035, 0.131209, 0.131209, 1.06124
+ 4.99949, 2.23595, 0.131209, -0.882035, 0.131209, 0.131209, 1.06043
+ 5.14335, 2.2679, 0.131209, -0.882035, 0.131209, 0.131209, 1.05958
+ 5.28926, 2.29984, 0.131209, -0.882035, 0.131209, 0.131209, 1.0587
+ 5.4372, 2.33178, 0.131209, -0.882035, 0.131209, 0.131209, 1.05778
+ 5.58718, 2.36372, 0.131209, -0.882035, 0.131209, 0.131209, 1.05684
+ 5.73921, 2.39566, 0.131209, -0.882035, 0.131209, 0.131209, 1.05586
+ 5.89328, 2.42761, 0.131209, -0.882035, 0.131209, 0.131209, 1.05484
+ 6.04938, 2.45955, 0.131209, -0.882035, 0.131209, 0.131209, 1.05379
+ 6.20753, 2.49149, 0.131209, -0.882035, 0.131209, 0.131209, 1.0527
+ 6.36772, 2.52343, 0.131209, -0.882035, 0.131209, 0.131209, 1.05158
+ 6.52995, 2.55538, 0.131209, -0.882035, 0.131209, 0.131209, 1.05042
+ 6.69421, 2.58732, 0.131209, -0.882035, 0.131209, 0.131209, 1.04923
+ 6.86052, 2.61926, 0.131209, -0.882035, 0.131209, 0.131209, 1.048
+ 7.02887, 2.6512, 0.131209, -0.882035, 0.131209, 0.131209, 1.04672
+ 7.19927, 2.68314, 0.131209, -0.882035, 0.131209, 0.131209, 1.04541
+ 7.3717, 2.71509, 0.131209, -0.882035, 0.131209, 0.131209, 1.04406
+ 7.54617, 2.74703, 0.131209, -0.882035, 0.131209, 0.131209, 1.04268
+ 7.72268, 2.77897, 0.131209, -0.882035, 0.131209, 0.131209, 1.04125
+ 7.90123, 2.81091, 0.131209, -0.882035, 0.131209, 0.131209, 1.03978
+ 8.08183, 2.84286, 0.131209, -0.882035, 0.131209, 0.131209, 1.03826
+ 8.26446, 2.8748, 0.131209, -0.882035, 0.131209, 0.131209, 1.03671
+ 8.44914, 2.90674, 0.131209, -0.882035, 0.131209, 0.131209, 1.03512
+ 8.63585, 2.93868, 0.131209, -0.882035, 0.131209, 0.131209, 1.03348
+ 8.82461, 2.97062, 0.131209, -0.882035, 0.131209, 0.131209, 1.0318
+ 9.01541, 3.00257, 0.131209, -0.882035, 0.131209, 0.131209, 1.03007
+ 9.20824, 3.03451, 0.131209, -0.882035, 0.131209, 0.131209, 1.02831
+ 9.40312, 3.06645, 0.131209, -0.882035, 0.131209, 0.131209, 1.0265
+ 9.60004, 3.09839, 0.131209, -0.882035, 0.131209, 0.131209, 1.02464
+ 9.799, 3.13034, 0.131209, -0.882035, 0.131209, 0.131209, 1.02274
+ 10, 3.16228, 0.131209, -0.882035, 0.131209, 0.131209, 1.02079
diff --git a/test_problems/cathermo/DH_graph_1/DH_graph_1.cpp b/test_problems/cathermo/DH_graph_1/DH_graph_1.cpp
new file mode 100644
index 000000000..08d0ac7f2
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/DH_graph_1.cpp
@@ -0,0 +1,144 @@
+/**
+ *
+ * @file DH_graph_1
+ */
+
+/*
+ * $Author$
+ * $Date$
+ * $Revision$
+ */
+#include
+
+#ifdef SRCDIRTREE
+#include "ct_defs.h"
+#include "logger.h"
+#include "DebyeHuckel.h"
+#else
+#include "cantera/Cantera.h"
+#include "cantera/kernel/logger.h"
+#include "cantera/kernel/thermo/DebyeHuckel.h"
+#endif
+
+using namespace Cantera;
+
+class fileLog: public Logger {
+public:
+ fileLog(string fName) {
+ m_fName = fName;
+ m_fs.open(fName.c_str());
+ }
+
+ virtual void write(const string& msg) {
+ m_fs << msg;
+ }
+
+ virtual ~fileLog() {
+ m_fs.close();
+ }
+
+ string m_fName;
+ fstream m_fs;
+
+};
+
+void printUsage() {
+ cout << "usage: DH_test " << endl;
+ cout <<" -> Everything is hardwired" << endl;
+}
+
+void pAtable(DebyeHuckel *DH) {
+ int nsp = DH->nSpecies();
+ double acMol[100];
+ double mf[100];
+ double activities[100];
+ double moll[100];
+
+ DH->getMolalityActivityCoefficients(acMol);
+ DH->getMoleFractions(mf);
+ DH->getActivities(activities);
+ DH->getMolalities(moll);
+ string sName;
+ printf(" Name Activity ActCoeffMolal "
+ " MoleFract Molality\n");
+ for (int k = 0; k < nsp; k++) {
+ sName = DH->speciesName(k);
+ printf("%16s %13g %13g %13g %13g\n",
+ sName.c_str(), activities[k], acMol[k], mf[k], moll[k]);
+ }
+}
+
+int main(int argc, char **argv)
+{
+
+ int retn = 0;
+ int i;
+ string commandFile = "vcs_Cantera.inp";
+ try {
+
+ char iFile[80];
+ strcpy(iFile, "DH_NaCl.xml");
+ if (argc > 1) {
+ strcpy(iFile, argv[1]);
+ }
+ fileLog *fl = new fileLog("DH_graph_1.log");
+ setLogger(fl);
+
+ DebyeHuckel *DH = new DebyeHuckel(iFile, "NaCl_electrolyte");
+
+ int nsp = DH->nSpecies();
+ double acMol[100];
+ double mf[100];
+ double moll[100];
+ DH->getMoleFractions(mf);
+ string sName;
+
+ DH->setState_TP(298.15, 1.01325E5);
+
+ int i1 = DH->speciesIndex("Na+");
+ int i2 = DH->speciesIndex("Cl-");
+ int i3 = DH->speciesIndex("H2O(L)");
+ for (i = 1; i < nsp; i++) {
+ moll[i] = 0.0;
+ }
+ DH->setMolalities(moll);
+ double Itop = 10.;
+ double Ibot = 0.0;
+ double ISQRTtop = sqrt(Itop);
+ double ISQRTbot = sqrt(Ibot);
+ double ISQRT;
+ double Is = 0.0;
+ int its = 100;
+ printf(" Is, sqrtIs, meanAc,"
+ " log10(meanAC), acMol_Na+,"
+ ", acMol_Cl-, ac_Water\n");
+ for (i = 0; i < its; i++) {
+ ISQRT = ISQRTtop*((double)i)/(its - 1.0)
+ + ISQRTbot*(1.0 - (double)i/(its - 1.0));
+ Is = ISQRT * ISQRT;
+ moll[i1] = Is;
+ moll[i2] = Is;
+ DH->setMolalities(moll);
+ DH->getMolalityActivityCoefficients(acMol);
+ double meanAC = sqrt(acMol[i1] * acMol[i2]);
+ printf("%15g, %15g, %15g, %15g, %15g, %15g, %15g\n",
+ Is, ISQRT, meanAC, log10(meanAC),
+ acMol[i1], acMol[i2], acMol[i3]);
+ }
+
+
+ delete DH;
+ DH = 0;
+ /*
+ * This delete the file logger amongst other things.
+ */
+ Cantera::appdelete();
+
+ return retn;
+
+ } catch (CanteraError) {
+
+ showErrors();
+ return -1;
+ }
+}
diff --git a/test_problems/cathermo/DH_graph_1/Makefile.in b/test_problems/cathermo/DH_graph_1/Makefile.in
new file mode 100644
index 000000000..2703c6e30
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/Makefile.in
@@ -0,0 +1,112 @@
+#!/bin/sh
+
+############################################################################
+#
+# Makefile to compile and link a C++ application to
+# Cantera.
+#
+#############################################################################
+
+# addition to suffixes
+.SUFFIXES : .d
+
+# the name of the executable program to be created
+PROG_NAME = DH_graph_1
+
+# the object files to be linked together. List those generated from Fortran
+# and from C/C++ separately
+OBJS = DH_graph_1.o
+
+# Location of the current build. Will assume that tests are run
+# in the source directory tree location
+src_dir_tree = 1
+
+# additional flags to be passed to the linker. If your program
+# requires other external libraries, put them here
+LINK_OPTIONS = @EXTRA_LINK@
+
+#############################################################################
+
+# Check to see whether we are in the msvc++ environment
+os_is_win = @OS_IS_WIN@
+
+# Fortran libraries
+FORT_LIBS = @FLIBS@
+
+# the C++ compiler
+CXX = @CXX@
+
+# C++ compile flags
+ifeq ($(src_dir_tree), 1)
+CXX_FLAGS = -DSRCDIRTREE @CXXFLAGS@
+else
+CXX_FLAGS = @CXXFLAGS@
+endif
+
+# Ending C++ linking libraries
+LCXX_END_LIBS = @LCXX_END_LIBS@
+
+# the directory where the Cantera libraries are located
+CANTERA_LIBDIR=@buildlib@
+
+# required Cantera libraries
+CANTERA_LIBS = @LOCAL_LIBS@ -lctcxx
+
+# the directory where Cantera include files may be found.
+ifeq ($(src_dir_tree), 1)
+CANTERA_INCDIR=../../../Cantera/src
+INCLUDES=-I$(CANTERA_INCDIR) -I$(CANTERA_INCDIR)/thermo
+else
+CANTERA_INCDIR=@ctroot@/build/include/cantera
+INCLUDES=-I$(CANTERA_INCDIR) -I$(CANTERA_INCDIR)/kernel
+endif
+
+# flags passed to the C++ compiler/linker for the linking step
+LCXX_FLAGS = -L$(CANTERA_LIBDIR) @LOCAL_LIB_DIRS@ @CXXFLAGS@
+
+# How to compile C++ source files to object files
+.@CXX_EXT@.@OBJ_EXT@:
+ $(CXX) -c $< $(INCLUDES) $(CXX_FLAGS)
+
+# How to compile the dependency file
+.cpp.d:
+ g++ -MM $(INCLUDES) $(CXX_FLAGS) $*.cpp > $*.d
+
+# List of dependency files to be created
+DEPENDS=$(OBJS:.o=.d)
+
+# Program Name
+PROGRAM = $(PROG_NAME)$(EXE_EXT)
+
+all: $(PROGRAM) .depends
+
+$(PROGRAM): $(OBJS) $(CANTERA_LIBDIR)/libcantera.a \
+ $(CANTERA_LIBDIR)/libcaThermo.a
+ $(CXX) -o $(PROGRAM) $(OBJS) $(LCXX_FLAGS) $(LINK_OPTIONS) \
+ $(CANTERA_LIBS) @LIBS@ $(FORT_LIBS) \
+ $(LCXX_END_LIBS)
+
+# depends target -> forces recalculation of dependencies
+depends:
+ @MAKE@ .depends
+
+.depends: $(DEPENDS)
+ cat $(DEPENDS) > .depends
+
+# Do the test -> For the windows vc++ environment, we have to skip checking on
+# whether the program is uptodate, because we don't utilize make
+# in that environment to build programs.
+test:
+ifeq ($(os_is_win), 1)
+else
+ @MAKE@ $(PROGRAM)
+endif
+ ./runtest
+
+clean:
+ $(RM) $(OBJS) $(PROGRAM) $(DEPENDS) .depends
+ ../../../bin/rm_cvsignore
+ (if test -d SunWS_cache ; then \
+ $(RM) -rf SunWS_cache ; \
+ fi )
+
diff --git a/test_problems/cathermo/DH_graph_1/README b/test_problems/cathermo/DH_graph_1/README
new file mode 100644
index 000000000..d96569d35
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/README
@@ -0,0 +1,2 @@
+This test exercises the basic DebyeHuckel model using all of its various forms.
+
diff --git a/test_problems/cathermo/DH_graph_1/runtest b/test_problems/cathermo/DH_graph_1/runtest
new file mode 100755
index 000000000..47a935a55
--- /dev/null
+++ b/test_problems/cathermo/DH_graph_1/runtest
@@ -0,0 +1,170 @@
+#!/bin/sh
+#
+# run_test
+#
+##########################################################################
+# A couple of validity checks
+if test ! $# -eq 0 ; then
+ echo 'usage: runtest'
+ echo ' '
+ exit -1
+fi
+
+temp_success="0"
+/bin/rm -f output.txt outputa.txt
+##########################################################################
+prog=DH_graph_1
+if test ! -x $prog ; then
+ echo $prog ' does not exist'
+ exit -1
+fi
+##########################################################################
+/bin/rm -f test.out test.diff DH_graph_1.out
+
+echo 'Testing the DH dilute act calculation - act vs I'
+$prog DH_NaCl_dilute.xml > DH_graph_1.out
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_graph_1.out DH_NaCl_dilute_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test dilute passed'
+else
+ echo 'test dilute failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+
+##########################################################################
+/bin/rm -f test.out test.diff DH_NaCl_acommon.csv
+
+echo 'Testing the DH dilute act calculation - act vs I'
+$prog DH_NaCl_acommon.xml > DH_NaCl_acommon.csv
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_NaCl_acommon.csv DH_NaCl_acommon_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test acommon passed'
+else
+ echo 'test acommon failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+
+##########################################################################
+/bin/rm -f test.out test.diff DH_NaCl_acommon.csv
+
+echo 'Testing the DH dilute act calculation - act vs I'
+$prog DH_NaCl_acommon.xml > DH_NaCl_acommon.csv
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_NaCl_acommon.csv DH_NaCl_acommon_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test acommon passed'
+else
+ echo 'test acommon failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+##########################################################################
+/bin/rm -f test.out test.diff DH_NaCl_bdotak.csv
+
+echo 'Testing the DH bdotak act calculation - act vs I'
+$prog DH_NaCl_bdotak.xml > DH_NaCl_bdotak.csv
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_NaCl_bdotak.csv DH_NaCl_bdotak_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test bdotak passed'
+else
+ echo 'test bdotak failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+
+##########################################################################
+/bin/rm -f test.out test.diff DH_NaCl_NM.csv
+
+echo 'Testing the DH NM act calculation - act vs I'
+$prog DH_NaCl_NM.xml > DH_NaCl_NM.csv
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_NaCl_NM.csv DH_NaCl_NM_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test NM passed'
+else
+ echo 'test NM failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+
+##########################################################################
+/bin/rm -f test.out test.diff DH_NaCl_Pitzer.csv
+
+echo 'Testing the DH Pitzer act calculation - act vs I'
+$prog DH_NaCl_Pitzer.xml > DH_NaCl_Pitzer.csv
+retnStat=$?
+echo 'Making a comparison with the good saved solution: '
+echo '--------------------------------------------------------------------------------'
+diff DH_NaCl_Pitzer.csv DH_NaCl_Pitzer_blessed.csv > diff.out
+zres=$?
+cat diff.out
+echo '--------------------------------------------------------------------------------'
+echo 'End of comparison'
+if test "$zres" = "0" -a "$retnStat" = "0"; then
+ echo 'test Pitzer passed'
+else
+ echo 'test Pitzer failed'
+ temp_success="1"
+ if [ $retnStat != "0" ]
+ then
+ echo "$prog returned with bad status, $retnStat, check output"
+ fi
+fi
+##########################################################################
+if test $temp_success = "0" ; then
+ echo 'Overall DH_graph_1 test passed'
+ echo "PASSED" > csvCode.txt
+else
+ echo 'Overall DH_graph_1 test failed'
+ echo "FAILED" > csvCode.txt
+fi
diff --git a/test_problems/cathermo/Makefile.in b/test_problems/cathermo/Makefile.in
index bea6061b5..27ea20dd6 100644
--- a/test_problems/cathermo/Makefile.in
+++ b/test_problems/cathermo/Makefile.in
@@ -25,6 +25,7 @@ ifeq ($(test_electrolytes),1)
cd HMW_graph_VvT; @MAKE@ all
cd HMW_test_1; @MAKE@ all
cd HMW_test_3; @MAKE@ all
+ cd DH_graph_1; @MAKE@ all
endif
test:
@@ -45,6 +46,7 @@ ifeq ($(test_electrolytes),1)
cd HMW_graph_VvT; @MAKE@ test
cd HMW_test_1; @MAKE@ test
cd HMW_test_3; @MAKE@ test
+ cd DH_graph_1; @MAKE@ test
endif
clean:
@@ -63,6 +65,7 @@ clean:
cd HMW_graph_VvT; @MAKE@ clean
cd HMW_test_1; @MAKE@ clean
cd HMW_test_3; @MAKE@ clean
+ cd DH_graph_1; @MAKE@ clean
depends:
ifeq ($(test_issp),1)
@@ -82,4 +85,5 @@ ifeq ($(test_electrolytes),1)
cd HMW_graph_VvT; @MAKE@ depends
cd HMW_test_1; @MAKE@ depends
cd HMW_test_3; @MAKE@ depends
+ cd DH_graph_1; @MAKE@ depends
endif