diff --git a/test_problems/diamondSurf_dupl/diamond.xml b/test_problems/diamondSurf_dupl/diamond.xml
deleted file mode 100644
index 812d61a8a..000000000
--- a/test_problems/diamondSurf_dupl/diamond.xml
+++ /dev/null
@@ -1,449 +0,0 @@
-
-
-
-
-
-
- H C
- H H2 CH3 CH4
-
- 1200.0
- 2666.4473684210525
- H:0.002, H2:0.988, CH3:0.0002, CH4:0.01
-
-
-
-
-
-
-
-
- H C
- C(d)
-
- 3.52
-
-
-
-
-
-
-
- H C
- c6HH c6H* c6*H c6** c6HM c6HM* c6*M c6B
-
-
- 1200.0
- c6H*:0.1, c6HH:0.9
-
-
- 3e-09
-
-
-
- gas diamond
-
-
-
-
-
-
-
- C:1
-
-
- 298.14999999999998
- 0.0
- 0.0
- 0.0
-
-
-
-
-
-
- H:1
-
-
- 298.14999999999998
- 51.700000000000003
- 19.5
- 0.0
-
-
-
-
-
-
- H:1
-
-
- 298.14999999999998
- 46.100000000000001
- 19.899999999999999
- 0.0
-
-
-
-
-
-
- H:2
-
-
- 298.14999999999998
- 11.4
- 21.0
- 0.0
-
-
-
-
-
-
- H:4 C:1
-
-
- 298.14999999999998
- 26.899999999999999
- 40.299999999999997
- 0.0
-
-
-
-
-
-
- H:3 C:1
-
-
- 298.14999999999998
- 65.799999999999997
- 40.100000000000001
- 0.0
-
-
-
-
-
-
- H:3 C:1
-
-
- 298.14999999999998
- 53.299999999999997
- 38.899999999999999
- 0.0
-
-
-
-
-
-
- C:0
-
-
- 298.14999999999998
- 90.0
- 18.399999999999999
- 0.0
-
-
-
-
-
-
- H:2 C:1
-
-
- 298.14999999999998
- 40.899999999999999
- 26.899999999999999
- 0.0
-
-
-
-
-
-
-
-
- c6HH + H [=] c6H* + H2
-
-
- 1.300000E+11
- 0.0
- 7.300000
-
-
- H:1 c6HH:1.0
- H2:1 c6H*:1.0
-
-
-
-
- c6H* + H [=] c6HH
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- c6H*:1.0 H:1
- c6HH:1.0
-
-
-
-
- c6H* + CH3 [=] c6HM
-
-
- 5.000000E+09
- 0.0
- 0.000000
-
-
- c6H*:1.0 CH3:1
- c6HM:1.0
-
-
-
-
- c6HM + H [=] c6*M + H2
-
-
- 1.300000E+11
- 0.0
- 7.300000
-
-
- H:1 c6HM:1.0
- H2:1 c6*M:1.0
-
-
-
-
- c6*M + H [=] c6HM
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- H:1 c6*M:1.0
- c6HM:1.0
-
-
-
-
- c6HM + H [=] c6HM* + H2
-
-
- 2.800000E+04
- 0.0
- 7.700000
-
-
- H:1 c6HM:1.0
- H2:1 c6HM*:1.0
-
-
-
-
- c6HM* + H [=] c6HM
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- c6HM*:1.0 H:1
- c6HM:1.0
-
-
-
-
- c6HM* [=] c6*M
-
-
- 1.000000E+08
- 0.0
- 0.000000
-
-
- c6HM*:1.0
- c6*M:1.0
-
-
-
-
- c6HM* + H [=] c6H* + CH3
-
-
- 3.000000E+10
- 0.0
- 0.000000
-
-
- c6HM*:1.0 H:1
- c6H*:1.0 CH3:1
-
-
-
-
- c6HM* + H [=] c6B + H2
-
-
- 1.300000E+11
- 0.0
- 7.300000
-
-
- c6HM*:1.0 H:1
- H2:1 c6B:1.0
-
-
-
-
- c6*M + H [=] c6B + H2
-
-
- 2.800000E+04
- 2.0
- 7.700000
-
-
- H:1 c6*M:1.0
- H2:1 c6B:1.0
-
-
-
-
- c6HH + H [=] c6*H + H2
-
-
- 1.300000E+11
- 0.0
- 7.300000
-
-
- H:1 c6HH:1.0
- H2:1 c6*H:1.0
-
-
-
-
- c6*H + H [=] c6HH
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- c6*H:1.0 H:1
- c6HH:1.0
-
-
-
-
- c6H* + H [=] c6** + H2
-
-
- 1.300000E+11
- 0.0
- 7.300000
-
-
- c6H*:1.0 H:1
- H2:1 c6**:1.0
-
-
-
-
- c6** + H [=] c6H*
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- H:1 c6**:1.0
- c6H*:1.0
-
-
-
-
- c6*H + H [=] c6** + H2
-
-
- 4.500000E+03
- 2.0
- 5.000000
-
-
- c6*H:1.0 H:1
- H2:1 c6**:1.0
-
-
-
-
- c6** + H [=] c6*H
-
-
- 1.000000E+10
- 0.0
- 0.000000
-
-
- H:1 c6**:1.0
- c6*H:1.0
-
-
-
-
- c6** + CH3 [=] c6*M
-
-
- 5.000000E+09
- 0.0
- 0.000000
-
-
- CH3:1 c6**:1.0
- c6*M:1.0
-
-
-
-
- c6H* [=] c6*H
-
-
- 1.000000E+08
- 0.0
- 0.000000
-
-
- c6H*:1.0
- c6*H:1.0
-
-
-
-
- c6B [=] c6HH + C(d)
-
-
- 1.000000E+09
- 0.0
- 0.000000
-
-
- c6B:1.0
- C(d):1 c6HH:1.0
-
-
-
diff --git a/test_problems/diamondSurf_dupl/output_blessed.txt b/test_problems/diamondSurf_dupl/output_blessed.txt
deleted file mode 100644
index 9b5bf107b..000000000
--- a/test_problems/diamondSurf_dupl/output_blessed.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-Number of species = 4
-Number of species in diamond = 1
-Number of species in diamond_100 = 8
-Number of reactions = 20
-0 1 -8.96e-05
-1 2 4.48e-05
-2 3 -3.52e-08
-3 4 nil
-4 0 3.52e-08
-5 2 nil
-6 1 nil
-7 1 nil
-8 0 nil
-9 4 nil
-10 3 nil
-11 3 nil
-12 2 nil
-sum = nil
-growth rate = 0.432 microns per hour
-Coverages:
-0 c6HH 0.462
-1 c6H* 0.0371
-2 c6*H 0.474
-3 c6** 0.0219
-4 c6HM 0.00175
-5 c6HM* 2.56e-05
-6 c6*M 0.00265
-7 c6B 3.82e-05
-Number of reactions = 20
-0 1 -8.96e-05
-1 2 4.48e-05
-2 3 -3.52e-08
-3 4 nil
-4 0 3.52e-08
-5 2 nil
-6 1 nil
-7 1 nil
-8 0 nil
-9 4 nil
-10 3 nil
-11 3 nil
-12 2 nil
-sum = nil
-growth rate = 0.432 microns per hour
-Coverages:
-0 c6HH 0.462
-1 c6H* 0.0371
-2 c6*H 0.474
-3 c6** 0.0219
-4 c6HM 0.00175
-5 c6HM* 2.56e-05
-6 c6*M 0.00265
-7 c6B 3.82e-05
diff --git a/test_problems/diamondSurf_dupl/runDiamondDupl.cpp b/test_problems/diamondSurf_dupl/runDiamondDupl.cpp
deleted file mode 100644
index a9a43a413..000000000
--- a/test_problems/diamondSurf_dupl/runDiamondDupl.cpp
+++ /dev/null
@@ -1,233 +0,0 @@
-/**
- * @file runDiamond.cpp
- *
- */
-
-// Example
-//
-// Note that this example needs updating. It works fine, but is
-// written in a way that is less than transparent or
-// user-friendly. This could be rewritten using class Interface to
-// make things simpler.
-
-#include "cantera/kinetics.h"
-
-using namespace std;
-using namespace Cantera;
-
-void printDbl(double val)
-{
- if (fabs(val) < 5.0E-17) {
- cout << " nil";
- } else {
- cout << val;
- }
-}
-
-int main(int argc, char** argv)
-{
- int i, k;
- string infile = "diamond.xml";
-
- try {
- XML_Node* xc = get_XML_File(infile);
- cout.precision(3);
-
- XML_Node* const xg = xc->findNameID("phase", "gas");
- ThermoPhase* gasTP = newPhase(*xg);
- int nsp = gasTP->nSpecies();
- cout << "Number of species = " << nsp << endl;
-
- XML_Node* const xd = xc->findNameID("phase", "diamond");
- ThermoPhase* diamondTP = newPhase(*xd);
- int nsp_diamond = diamondTP->nSpecies();
- cout << "Number of species in diamond = " << nsp_diamond << endl;
-
-
- XML_Node* const xs = xc->findNameID("phase", "diamond_100");
- ThermoPhase* diamond100TP = newPhase(*xs);
- int nsp_d100 = diamond100TP->nSpecies();
- cout << "Number of species in diamond_100 = " << nsp_d100 << endl;
-
- vector phaseList { gasTP, diamondTP, diamond100TP };
- InterfaceKinetics* iKin_ptr = new InterfaceKinetics();
- importKinetics(*xs, phaseList, iKin_ptr);
- int nr = iKin_ptr->nReactions();
- cout << "Number of reactions = " << nr << endl;
-
- double x[20];
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- x[0] = 0.0010;
- x[1] = 0.9888;
- x[2] = 0.0002;
- x[3] = 0.0100;
- double p = 20.0*OneAtm/760.0;
-
- gasTP->setState_TPX(1200., p, x);
-
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- int i0 = diamond100TP->speciesIndex("c6H*");
- x[i0] = 0.1;
- int i1 = diamond100TP->speciesIndex("c6HH");
- x[i1] = 0.9;
- diamond100TP->setState_TX(1200., x);
-
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- x[0] = 1.0;
- diamondTP->setState_TPX(1200., p, x);
-
- iKin_ptr->advanceCoverages(100.);
-
- // Throw some asserts in here to test that they compile
- AssertTrace(p == p);
- AssertThrow(p == p, "main");
- AssertThrowMsg(i == 20, "main", "are you kidding");
-
- double src[20];
- for (i = 0; i < 20; i++) {
- src[i] = 0.0;
- }
- iKin_ptr->getNetProductionRates(src);
- double sum = 0.0;
- double naH = 0.0;
- for (k = 0; k < 13; k++) {
- if (k < 4) {
- naH = gasTP->nAtoms(k, 0);
- } else if (k == 4) {
- naH = 0;
- } else if (k > 4) {
- int itp = k - 5;
- naH = diamond100TP->nAtoms(itp, 0);
- }
- cout << k << " " << naH << " " ;
- printDbl(src[k]);
- cout << endl;
- sum += naH * src[k];
-
- }
-
- cout << "sum = ";
- printDbl(sum);
- cout << endl;
- double mwd = diamondTP->molecularWeight(0);
- double dens = diamondTP->density();
- double gr = src[4] * mwd / dens;
- gr *= 1.0E6 * 3600.;
- cout << "growth rate = " << gr << " microns per hour" << endl;
-
-
- diamond100TP->getMoleFractions(x);
- cout << "Coverages:" << endl;
- for (k = 0; k < 8; k++) {
- cout << k << " " << diamond100TP->speciesName(k)
- << " "
- << x[k] << endl;
- }
-
-
- /*********************************************************************************/
- /*
- * OK NOW DUPLICATE EVERYTHING AND RECALCULATE
- */
- ThermoPhase* gasTP_dupl = gasTP->duplMyselfAsThermoPhase();
- ThermoPhase* diamondTP_dupl = diamondTP->duplMyselfAsThermoPhase();
- ThermoPhase* diamond100TP_dupl = diamond100TP->duplMyselfAsThermoPhase();
-
- vector phaseList_dupl { gasTP_dupl, diamondTP_dupl,
- diamond100TP_dupl };
- InterfaceKinetics* iKin_ptr_dupl = new InterfaceKinetics();
- importKinetics(*xs, phaseList_dupl, iKin_ptr_dupl);
- int nr_dupl = iKin_ptr_dupl->nReactions();
- cout << "Number of reactions = " << nr_dupl << endl;
-
-
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- x[0] = 0.0010;
- x[1] = 0.9888;
- x[2] = 0.0002;
- x[3] = 0.0100;
- p = 20.0*OneAtm/760.0;
-
- gasTP_dupl->setState_TPX(1200., p, x);
-
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- i0 = diamond100TP_dupl->speciesIndex("c6H*");
- x[i0] = 0.1;
- i1 = diamond100TP_dupl->speciesIndex("c6HH");
- x[i1] = 0.9;
- diamond100TP_dupl->setState_TX(1200., x);
-
- for (i = 0; i < 20; i++) {
- x[i] = 0.0;
- }
- x[0] = 1.0;
- diamondTP_dupl->setState_TPX(1200., p, x);
-
- iKin_ptr_dupl->advanceCoverages(100.);
-
- // Throw some asserts in here to test that they compile
- AssertTrace(p == p);
- AssertThrow(p == p, "main");
- AssertThrowMsg(i == 20, "main", "are you kidding");
-
-
- for (i = 0; i < 20; i++) {
- src[i] = 0.0;
- }
- iKin_ptr_dupl->getNetProductionRates(src);
- sum = 0.0;
- naH = 0.0;
- for (k = 0; k < 13; k++) {
- if (k < 4) {
- naH = gasTP_dupl->nAtoms(k, 0);
- } else if (k == 4) {
- naH = 0;
- } else if (k > 4) {
- int itp = k - 5;
- naH = diamond100TP_dupl->nAtoms(itp, 0);
- }
- cout << k << " " << naH << " " ;
- printDbl(src[k]);
- cout << endl;
- sum += naH * src[k];
-
- }
-
- cout << "sum = ";
- printDbl(sum);
- cout << endl;
- mwd = diamondTP_dupl->molecularWeight(0);
- dens = diamondTP_dupl->density();
- gr = src[4] * mwd / dens;
- gr *= 1.0E6 * 3600.;
- cout << "growth rate = " << gr << " microns per hour" << endl;
-
-
- diamond100TP_dupl->getMoleFractions(x);
- cout << "Coverages:" << endl;
- for (k = 0; k < 8; k++) {
- cout << k << " " << diamond100TP_dupl->speciesName(k)
- << " "
- << x[k] << endl;
- }
-
-
-
- } catch (CanteraError& err) {
- std::cout << err.what() << std::endl;
- return -1;
- }
-
- return 0;
-}
-/***********************************************************/