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) {
|
virtual void getMixDiffCoeffs(double* const d) {
|
||||||
GasTransport::getMixDiffCoeffs(d);
|
GasTransport::getMixDiffCoeffs(d);
|
||||||
|
|
||||||
double Dm = 0.0;
|
doublereal t = m_thermo->temperature();
|
||||||
for (size_t k = 0; k < m_nsp; k++) {
|
doublereal slope = (-(m_turbmodifier-1.0)/m_profwidth);
|
||||||
Dm += d[k] * m_weight[k];
|
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++) {
|
for (size_t k = 0; k < m_nsp; k++) {
|
||||||
d[k] = Dm;
|
d[k] = Dm;
|
||||||
}
|
}
|
||||||
|
|
@ -87,10 +97,20 @@ public:
|
||||||
virtual void getMixDiffCoeffsMass(double* const d){
|
virtual void getMixDiffCoeffsMass(double* const d){
|
||||||
GasTransport::getMixDiffCoeffsMass(d);
|
GasTransport::getMixDiffCoeffsMass(d);
|
||||||
|
|
||||||
double Dm = 0.0;
|
doublereal t = m_thermo->temperature();
|
||||||
for (size_t k = 0; k < m_nsp; k++) {
|
doublereal slope = (-(m_turbmodifier-1.0)/m_profwidth);
|
||||||
Dm += d[k] * m_weight[k];
|
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++) {
|
for (size_t k = 0; k < m_nsp; k++) {
|
||||||
d[k] = Dm;
|
d[k] = Dm;
|
||||||
}
|
}
|
||||||
|
|
@ -99,7 +119,9 @@ public:
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
//! Internal storage for weights to calculate mean diffusivity
|
//! 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() :
|
TurbulentTransport::TurbulentTransport() :
|
||||||
MixTransport(),
|
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);
|
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;
|
ifstream myfile;
|
||||||
myfile.open ("wmean-weights.txt");
|
myfile.open ("turbulent-coefs.txt");
|
||||||
for (size_t k = 0; k < m_nsp; k++) {
|
|
||||||
myfile >> m_weight[k];
|
myfile >> m_turbmodifier;
|
||||||
|
myfile >> m_profwidth;
|
||||||
|
myfile >> m_rdlayerstart;
|
||||||
|
|
||||||
cout << m_thermo->speciesName(k) << m_weight[k] << endl;
|
|
||||||
}
|
|
||||||
myfile.close();
|
myfile.close();
|
||||||
|
|
||||||
// m_reftemp = thermo->temperature();
|
// m_reftemp = thermo->temperature();
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue