populationBalanceModel: Moved access function for continuous phase turbulence

Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
This commit is contained in:
Will Bainbridge
2018-05-16 21:36:34 +01:00
parent c667687dd2
commit f6d24cf29f
11 changed files with 30 additions and 64 deletions

View File

@ -78,21 +78,6 @@ Foam::diameterModels::binaryBreakupModel::binaryBreakupModel
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
const Foam::phaseCompressibleTurbulenceModel&
Foam::diameterModels::binaryBreakupModel::continuousTurbulence() const
{
return
popBal_.mesh().lookupObject<phaseCompressibleTurbulenceModel>
(
IOobject::groupName
(
turbulenceModel::propertiesName,
popBal_.continuousPhase().name()
)
);
}
void Foam::diameterModels::binaryBreakupModel::correct() void Foam::diameterModels::binaryBreakupModel::correct()
{} {}

View File

@ -38,7 +38,6 @@ SourceFiles
#define binaryBreakupModel_H #define binaryBreakupModel_H
#include "populationBalanceModel.H" #include "populationBalanceModel.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -136,9 +135,6 @@ public:
// Member Functions // Member Functions
//- Return a reference to the turbulence model for the continuous phase
const phaseCompressibleTurbulenceModel& continuousTurbulence() const;
//- Correct diameter independent expressions //- Correct diameter independent expressions
virtual void correct(); virtual void correct();

View File

@ -81,7 +81,7 @@ Foam::diameterModels::breakupModels::LaakkonenAlopaeusAittamaa::setBreakupRate
const sizeGroup& fi = *popBal_.sizeGroups()[i]; const sizeGroup& fi = *popBal_.sizeGroups()[i];
breakupRate = breakupRate =
C1_*cbrt(continuousTurbulence().epsilon()) C1_*cbrt(popBal_.continuousTurbulence().epsilon())
*erfc *erfc
( (
sqrt sqrt
@ -89,12 +89,13 @@ Foam::diameterModels::breakupModels::LaakkonenAlopaeusAittamaa::setBreakupRate
C2_*popBal_.sigmaWithContinuousPhase(fi.phase()) C2_*popBal_.sigmaWithContinuousPhase(fi.phase())
/( /(
continuousPhase.rho()*pow(fi.d(), 5.0/3.0) continuousPhase.rho()*pow(fi.d(), 5.0/3.0)
*pow(continuousTurbulence().epsilon(), 2.0/3.0) *pow(popBal_.continuousTurbulence().epsilon(), 2.0/3.0)
) )
+ C3_*continuousPhase.mu() + C3_*continuousPhase.mu()
/( /(
sqrt(continuousPhase.rho()*fi.phase().rho()) sqrt(continuousPhase.rho()*fi.phase().rho())
*cbrt(continuousTurbulence().epsilon())*pow(fi.d(), 4.0/3.0) *cbrt(popBal_.continuousTurbulence().epsilon())
*pow(fi.d(), 4.0/3.0)
) )
) )
); );

View File

@ -81,21 +81,6 @@ Foam::diameterModels::breakupModel::breakupModel
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
const Foam::phaseCompressibleTurbulenceModel&
Foam::diameterModels::breakupModel::continuousTurbulence() const
{
return
popBal_.mesh().lookupObject<phaseCompressibleTurbulenceModel>
(
IOobject::groupName
(
turbulenceModel::propertiesName,
popBal_.continuousPhase().name()
)
);
}
void Foam::diameterModels::breakupModel::correct() void Foam::diameterModels::breakupModel::correct()
{} {}

View File

