*** empty log message ***
This commit is contained in:
parent
8f76e51beb
commit
d68036396e
12 changed files with 205 additions and 79 deletions
|
|
@ -2,6 +2,7 @@
|
|||
#define CT_INCL_ZERODIM_H
|
||||
|
||||
#include "kernel/zeroD/Reactor.h"
|
||||
#include "kernel/zeroD/ReactorNet.h"
|
||||
#include "kernel/zeroD/Reservoir.h"
|
||||
#include "kernel/zeroD/Wall.h"
|
||||
#include "kernel/zeroD/flowControllers.h"
|
||||
|
|
|
|||
|
|
@ -332,6 +332,37 @@ class NASA(thermo):
|
|||
u = n.addChild("floatArray", str)
|
||||
u["size"] = "7"
|
||||
u["name"] = "coeffs"
|
||||
|
||||
|
||||
class Shomate(thermo):
|
||||
"""Shomate polynomial parameterization."""
|
||||
|
||||
def __init__(self, range = (0.0, 0.0),
|
||||
coeffs = [], p0 = -1.0):
|
||||
self._t = range
|
||||
self._pref = p0
|
||||
if len(coeffs) <> 7:
|
||||
raise 'Shomate coefficient list must have length = 7'
|
||||
self._coeffs = coeffs
|
||||
|
||||
|
||||
def build(self, t):
|
||||
n = t.addChild("Shomate")
|
||||
n['Tmin'] = `self._t[0]`
|
||||
n['Tmax'] = `self._t[1]`
|
||||
if self._pref <= 0.0:
|
||||
n['P0'] = `_pref`
|
||||
else:
|
||||
n['P0'] = `self._pref`
|
||||
str = ''
|
||||
for i in range(4):
|
||||
str += '%17.9E, ' % self._coeffs[i]
|
||||
str += '\n'
|
||||
str += '%17.9E, %17.9E, %17.9E' % (self._coeffs[4],
|
||||
self._coeffs[5], self._coeffs[6])
|
||||
u = n.addChild("floatArray", str)
|
||||
u["size"] = "7"
|
||||
u["name"] = "coeffs"
|
||||
|
||||
|
||||
class const_cp(thermo):
|
||||
|
|
@ -1039,7 +1070,7 @@ class stoichiometric_solid(phase):
|
|||
def build(self, p):
|
||||
ph = phase.build(self, p)
|
||||
e = ph.addChild("thermo")
|
||||
e['model'] = 'StoichCompound'
|
||||
e['model'] = 'StoichSubstance'
|
||||
addFloat(e, 'density', self._dens, defunits = _umass+'/'+_ulen+'3')
|
||||
if self._tr:
|
||||
t = ph.addChild('transport')
|
||||
|
|
@ -1358,7 +1389,10 @@ validate()
|
|||
# $Revision$
|
||||
# $Date$
|
||||
# $Log$
|
||||
# Revision 1.32 2004-04-23 16:35:32 dggoodwin
|
||||
# Revision 1.33 2004-04-23 19:03:21 dggoodwin
|
||||
# *** empty log message ***
|
||||
#
|
||||
# Revision 1.32 2004/04/23 16:35:32 dggoodwin
|
||||
# *** empty log message ***
|
||||
#
|
||||
# Revision 1.31 2004/03/12 05:59:59 dggoodwin
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ namespace Cantera {
|
|||
vector_fp chigh(7);
|
||||
copy(c + 8, c + 15, chigh.begin());
|
||||
|
||||
checkContinuity(tmid, clow, chigh.begin());
|
||||
//checkContinuity(tmid, clow, chigh.begin());
|
||||
|
||||
m_high[igrp-1].push_back(NasaPoly1(index, tmid, thigh,
|
||||
pref, chigh.begin()));
|
||||
|
|
@ -241,7 +241,10 @@ namespace Cantera {
|
|||
#endif
|
||||
|
||||
// $Log$
|
||||
// Revision 1.3 2004-04-22 21:44:36 dggoodwin
|
||||
// Revision 1.4 2004-04-23 19:03:22 dggoodwin
|
||||
// *** empty log message ***
|
||||
//
|
||||
// Revision 1.3 2004/04/22 21:44:36 dggoodwin
|
||||
// *** empty log message ***
|
||||
//
|
||||
// Revision 1.2 2003/11/01 04:50:35 dggoodwin
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ namespace Cantera {
|
|||
public:
|
||||
UnknownSpeciesThermoModel(string proc, string spName,
|
||||
string speciesThermoModel) :
|
||||
CanteraError(proc, "species :" + spName +
|
||||
CanteraError(proc, "species " + spName +
|
||||
": Specified speciesThermoPhase model "
|
||||
+ speciesThermoModel +
|
||||
" does not match any known type.") {}
|
||||
|
|
|
|||
|
|
@ -156,14 +156,21 @@ namespace Cantera {
|
|||
* Install a NASA polynomial thermodynamic property
|
||||
* parameterization for species k.
|
||||
*/
|
||||
static void installNasaThermo(SpeciesThermo& sp, int k, const XML_Node& f0,
|
||||
const XML_Node& f1) {
|
||||
static void installNasaThermo(SpeciesThermo& sp, int k, const XML_Node* f0ptr,
|
||||
const XML_Node* f1ptr) {
|
||||
doublereal tmin0, tmax0, tmin1, tmax1, tmin, tmid, tmax;
|
||||
|
||||
const XML_Node& f0 = *f0ptr;
|
||||
bool dualRange = false;
|
||||
if (f1ptr) {dualRange = true;}
|
||||
tmin0 = fpValue(f0["Tmin"]);
|
||||
tmax0 = fpValue(f0["Tmax"]);
|
||||
tmin1 = fpValue(f1["Tmin"]);
|
||||
tmax1 = fpValue(f1["Tmax"]);
|
||||
tmin1 = tmax0;
|
||||
tmax1 = tmin1 + 0.0001;
|
||||
if (dualRange) {
|
||||
tmin1 = fpValue((*f1ptr)["Tmin"]);
|
||||
tmax1 = fpValue((*f1ptr)["Tmax"]);
|
||||
}
|
||||
|
||||
vector_fp c0, c1;
|
||||
if (fabs(tmax0 - tmin1) < 0.01) {
|
||||
|
|
@ -171,13 +178,16 @@ namespace Cantera {
|
|||
tmid = tmax0;
|
||||
tmax = tmax1;
|
||||
getFloatArray(f0.child("floatArray"), c0, false);
|
||||
getFloatArray(f1.child("floatArray"), c1, false);
|
||||
if (dualRange)
|
||||
getFloatArray(f1ptr->child("floatArray"), c1, false);
|
||||
else
|
||||
c1.resize(7,0.0);
|
||||
}
|
||||
else if (fabs(tmax1 - tmin0) < 0.01) {
|
||||
tmin = tmin1;
|
||||
tmid = tmax1;
|
||||
tmax = tmax0;
|
||||
getFloatArray(f1.child("floatArray"), c0, false);
|
||||
getFloatArray(f1ptr->child("floatArray"), c0, false);
|
||||
getFloatArray(f0.child("floatArray"), c1, false);
|
||||
}
|
||||
else {
|
||||
|
|
@ -197,36 +207,88 @@ namespace Cantera {
|
|||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Install a Shomate polynomial thermodynamic property
|
||||
* Install a NASA polynomial thermodynamic property
|
||||
* parameterization for species k.
|
||||
*/
|
||||
static void installShomateThermo(SpeciesThermo& sp, int k, const XML_Node& f) {
|
||||
doublereal tmin, tmid, tmax;
|
||||
tmin = fpValue(f["Tmin"]);
|
||||
tmid = fpValue(f["Tmid"]);
|
||||
tmax = fpValue(f["Tmax"]);
|
||||
static void installShomateThermo(SpeciesThermo& sp, int k, const XML_Node* f0ptr,
|
||||
const XML_Node* f1ptr) {
|
||||
doublereal tmin0, tmax0, tmin1, tmax1, tmin, tmid, tmax;
|
||||
|
||||
const XML_Node& f0 = *f0ptr;
|
||||
bool dualRange = false;
|
||||
if (f1ptr) {dualRange = true;}
|
||||
tmin0 = fpValue(f0["Tmin"]);
|
||||
tmax0 = fpValue(f0["Tmax"]);
|
||||
tmin1 = tmax0;
|
||||
tmax1 = tmin1 + 0.0001;
|
||||
if (dualRange) {
|
||||
tmin1 = fpValue((*f1ptr)["Tmin"]);
|
||||
tmax1 = fpValue((*f1ptr)["Tmax"]);
|
||||
}
|
||||
|
||||
vector<XML_Node*> fa;
|
||||
f.getChildren("floatArray",fa);
|
||||
vector_fp c0, c1;
|
||||
getFloatArray(*fa[0], c0, false);
|
||||
getFloatArray(*fa[1], c1, false);
|
||||
if (fabs(tmax0 - tmin1) < 0.01) {
|
||||
tmin = tmin0;
|
||||
tmid = tmax0;
|
||||
tmax = tmax1;
|
||||
getFloatArray(f0.child("floatArray"), c0, false);
|
||||
if (dualRange)
|
||||
getFloatArray(f1ptr->child("floatArray"), c1, false);
|
||||
else
|
||||
c1.resize(7,0.0);
|
||||
}
|
||||
else if (fabs(tmax1 - tmin0) < 0.01) {
|
||||
tmin = tmin1;
|
||||
tmid = tmax1;
|
||||
tmax = tmax0;
|
||||
getFloatArray(f1ptr->child("floatArray"), c0, false);
|
||||
getFloatArray(f0.child("floatArray"), c1, false);
|
||||
}
|
||||
else {
|
||||
throw CanteraError("installShomateThermo",
|
||||
"non-continuous temperature ranges.");
|
||||
}
|
||||
array_fp c(15);
|
||||
c[0] = tmid;
|
||||
doublereal p0 = OneAtm;
|
||||
if ((*fa[0])["title"] == "low") {
|
||||
copy(c0.begin(), c0.end(), c.begin() + 1);
|
||||
copy(c1.begin(), c1.end(), c.begin() + 8);
|
||||
}
|
||||
else {
|
||||
copy(c1.begin(), c1.end(), c.begin() + 1);
|
||||
copy(c0.begin(), c0.end(), c.begin() + 8);
|
||||
}
|
||||
copy(c0.begin(), c0.begin()+7, c.begin() + 1);
|
||||
copy(c1.begin(), c1.begin()+7, c.begin() + 8);
|
||||
sp.install(k, SHOMATE, c.begin(), tmin, tmax, p0);
|
||||
}
|
||||
|
||||
|
||||
// /**
|
||||
// * Install a Shomate polynomial thermodynamic property
|
||||
// * parameterization for species k.
|
||||
// */
|
||||
// static void installShomateThermo(SpeciesThermo& sp, int k, const XML_Node& f) {
|
||||
// doublereal tmin, tmid, tmax;
|
||||
// tmin = fpValue(f["Tmin"]);
|
||||
// tmid = fpValue(f["Tmid"]);
|
||||
// tmax = fpValue(f["Tmax"]);
|
||||
|
||||
// vector<XML_Node*> fa;
|
||||
// f.getChildren("floatArray",fa);
|
||||
// vector_fp c0, c1;
|
||||
// getFloatArray(*fa[0], c0, false);
|
||||
// getFloatArray(*fa[1], c1, false);
|
||||
// array_fp c(15);
|
||||
// c[0] = tmid;
|
||||
// doublereal p0 = OneAtm;
|
||||
// if ((*fa[0])["title"] == "low") {
|
||||
// copy(c0.begin(), c0.end(), c.begin() + 1);
|
||||
// copy(c1.begin(), c1.end(), c.begin() + 8);
|
||||
// }
|
||||
// else {
|
||||
// copy(c1.begin(), c1.end(), c.begin() + 1);
|
||||
// copy(c0.begin(), c0.end(), c.begin() + 8);
|
||||
// }
|
||||
// sp.install(k, SHOMATE, c.begin(), tmin, tmax, p0);
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* Install a constant-cp thermodynamic property
|
||||
* parameterization for species k.
|
||||
|
|
@ -319,25 +381,32 @@ namespace Cantera {
|
|||
const vector<XML_Node*>& tp = thermo.children();
|
||||
int nc = tp.size();
|
||||
if (nc == 1) {
|
||||
const XML_Node& f = *tp[0];
|
||||
if (f.name() == "Shomate") {
|
||||
installShomateThermo(spthermo, k, f);
|
||||
const XML_Node* f = tp[0];
|
||||
if (f->name() == "Shomate") {
|
||||
installShomateThermo(spthermo, k, f, 0);
|
||||
}
|
||||
else if (f.name() == "const_cp") {
|
||||
installSimpleThermo(spthermo, k, f);
|
||||
else if (f->name() == "const_cp") {
|
||||
installSimpleThermo(spthermo, k, *f);
|
||||
}
|
||||
else if (f->name() == "NASA") {
|
||||
installNasaThermo(spthermo, k, f, 0);
|
||||
}
|
||||
else {
|
||||
UnknownSpeciesThermoModel("installSpecies", s["name"], f.name());
|
||||
UnknownSpeciesThermoModel("installSpecies", s["name"], f->name());
|
||||
}
|
||||
}
|
||||
else if (nc == 2) {
|
||||
const XML_Node& f0 = *tp[0];
|
||||
const XML_Node& f1 = *tp[1];
|
||||
if (f0.name() == "NASA" && f1.name() == "NASA") {
|
||||
const XML_Node* f0 = tp[0];
|
||||
const XML_Node* f1 = tp[1];
|
||||
if (f0->name() == "NASA" && f1->name() == "NASA") {
|
||||
installNasaThermo(spthermo, k, f0, f1);
|
||||
} else {
|
||||
}
|
||||
else if (f0->name() == "Shomate" && f1->name() == "Shomate") {
|
||||
installShomateThermo(spthermo, k, f0, f1);
|
||||
}
|
||||
else {
|
||||
UnknownSpeciesThermoModel("installSpecies", s["name"],
|
||||
f0.name() + f1.name());
|
||||
f0->name() + " and " + f1->name());
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
@ -397,7 +466,7 @@ namespace Cantera {
|
|||
+" "+ fp2str(balp[b->first]);
|
||||
}
|
||||
}
|
||||
if (msg != "") {
|
||||
if (!ok) {
|
||||
msg = "The following reaction is unbalanced:\n\t"
|
||||
+ rdata.equation + "\n" + msg + "\n";
|
||||
throw CanteraError("checkRxnElementBalance",msg);
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ int equil_example1(int job) {
|
|||
|
||||
// create a gas mixture, and set its state
|
||||
|
||||
IdealGasMix gas("silane.xml", "silane");
|
||||
IdealGasMix gas("silane.cti", "silane");
|
||||
int nsp = gas.nSpecies();
|
||||
|
||||
int ntemps = 50; // number of temperatures
|
||||
|
|
|
|||
|
|
@ -81,6 +81,11 @@ int kinetics_example1(int job) {
|
|||
w.setExpansionRateCoeff(1.e9);
|
||||
w.setArea(1.0);
|
||||
|
||||
// create a container object to run the simulation
|
||||
// and add the reactor to it
|
||||
ReactorNet sim;
|
||||
sim.addReactor(&r);
|
||||
|
||||
double tm;
|
||||
double dt = 1.e-5; // interval at which output is written
|
||||
int nsteps = 100; // number of intervals
|
||||
|
|
@ -94,7 +99,7 @@ int kinetics_example1(int job) {
|
|||
clock_t t0 = clock();
|
||||
for (int i = 1; i <= nsteps; i++) {
|
||||
tm = i*dt;
|
||||
r.advance(tm);
|
||||
sim.advance(tm);
|
||||
saveSoln(tm, gas, soln);
|
||||
}
|
||||
clock_t t1 = clock();
|
||||
|
|
@ -111,8 +116,8 @@ int kinetics_example1(int job) {
|
|||
cout << " Tfinal = " << r.temperature() << endl;
|
||||
cout << " time = " << tmm << endl;
|
||||
cout << " number of residual function evaluations = "
|
||||
<< r.integrator().nEvals() << endl;
|
||||
cout << " time per evaluation = " << tmm/r.integrator().nEvals()
|
||||
<< sim.integrator().nEvals() << endl;
|
||||
cout << " time per evaluation = " << tmm/sim.integrator().nEvals()
|
||||
<< endl << endl;
|
||||
cout << "Output files:" << endl
|
||||
<< " kin1.csv (Excel CSV file)" << endl
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@
|
|||
* Same as kinetics_example1, except that it uses class GRI30 instead
|
||||
* of class IdealGasMix.
|
||||
*/
|
||||
|
||||
// Note: although this simulation can be done in C++, as shown here,
|
||||
// it is much easier in Python or Matlab!
|
||||
|
||||
int kinetics_example2(int job) {
|
||||
|
||||
try {
|
||||
|
|
@ -69,6 +73,11 @@ int kinetics_example2(int job) {
|
|||
w.setExpansionRateCoeff(1.e9);
|
||||
w.setArea(1.0);
|
||||
|
||||
// create a container object to run the simulation
|
||||
// and add the reactor to it
|
||||
ReactorNet sim;
|
||||
sim.addReactor(&r);
|
||||
|
||||
double tm;
|
||||
double dt = 1.e-5; // interval at which output is written
|
||||
int nsteps = 100; // number of intervals
|
||||
|
|
@ -82,7 +91,7 @@ int kinetics_example2(int job) {
|
|||
clock_t t0 = clock();
|
||||
for (int i = 1; i <= nsteps; i++) {
|
||||
tm = i*dt;
|
||||
r.advance(tm);
|
||||
sim.advance(tm);
|
||||
saveSoln(tm, gas, soln);
|
||||
}
|
||||
clock_t t1 = clock();
|
||||
|
|
@ -99,8 +108,8 @@ int kinetics_example2(int job) {
|
|||
cout << " Tfinal = " << r.temperature() << endl;
|
||||
cout << " time = " << tmm << endl;
|
||||
cout << " number of residual function evaluations = "
|
||||
<< r.integrator().nEvals() << endl;
|
||||
cout << " time per evaluation = " << tmm/r.integrator().nEvals()
|
||||
<< sim.integrator().nEvals() << endl;
|
||||
cout << " time per evaluation = " << tmm/sim.integrator().nEvals()
|
||||
<< endl << endl;
|
||||
|
||||
cout << "Output files:" << endl
|
||||
|
|
|
|||
|
|
@ -129,6 +129,11 @@ int rxnpath_example1(int job) {
|
|||
double dt = 1.e-5; // interval at which output is written
|
||||
int nsteps = 100; // number of intervals
|
||||
|
||||
// create a container object to run the simulation
|
||||
// and add the reactor to it
|
||||
ReactorNet sim;
|
||||
sim.addReactor(&r);
|
||||
|
||||
// create a reaction path diagram builder
|
||||
ReactionPathBuilder b;
|
||||
ofstream rplog("rp1.log"); // log file
|
||||
|
|
@ -139,7 +144,7 @@ int rxnpath_example1(int job) {
|
|||
clock_t t0 = clock();
|
||||
for (int i = 1; i <= nsteps; i++) {
|
||||
tm = i*dt;
|
||||
r.advance(tm);
|
||||
sim.advance(tm);
|
||||
writeRxnPathDiagram(tm, b, gas, rplog, rplot);
|
||||
}
|
||||
clock_t t1 = clock();
|
||||
|
|
|
|||
|
|
@ -28,12 +28,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="200.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.344331120E+00, 7.980520750E-03, -1.947815100E-05, 2.015720940E-08,
|
||||
-7.376117610E-12, -9.179351730E+02, 6.830102380E-01,</floatArray>
|
||||
-7.376117610E-12, -9.179351730E+02, 6.830102380E-01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="3500.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.337279200E+00, -4.940247310E-05, 4.994567780E-07, -1.795663940E-10,
|
||||
2.002553760E-14, -9.501589220E+02, -3.205023310E+00,</floatArray>
|
||||
2.002553760E-14, -9.501589220E+02, -3.205023310E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -46,12 +46,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="200.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.500000000E+00, 7.053328190E-13, -1.995919640E-15, 2.300816320E-18,
|
||||
-9.277323320E-22, 2.547365990E+04, -4.466828530E-01,</floatArray>
|
||||
-9.277323320E-22, 2.547365990E+04, -4.466828530E-01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="3500.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.500000010E+00, -2.308429730E-11, 1.615619480E-14, -4.735152350E-18,
|
||||
4.981973570E-22, 2.547365990E+04, -4.466829140E-01,</floatArray>
|
||||
4.981973570E-22, 2.547365990E+04, -4.466829140E-01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -64,12 +64,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.500000000E+00, 0.000000000E+00, 0.000000000E+00, 0.000000000E+00,
|
||||
0.000000000E+00, -7.453750000E+02, 9.153488000E-01,</floatArray>
|
||||
0.000000000E+00, -7.453750000E+02, 9.153488000E-01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="5000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.500000000E+00, 0.000000000E+00, 0.000000000E+00, 0.000000000E+00,
|
||||
0.000000000E+00, -7.453750000E+02, 9.153489000E-01,</floatArray>
|
||||
0.000000000E+00, -7.453750000E+02, 9.153489000E-01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -82,12 +82,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
1.451640400E+00, 1.398736300E-02, -4.234563900E-06, -2.360614200E-09,
|
||||
1.371208900E-12, 3.113410500E+03, 1.232185500E+01,</floatArray>
|
||||
1.371208900E-12, 3.113410500E+03, 1.232185500E+01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="2000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
7.935938000E-01, 1.767189900E-02, -1.139800900E-05, 3.599260400E-09,
|
||||
-4.524157100E-13, 3.198212700E+03, 1.524225700E+01,</floatArray>
|
||||
-4.524157100E-13, 3.198212700E+03, 1.524225700E+01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -100,12 +100,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.179353700E+00, -2.764699200E-03, 4.478403800E-06, -3.283317700E-09,
|
||||
9.121363100E-13, 5.333903200E+04, 2.727320400E+00,</floatArray>
|
||||
9.121363100E-13, 5.333903200E+04, 2.727320400E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="5000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.650601400E+00, -3.576385200E-04, 2.959229300E-07, -7.280482900E-11,
|
||||
5.796332900E-15, 5.343705400E+04, 5.220405700E+00,</floatArray>
|
||||
5.796332900E-15, 5.343705400E+04, 5.220405700E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -118,12 +118,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.836010000E+00, -2.702657000E-03, 6.849070000E-06, -5.424184000E-09,
|
||||
1.472131000E-12, 4.507593000E+04, 9.350778000E-01,</floatArray>
|
||||
1.472131000E-12, 4.507593000E+04, 9.350778000E-01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="2000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.110430000E+00, 1.094946000E-03, 2.898629000E-08, -2.745104000E-10,
|
||||
7.051799000E-14, 4.516898000E+04, 4.193487000E+00,</floatArray>
|
||||
7.051799000E-14, 4.516898000E+04, 4.193487000E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -136,12 +136,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.475092000E+00, 2.139338000E-03, 7.672306000E-07, 5.217668000E-10,
|
||||
-9.898824000E-13, 3.147397000E+04, 4.436585000E+00,</floatArray>
|
||||
-9.898824000E-13, 3.147397000E+04, 4.436585000E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="3000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
4.142390000E+00, 2.150191000E-03, -2.190730000E-07, -2.073725000E-10,
|
||||
4.741018000E-14, 3.110484000E+04, 2.930745000E-01,</floatArray>
|
||||
4.741018000E-14, 3.110484000E+04, 2.930745000E-01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -154,12 +154,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.946733000E+00, 6.466764000E-03, 5.991653000E-07, -2.218413000E-09,
|
||||
3.052670000E-13, 2.270173000E+04, 7.347948000E+00,</floatArray>
|
||||
3.052670000E-13, 2.270173000E+04, 7.347948000E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="3000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
5.015906000E+00, 3.732750000E-03, -3.609053000E-07, -3.729193000E-10,
|
||||
8.468490000E-14, 2.190233000E+04, -4.291368000E+00,</floatArray>
|
||||
8.468490000E-14, 2.190233000E+04, -4.291368000E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -172,12 +172,12 @@
|
|||
<NASA P0="100000.0" Tmax="1500.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.698707000E+00, 1.870180000E-02, -1.430704000E-05, 6.005836000E-09,
|
||||
-1.116293000E-12, 3.590825000E+04, 8.825191000E+00,</floatArray>
|
||||
-1.116293000E-12, 3.590825000E+04, 8.825191000E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="4000.0" Tmin="1500.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
1.127202000E+01, 2.538145000E-03, -2.998472000E-07, -9.465367000E-11,
|
||||
1.855053000E-14, 3.297169000E+04, -3.264598000E+01,</floatArray>
|
||||
1.855053000E-14, 3.297169000E+04, -3.264598000E+01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -190,12 +190,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
6.734798300E-01, 4.093153100E-02, -4.484125500E-05, 2.995223200E-08,
|
||||
-8.901085400E-12, 7.932787500E+03, 1.862740300E+01,</floatArray>
|
||||
-8.901085400E-12, 7.932787500E+03, 1.862740300E+01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="2000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
3.407493600E+00, 2.720647900E-02, -1.771320400E-05, 5.639117700E-09,
|
||||
-7.137868200E-13, 7.532184200E+03, 6.132175400E+00,</floatArray>
|
||||
-7.137868200E-13, 7.532184200E+03, 6.132175400E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -208,12 +208,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
5.133186000E+00, 1.252855000E-02, -4.620421000E-07, -6.606075000E-09,
|
||||
2.864345000E-12, 2.956915000E+04, 7.605133000E-01,</floatArray>
|
||||
2.864345000E-12, 2.956915000E+04, 7.605133000E-01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="3000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
8.986817000E+00, 5.405047000E-03, -5.214022000E-07, -5.313742000E-10,
|
||||
1.188727000E-13, 2.832748000E+04, -2.004478000E+01,</floatArray>
|
||||
1.188727000E-13, 2.832748000E+04, -2.004478000E+01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -226,12 +226,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
7.719684600E-01, 6.344274000E-02, -7.672610900E-05, 5.454371500E-08,
|
||||
-1.661172900E-11, 1.207126300E+04, 2.153250700E+01,</floatArray>
|
||||
-1.661172900E-11, 1.207126300E+04, 2.153250700E+01</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="2000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
6.093334100E+00, 3.658011200E-02, -2.389236100E-05, 7.627193200E-09,
|
||||
-9.676938400E-13, 1.129720500E+04, -2.747565400E+00,</floatArray>
|
||||
-9.676938400E-13, 1.129720500E+04, -2.747565400E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -244,12 +244,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
2.967197600E+00, 6.311955800E-03, -1.097079000E-05, 8.927868000E-09,
|
||||
-2.787368900E-12, 6.987073800E+04, 9.278950300E+00,</floatArray>
|
||||
-2.787368900E-12, 6.987073800E+04, 9.278950300E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="2000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
4.144677900E+00, 6.523467700E-04, -5.010852000E-07, 1.806284300E-10,
|
||||
-2.516111100E-14, 6.969470700E+04, 3.862736600E+00,</floatArray>
|
||||
-2.516111100E-14, 6.969470700E+04, 3.862736600E+00</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
@ -262,12 +262,12 @@
|
|||
<NASA P0="100000.0" Tmax="1000.0" Tmin="300.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
4.597912900E+00, 1.071527400E-02, -1.610042200E-05, 1.096920700E-08,
|
||||
-2.783287500E-12, 7.476632400E+04, 3.442167100E+00,</floatArray>
|
||||
-2.783287500E-12, 7.476632400E+04, 3.442167100E+00</floatArray>
|
||||
</NASA>
|
||||
<NASA P0="100000.0" Tmax="5000.0" Tmin="1000.0">
|
||||
<floatArray name="coeffs" size="7">
|
||||
7.421336000E+00, -1.170994800E-04, 8.982077500E-08, 7.193596400E-12,
|
||||
-2.567083700E-15, 7.414669900E+04, -1.036527400E+01,</floatArray>
|
||||
-2.567083700E-15, 7.414669900E+04, -1.036527400E+01</floatArray>
|
||||
</NASA>
|
||||
</thermo>
|
||||
</species>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ ideal_gas(name = 'gas',
|
|||
|
||||
#------------- bulk diamond -------------------------------------
|
||||
|
||||
pure_solid(name = 'diamond',
|
||||
stoichiometric_solid(name = 'diamond',
|
||||
elements = 'H C',
|
||||
density = (3.52, 'g/cm3'),
|
||||
species = 'C(d)')
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
<phase dim="3" id="diamond">
|
||||
<elementArray datasrc="elements.xml">H C</elementArray>
|
||||
<speciesArray datasrc="#species_data">C(d)</speciesArray>
|
||||
<thermo model="SolidCompound">
|
||||
<thermo model="StoichSubstance">
|
||||
<density units="g/cm3">3.52</density>
|
||||
</thermo>
|
||||
<transport model="None"/>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue