turbulent diffusivity model
This commit is contained in:
parent
5eabd42add
commit
5e1fafa9c7
2 changed files with 37 additions and 18 deletions
|
|
@ -57,10 +57,20 @@ public:
|
|||
virtual void getMixDiffCoeffs(double* const d) {
|
||||
GasTransport::getMixDiffCoeffs(d);
|
||||
|
||||
double Dm = 0.0;
|
||||
for (size_t k = 0; k < m_nsp; k++) {
|
||||
Dm += d[k] * m_weight[k];
|
||||
doublereal t = m_thermo->temperature();
|
||||
doublereal slope = (-(m_turbmodifier-1.0)/m_profwidth);
|
||||
doublereal trans = slope*(t-m_rdlayerstart) + 1.0;
|
||||
|
||||
double Dm = thermalConductivity() / (m_thermo->density() * m_thermo->cp_mass());
|
||||
|
||||
if (t < m_rdlayerstart - m_profwidth) {
|
||||
Dm *= m_turbmodifier;
|
||||
} else if (t > m_rdlayerstart) {
|
||||
Dm *= 1.0;
|
||||
} else {
|
||||
Dm *= trans;
|
||||
}
|
||||
|
||||
for (size_t k = 0; k < m_nsp; k++) {
|
||||
d[k] = Dm;
|
||||
}
|
||||
|
|
@ -87,10 +97,20 @@ public:
|
|||
virtual void getMixDiffCoeffsMass(double* const d){
|
||||
GasTransport::getMixDiffCoeffsMass(d);
|
||||
|
||||
double Dm = 0.0;
|
||||
for (size_t k = 0; k < m_nsp; k++) {
|
||||
Dm += d[k] * m_weight[k];
|
||||
doublereal t = m_thermo->temperature();
|
||||
doublereal slope = (-(m_turbmodifier-1.0)/m_profwidth);
|
||||
doublereal trans = slope*(t-m_rdlayerstart) + 1.0;
|
||||
|
||||
double Dm = thermalConductivity() / (m_thermo->density() * m_thermo->cp_mass());
|
||||
|
||||
if (t < m_rdlayerstart - m_profwidth) {
|
||||
Dm *= m_turbmodifier;
|
||||
} else if (t > m_rdlayerstart) {
|
||||
Dm *= 1.0;
|
||||
} else {
|
||||
Dm *= trans;
|
||||
}
|
||||
|
||||
for (size_t k = 0; k < m_nsp; k++) {
|
||||
d[k] = Dm;
|
||||
}
|
||||
|
|
@ -99,7 +119,9 @@ public:
|
|||
protected:
|
||||
|
||||
//! Internal storage for weights to calculate mean diffusivity
|
||||
vector_fp m_weight;
|
||||
doublereal m_turbmodifier;
|
||||
doublereal m_profwidth;
|
||||
doublereal m_rdlayerstart;
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,9 @@ namespace Cantera
|
|||
{
|
||||
TurbulentTransport::TurbulentTransport() :
|
||||
MixTransport(),
|
||||
m_weight(m_nsp)
|
||||
m_turbmodifier(1.0),
|
||||
m_profwidth(1e-5),
|
||||
m_rdlayerstart(300.)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
@ -23,18 +25,13 @@ void TurbulentTransport::init(ThermoPhase* thermo, int mode, int log_level)
|
|||
{
|
||||
MixTransport::init(thermo, mode, log_level);
|
||||
|
||||
m_weight.resize(m_nsp);
|
||||
|
||||
m_weight.assign(m_nsp, 0.0);
|
||||
m_weight[0] = 1.0;
|
||||
|
||||
ifstream myfile;
|
||||
myfile.open ("wmean-weights.txt");
|
||||
for (size_t k = 0; k < m_nsp; k++) {
|
||||
myfile >> m_weight[k];
|
||||
myfile.open ("turbulent-coefs.txt");
|
||||
|
||||
myfile >> m_turbmodifier;
|
||||
myfile >> m_profwidth;
|
||||
myfile >> m_rdlayerstart;
|
||||
|
||||
cout << m_thermo->speciesName(k) << m_weight[k] << endl;
|
||||
}
|
||||
myfile.close();
|
||||
|
||||
// m_reftemp = thermo->temperature();
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue