added nonzero polarizability test and changed thermal conductivity formula

This commit is contained in:
ignis 2018-10-29 08:34:51 +09:00
parent 8b6c4ea696
commit c6dcfeb5d7
3 changed files with 21 additions and 16 deletions

View file

@ -85,8 +85,11 @@ Foam::Neutral::Neutral(const dictionary& dict)
Zrot_ = readScalar(dict.lookup("rotationalRelaxation"));
}
C6_ = exp(1.8846 * log(alpha_) - 0.4737); // * sqr(e);
alphaQ_ = 2 * C6_;
if (alpha_ > 0.0)
{
C6_ = exp(1.8846 * log(alpha_) - 0.4737); // * sqr(e);
alphaQ_ = 2 * C6_;
}
}

View file

@ -34,7 +34,7 @@ License
// const dataType Foam::Particle::staticData();
//- Universal gas constant (default in [J/(kmol K)])
//- Universal gas constant (default in [J/(mol K)])
const Foam::scalar Foam::Particle::RR = constant::physicoChemical::R.value()*1000;
//- Elementary charge (default in [C])

View file

@ -642,7 +642,8 @@ void Foam::diffusivityModel::correct()
const scalar WbarI = Wbar[celli];
const scalar rhoQc2i = rhoQc2[celli];
thermo_.composition().Cv(localCv,pi,Ti);
thermo_.composition().Cv(localCv,pi,Ti); // J / kg / K
localCv *= Wpure; // convert to J / kmol / K
forAll (species_, i)
{
@ -680,22 +681,22 @@ void Foam::diffusivityModel::correct()
// Pure Thermal conductivity
forAll (species_, i)
{
const scalar R = Neutral::RR / Wpure[i];
const scalar CvTrans = (3./2.)*R;
const scalar CvRot = (dof[i]/2.)*R;
const scalar R = Neutral::RR; // J / kmol / K
const scalar CvTrans = (3./2.) * R;
const scalar CvRot = (dof[i]/2.) * R;
const scalar CvVib = localCv[i] - CvTrans - CvRot;
const scalar rSc = rhoi * Dii[i] / muI[i];
const scalar A = 5./2. - rSc;
const scalar B = Zrot[i] + (2./Neutral::pi) * ((5./3.)*CvRot + rSc);
const scalar B = Zrot[i] + (2./Neutral::pi) * ((5./3.)*(dof[i]/2.) + rSc);
const scalar AB = (2./Neutral::pi)*(A/B);
const scalar fTrans = (5./2.) * (1.0 - AB * CvRot / CvTrans);
const scalar fRot = rSc*(1.0+AB);
const scalar fRot = rSc*(1.0 + AB);
const scalar fVib = rSc;
kI[i] = muI[i]*(fTrans*CvTrans + fRot*CvRot + fVib*CvVib);
kI[i] = (muI[i]/Wpure[i])*(fTrans*CvTrans + fRot*CvRot + fVib*CvVib);
}
@ -729,6 +730,7 @@ void Foam::diffusivityModel::correct()
const scalar rhoQc2i = rhoQc2p[facei];
thermo_.composition().Cv(localCv,pi,Ti);
localCv /= Wpure;
forAll (species_, i)
{
@ -767,22 +769,22 @@ void Foam::diffusivityModel::correct()
// Pure Thermal conductivity
forAll (species_, i)
{
const scalar R = Neutral::RR / Wpure[i];
const scalar CvTrans = (3./2.)*R;
const scalar CvRot = (dof[i]/2.)*R;
const scalar R = Neutral::RR;
const scalar CvTrans = (3./2.) * R;
const scalar CvRot = (dof[i]/2.) * R;
const scalar CvVib = localCv[i] - CvTrans - CvRot;
const scalar rSc = rhoi * Dii[i] / muI[i];
const scalar A = 5./2. - rSc;
const scalar B = Zrot[i] + (2./Neutral::pi) * ((5./3.)*CvRot + rSc);
const scalar B = Zrot[i] + (2./Neutral::pi) * ((5./3.)*(dof[i]/2.) + rSc);
const scalar AB = (2./Neutral::pi)*(A/B);
const scalar fTrans = (5./2.) * (1.0 - AB * CvRot / CvTrans);
const scalar fRot = rSc*(1.0+AB);
const scalar fRot = rSc*(1.0 + AB);
const scalar fVib = rSc;
kI[i] = muI[i]*(fTrans*CvTrans + fRot*CvRot + fVib*CvVib);
kI[i] = (muI[i]/Wpure[i])*(fTrans*CvTrans + fRot*CvRot + fVib*CvVib);
}