@ -38,7 +38,6 @@ SourceFiles
#include "populationBalanceModel.H" #include "populationBalanceModel.H"
#include "daughterSizeDistributionModel.H" #include "daughterSizeDistributionModel.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -148,9 +147,6 @@ public:
return popBal_; return popBal_;
} }
//- Return a reference to the turbulence model for the continuous phase
const phaseCompressibleTurbulenceModel& continuousTurbulence() const;
//- Return const-reference to daughter size distribution pointer //- Return const-reference to daughter size distribution pointer
const autoPtr<daughterSizeDistributionModel>& dsdPtr() const const autoPtr<daughterSizeDistributionModel>& dsdPtr() const
{ {

View File

@ -25,6 +25,7 @@ License
#include "CoulaloglouTavlaridesCoalescence.H" #include "CoulaloglouTavlaridesCoalescence.H"
#include "addToRunTimeSelectionTable.H" #include "addToRunTimeSelectionTable.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@ -79,11 +80,11 @@ addToCoalescenceRate
coalescenceRate += coalescenceRate +=
C1_*(pow(fi.x(), 2.0/3.0) + pow(fj.x(), 2.0/3.0)) C1_*(pow(fi.x(), 2.0/3.0) + pow(fj.x(), 2.0/3.0))
*sqrt(pow(fi.x(), 2.0/9.0) + pow(fj.x(), 2.0/9.0)) *sqrt(pow(fi.x(), 2.0/9.0) + pow(fj.x(), 2.0/9.0))
*cbrt(continuousTurbulence().epsilon())/(1 + popBal_.alphas()) *cbrt(popBal_.continuousTurbulence().epsilon())/(1 + popBal_.alphas())
*exp *exp
( (
- C2_*continuousPhase.mu()*continuousPhase.rho() - C2_*continuousPhase.mu()*continuousPhase.rho()
*continuousTurbulence().epsilon() *popBal_.continuousTurbulence().epsilon()
/sqr(popBal_.sigmaWithContinuousPhase(fi.phase())) /sqr(popBal_.sigmaWithContinuousPhase(fi.phase()))
/pow3(1 + popBal_.alphas()) /pow3(1 + popBal_.alphas())
*pow4(cbrt(fi.x())*cbrt(fj.x())/(cbrt(fi.x()) + cbrt(fj.x()))) *pow4(cbrt(fi.x())*cbrt(fj.x())/(cbrt(fi.x()) + cbrt(fj.x())))

View File

@ -26,6 +26,7 @@ License
#include "PrinceBlanch.H" #include "PrinceBlanch.H"
#include "addToRunTimeSelectionTable.H" #include "addToRunTimeSelectionTable.H"
#include "mathematicalConstants.H" #include "mathematicalConstants.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@ -95,7 +96,7 @@ addToCoalescenceRate
/(16.0*popBal_.sigmaWithContinuousPhase(fi.phase())) /(16.0*popBal_.sigmaWithContinuousPhase(fi.phase()))
) )
*log(h0_/hf_) *log(h0_/hf_)
*cbrt(continuousTurbulence().epsilon())/pow(rij, 2.0/3.0) *cbrt(popBal_.continuousTurbulence().epsilon())/pow(rij, 2.0/3.0)
); );
if (turbulentCollisions_) if (turbulentCollisions_)
@ -103,7 +104,7 @@ addToCoalescenceRate
coalescenceRate += coalescenceRate +=
( (
C1_*pi*sqr(fi.d() + fj.d()) C1_*pi*sqr(fi.d() + fj.d())
*cbrt(continuousTurbulence().epsilon()) *cbrt(popBal_.continuousTurbulence().epsilon())
*sqrt(pow(fi.d(), 2.0/3.0) + pow(fj.d(), 2.0/3.0)) *sqrt(pow(fi.d(), 2.0/3.0) + pow(fj.d(), 2.0/3.0))
) )
*collisionEfficiency; *collisionEfficiency;

View File

@ -78,21 +78,6 @@ Foam::diameterModels::coalescenceModel::coalescenceModel
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
const Foam::phaseCompressibleTurbulenceModel&
Foam::diameterModels::coalescenceModel::continuousTurbulence() const
{
return
popBal_.mesh().lookupObject<phaseCompressibleTurbulenceModel>
(
IOobject::groupName
(
turbulenceModel::propertiesName,
popBal_.continuousPhase().name()
)
);
}
void Foam::diameterModels::coalescenceModel::correct() void Foam::diameterModels::coalescenceModel::correct()
{} {}

View File

@ -36,7 +36,6 @@ SourceFiles
#define coalescenceModel_H #define coalescenceModel_H
#include "populationBalanceModel.H" #include "populationBalanceModel.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -134,9 +133,6 @@ public:
// Member Functions // Member Functions
//- Return a reference to the turbulence model for the continuous phase
const phaseCompressibleTurbulenceModel& continuousTurbulence() const;
//- Correct diameter independent expressions //- Correct diameter independent expressions
virtual void correct(); virtual void correct();

View File

@ -34,6 +34,7 @@ License
#include "fvcDdt.H" #include "fvcDdt.H"
#include "fvmSup.H" #include "fvmSup.H"
#include "fvcDiv.H" #include "fvcDiv.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * // // * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * //
@ -1161,6 +1162,21 @@ Foam::diameterModels::populationBalanceModel::sigmaWithContinuousPhase
} }
const Foam::phaseCompressibleTurbulenceModel&
Foam::diameterModels::populationBalanceModel::continuousTurbulence() const
{
return
mesh_.lookupObject<phaseCompressibleTurbulenceModel>
(
IOobject::groupName
(
turbulenceModel::propertiesName,
continuousPhase_.name()
)
);
}
void Foam::diameterModels::populationBalanceModel::solve() void Foam::diameterModels::populationBalanceModel::solve()
{ {
const dictionary& solutionControls = mesh_.solverDict(name_); const dictionary& solutionControls = mesh_.solverDict(name_);

View File

@ -154,6 +154,7 @@ SourceFiles
#include "sizeGroup.H" #include "sizeGroup.H"
#include "phasePair.H" #include "phasePair.H"
#include "pimpleControl.H" #include "pimpleControl.H"
#include "phaseCompressibleTurbulenceModelFwd.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -419,6 +420,9 @@ public:
const phaseModel& dispersedPhase const phaseModel& dispersedPhase
) const; ) const;
//- Return reference to turbulence model of the continuous phase
const phaseCompressibleTurbulenceModel& continuousTurbulence() const;
//- Solve the population balance equation //- Solve the population balance equation
void solve(); void solve();
}; };