Added the dustyGasTransport test from the extendedCxxTestSuite
This commit is contained in:
parent
bf2a6f2d51
commit
38a2495fa3
3 changed files with 95 additions and 1 deletions
|
|
@ -242,7 +242,8 @@ Test('diamondSurf-xml', 'diamondSurf', diamond, 'runDiamond_blessed.out',
|
|||
Test('diamondSurf-cti', 'diamondSurf', diamond, 'runDiamond_blessed.out',
|
||||
options='diamond.cti', artifacts=diamond_name,
|
||||
comparisons=[('diamond_blessed.xml', 'diamond.xml')])
|
||||
|
||||
CompileAndTest('dustyGasTransport', 'dustyGasTransport', 'dustyGasTransport',
|
||||
'output_blessed.txt')
|
||||
CompileAndTest('fracCoeff', 'fracCoeff', 'fracCoeff', 'frac_blessed.out')
|
||||
CompileAndTest('mixGasTransport',
|
||||
'mixGasTransport', 'mixGasTransport', 'output_blessed.txt')
|
||||
|
|
|
|||
65
test_problems/dustyGasTransport/dustyGasTransportTest.cpp
Normal file
65
test_problems/dustyGasTransport/dustyGasTransportTest.cpp
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
#include "cantera/thermo.h"
|
||||
#include "cantera/transport.h"
|
||||
#include "cantera/transport/DustyGasTransport.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
using namespace std;
|
||||
using namespace Cantera;
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
try {
|
||||
int log_level = 3;
|
||||
|
||||
std::auto_ptr<ThermoPhase> g(newPhase("h2o2.xml", "ohmech"));
|
||||
auto_ptr<Transport> tran(newTransportMgr("DustyGas", g.get(), log_level));
|
||||
DustyGasTransport* tranDusty = dynamic_cast<DustyGasTransport*>(tran.get());
|
||||
|
||||
int nsp = g->nSpecies();
|
||||
vector_fp multiD(nsp*nsp);
|
||||
|
||||
double T = 500;
|
||||
g->setState_TPX(T, OneAtm,
|
||||
"OH:1, H:2, O2:3, O:1.0E-8, H2:1.0E-8, H2O:1.0E-8, H2O2:1.0E-8, HO2:1.0E-8, AR:1.0E-8");
|
||||
|
||||
tranDusty->setPorosity(0.2);
|
||||
tranDusty->setTortuosity(4.0);
|
||||
tranDusty->setMeanPoreRadius(1.5E-7);
|
||||
tranDusty->setMeanParticleDiameter(1.5E-6);
|
||||
|
||||
tranDusty->getMultiDiffCoeffs(nsp, DATA_PTR(multiD));
|
||||
printf("MultiDiffusion coefficients: \n");
|
||||
for (int i = 0; i < nsp; i++) {
|
||||
for (int j = 0; j < nsp; j++) {
|
||||
printf(" %15.8E,", multiD[nsp*j + i]);
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
vector_fp state1;
|
||||
g->saveState(state1);
|
||||
g->setState_TP(T, 1.2 * OneAtm);
|
||||
vector_fp state2;
|
||||
g->saveState(state2);
|
||||
double delta = 0.001;
|
||||
vector_fp fluxes;
|
||||
fluxes.resize(nsp);
|
||||
|
||||
tranDusty->getMolarFluxes(&state1[0], &state1[0], delta, &fluxes[0]);
|
||||
for (int i = 0; i < nsp; i++) {
|
||||
printf(" flux[%d] = %13.8E\n", i, fluxes[i]);
|
||||
}
|
||||
tranDusty->getMolarFluxes(&state1[0], &state2[0], delta, &fluxes[0]);
|
||||
for (int i = 0; i < nsp; i++) {
|
||||
printf(" flux[%d] = %13.8E\n", i, fluxes[i]);
|
||||
}
|
||||
|
||||
Cantera::appdelete();
|
||||
return 0;
|
||||
|
||||
} catch (CanteraError& err) {
|
||||
std::cout << err.what() << std::endl;
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
28
test_problems/dustyGasTransport/output_blessed.txt
Normal file
28
test_problems/dustyGasTransport/output_blessed.txt
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
MultiDiffusion coefficients:
|
||||
6.04406471E-06, 5.08690499E-15, 3.25467803E-15, 3.14959640E-15, 3.20196626E-15, 3.45252809E-15, 3.12341397E-15, 3.09815027E-15, 2.93166212E-15,
|
||||
1.01738100E-06, 1.00940773E-05, 5.90066238E-07, 5.81982147E-07, 5.80043042E-07, 6.45639757E-07, 5.77001585E-07, 5.72201784E-07, 5.40917501E-07,
|
||||
3.25467803E-15, 2.95033119E-15, 2.40899947E-06, 2.89050129E-15, 2.75178768E-15, 3.02514701E-15, 2.87336197E-15, 2.85661971E-15, 2.73675664E-15,
|
||||
9.44878921E-07, 8.72973220E-07, 8.67150386E-07, 2.56318977E-06, 8.61811015E-07, 9.75599015E-07, 9.16766600E-07, 9.12743541E-07, 8.84178169E-07,
|
||||
3.20196626E-07, 2.90021521E-07, 2.75178768E-07, 2.87270338E-07, 2.62146728E-06, 2.99922209E-07, 2.85602138E-07, 2.83971549E-07, 2.72221044E-07,
|
||||
3.45252809E-15, 3.22819878E-15, 3.02514701E-15, 3.25199672E-15, 2.99922209E-15, 2.08849997E-06, 3.19672263E-15, 3.17885565E-15, 3.07926377E-15,
|
||||
3.12341397E-15, 2.88500792E-15, 2.87336197E-15, 3.05588867E-15, 2.85602138E-15, 3.19672263E-15, 1.62315735E-06, 3.02939857E-15, 2.93566827E-15,
|
||||
3.09815027E-15, 2.86100892E-15, 2.85661971E-15, 3.04247847E-15, 2.83971549E-15, 3.17885565E-15, 3.02939857E-15, 1.60480867E-06, 2.92422492E-15,
|
||||
2.93166212E-15, 2.70458750E-15, 2.73675664E-15, 2.94726056E-15, 2.72221044E-15, 3.07926377E-15, 2.93566827E-15, 2.92422492E-15, 1.51904485E-06,
|
||||
flux[0] = -0.00000000E+00
|
||||
flux[1] = -0.00000000E+00
|
||||
flux[2] = -0.00000000E+00
|
||||
flux[3] = -0.00000000E+00
|
||||
flux[4] = -0.00000000E+00
|
||||
flux[5] = -0.00000000E+00
|
||||
flux[6] = -0.00000000E+00
|
||||
flux[7] = -0.00000000E+00
|
||||
flux[8] = -0.00000000E+00
|
||||
flux[0] = -6.90966189E-14
|
||||
flux[1] = -1.84036152E-05
|
||||
flux[2] = -3.65042941E-14
|
||||
flux[3] = -9.29059107E-06
|
||||
flux[4] = -3.58923841E-06
|
||||
flux[5] = -3.54785016E-14
|
||||
flux[6] = -3.07335477E-14
|
||||
flux[7] = -3.05071031E-14
|
||||
flux[8] = -2.92655613E-14
|
||||
Loading…
Add table
Reference in a new issue