[Transport] Add temperature dependence of rotational relaxation

Results in increase in mixture-averaged thermal conductivity of ~1% or less, and
a similar increase in laminar flame speeds, at least for some test cases.
This commit is contained in:
Ray Speth 2018-07-20 22:19:37 -04:00
parent c3ba264284
commit e79cf6f8cb
4 changed files with 29 additions and 13 deletions

View file

@ -18,6 +18,14 @@ class MMCollisionInt;
//! Class GasTransport implements some functions and properties that are
//! shared by the MixTransport and MultiTransport classes.
//!
//! ### References
//!
//! * [Kee2003] R. J. Kee, M. E. Coltrin, and P. Glarborg. Chemically Reacting
//! Flow: Theory and Practice. 1st Ed. John Wiley and Sons, 2003.
//! * [Kee2017] R. J. Kee, M. E. Coltrin, P. Glarborg, and H. Zhu. Chemically
//! Reacting Flow: Theory and Practice. 2nd Ed. John Wiley and Sons, 2017.
//!
//! @ingroup tranprops
class GasTransport : public Transport
{

View file

@ -951,4 +951,4 @@ class TestIonFlame(utilities.CanteraTest):
self.sim.solve(loglevel=0, stage=2, enable_energy=True)
# Regression test
self.assertNear(max(self.sim.E), 131.9956, 1e-3)
self.assertNear(max(self.sim.E), 132.1922, 1e-3)

View file

@ -537,13 +537,19 @@ void GasTransport::fitProperties(MMCollisionInt& integrals)
double T_save = m_thermo->temperature();
const vector_fp& mw = m_thermo->molecularWeights();
for (size_t k = 0; k < m_nsp; k++) {
double tstar = Boltzmann * 298.0 / m_eps[k];
// Scaling factor for temperature dependence of z_rot. [Kee2003] Eq.
// 12.112 or [Kee2017] Eq. 11.115
double fz_298 = 1.0 + pow(Pi, 1.5) / sqrt(tstar) * (0.5 + 1.0 / tstar) +
(0.25 * Pi * Pi + 2) / tstar;
for (size_t n = 0; n < np; n++) {
double t = m_thermo->minTemp() + dt*n;
m_thermo->setTemperature(t);
vector_fp cp_R_all(m_thermo->nSpecies());
m_thermo->getCp_R_ref(&cp_R_all[0]);
double cp_R = cp_R_all[k];
double tstar = Boltzmann * t/ m_eps[k];
tstar = Boltzmann * t / m_eps[k];
double sqrt_T = sqrt(t);
double om22 = integrals.omega22(tstar, m_delta(k,k));
double om11 = integrals.omega11(tstar, m_delta(k,k));
@ -561,7 +567,9 @@ void GasTransport::fitProperties(MMCollisionInt& integrals)
double f_int = mw[k]/(GasConstant * t) * diffcoeff/visc;
double cv_rot = m_crot[k];
double A_factor = 2.5 - f_int;
double B_factor = m_zrot[k] + 2.0/Pi * (5.0/3.0 * cv_rot + f_int);
double fz_tstar = 1.0 + pow(Pi, 1.5) / sqrt(tstar) * (0.5 + 1.0 / tstar) +
(0.25 * Pi * Pi + 2) / tstar;
double B_factor = m_zrot[k] * fz_298 / fz_tstar + 2.0/Pi * (5.0/3.0 * cv_rot + f_int);
double c1 = 2.0/Pi * A_factor/B_factor;
double cv_int = cp_R - 2.5 - cv_rot;
double f_rot = f_int * (1.0 + c1);

View file

@ -161,16 +161,16 @@
CH2CHO 0
CH3CHO 0
Viscosity and thermal Cond vs. T
400 1.976e-05 0.0641
500 2.357e-05 0.07635
600 2.714e-05 0.08832
700 3.049e-05 0.1002
800 3.368e-05 0.112
900 3.673e-05 0.1237
1000 3.966e-05 0.1355
1100 4.247e-05 0.1471
1200 4.52e-05 0.1586
1300 4.784e-05 0.1701
400 1.976e-05 0.06427
500 2.357e-05 0.07668
600 2.714e-05 0.0888
700 3.049e-05 0.1008
800 3.368e-05 0.1128
900 3.673e-05 0.1247
1000 3.966e-05 0.1365
1100 4.247e-05 0.1483
1200 4.52e-05 0.1599
1300 4.784e-05 0.1715
Binary Diffusion Coefficients H2 vs species
H2 - H2 0.001688 0.001688
H2 - H 0.002572 0.002572