diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.C index 35791ad175..a88b2dd9f6 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.C @@ -80,9 +80,7 @@ PopulationBalancePhaseSystem this->phasePairs_[key]->name() ), this->mesh().time().timeName(), - this->mesh(), - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE + this->mesh() ), this->mesh(), dimensionedScalar(dimDensity/dimTime, 0) @@ -202,24 +200,6 @@ Foam::PopulationBalancePhaseSystem::specieTransfer() const } -template -bool Foam::PopulationBalancePhaseSystem::read() -{ - if (BasePhaseSystem::read()) - { - bool readOK = true; - - // Models ... - - return readOK; - } - else - { - return false; - } -} - - template void Foam::PopulationBalancePhaseSystem::solve ( @@ -236,4 +216,34 @@ void Foam::PopulationBalancePhaseSystem::solve } +template +void Foam::PopulationBalancePhaseSystem::correct() +{ + BasePhaseSystem::correct(); + + forAll(populationBalances_, i) + { + populationBalances_[i].correct(); + } +} + + +template +bool Foam::PopulationBalancePhaseSystem::read() +{ + if (BasePhaseSystem::read()) + { + bool readOK = true; + + // Read models ... + + return readOK; + } + else + { + return false; + } +} + + // ************************************************************************* // diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.H index 0330bc78d3..0d4e6f694e 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/PhaseSystems/PopulationBalancePhaseSystem/PopulationBalancePhaseSystem.H @@ -97,15 +97,18 @@ public: virtual autoPtr specieTransfer() const; - //- Read base phaseProperties dictionary - virtual bool read(); - //- Solve all population balance equations virtual void solve ( const PtrList& rAUs, const PtrList& rAUfs ); + + //- Correct derived properties + virtual void correct(); + + //- Read base phaseProperties dictionary + virtual bool read(); }; diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/fractal.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/fractal.C index 62fadc35fd..0229f7b35e 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/fractal.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/fractal.C @@ -196,7 +196,6 @@ void Foam::diameterModels::shapeModels::fractal::correct() const sizeGroup& fi = sizeGroup_; const phaseModel& phase = fi.phase(); const volScalarField& alpha = phase; - const volScalarField& rho = phase.thermo().rho(); const populationBalanceModel& popBal = sizeGroup_.mesh().lookupObject @@ -204,32 +203,22 @@ void Foam::diameterModels::shapeModels::fractal::correct() sizeGroup_.VelocityGroup().popBalName() ); - surfaceScalarField fAlphaRhoPhi + surfaceScalarField fAlphaPhi ( - "fAlphaRhoPhi", - max(fvc::interpolate(fi, "fi"), SMALL)*phase.alphaRhoPhi() + "fAlphaPhi", + max(fvc::interpolate(fi, "fi"), small)*phase.alphaPhi() ); fvScalarMatrix kappaEqn ( - fvc::ddt(alpha, rho, fi)*kappa_.oldTime() - + alpha*rho*fi*fvm::ddt(kappa_) - + fvm::div(fAlphaRhoPhi, kappa_) - + fvm::SuSp - ( - fi - *( - fi.VelocityGroup().dmdt() - - (fvc::ddt(alpha, rho) + fvc::div(phase.alphaRhoPhi())) - ), - kappa_ - ) + fvm::ddt(alpha, fi, kappa_) + + fvm::div(fAlphaPhi, kappa_) == - sinteringModel_->R() - + fvc::Su(Su_*rho, kappa_) - - fvm::SuSp(popBal.SuSp(fi.i()())*fi*rho, kappa_) - + fvc::ddt(fi.phase().residualAlpha()*rho, kappa_) - - fvm::ddt(fi.phase().residualAlpha()*rho, kappa_) + + Su_ + - fvm::SuSp(popBal.SuSp(fi.i()())*fi, kappa_) + + fvc::ddt(fi.phase().residualAlpha(), kappa_) + - fvm::ddt(fi.phase().residualAlpha(), kappa_) ); kappaEqn.relax(); diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/sinteringModels/KochFriedlander/KochFriedlander.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/sinteringModels/KochFriedlander/KochFriedlander.C index 0f28af4766..3d62213f7f 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/sinteringModels/KochFriedlander/KochFriedlander.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/sizeGroup/shapeModels/fractal/sinteringModels/KochFriedlander/KochFriedlander.C @@ -108,7 +108,6 @@ Foam::diameterModels::shapeModels::sinteringModels::KochFriedlander::R() const const sizeGroup& fi = fractal_.SizeGroup(); const volScalarField& kappai = fractal_.fld(); const volScalarField& alpha = fi.phase(); - const volScalarField& rho = fi.phase().thermo().rho(); volScalarField::Internal R ( @@ -119,14 +118,14 @@ Foam::diameterModels::shapeModels::sinteringModels::KochFriedlander::R() const fi.mesh() ), fi.mesh(), - dimensionedScalar(dimDensity/dimTime, 0) + dimensionedScalar(inv(dimTime), 0) ); volScalarField::Internal tau(this->tau()); forAll(R, celli) { - R[celli] = fi[celli]*alpha[celli]*rho[celli]/tau[celli]; + R[celli] = fi[celli]*alpha[celli]/tau[celli]; } return fvm::Sp(R, kappai) - 6.0/fi.dSph()*R; diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.C index 224630934d..c6dd2e5d45 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.C @@ -135,27 +135,6 @@ void Foam::diameterModels::velocityGroup::scale() } -Foam::tmp> -Foam::diameterModels::velocityGroup::mvconvection() const -{ - tmp> mvConvection - ( - fv::convectionScheme::New - ( - phase().mesh(), - fields_, - phase().alphaRhoPhi(), - phase().mesh().divScheme - ( - "div(" + phase().alphaRhoPhi()().name() + ",f)" - ) - ) - ); - - return mvConvection; -} - - // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // Foam::tmp @@ -226,24 +205,8 @@ Foam::diameterModels::velocityGroup::velocityGroup diameterProperties.lookup("sizeGroups"), sizeGroup::iNew(phase, *this) ), - d_(dRef()), - dmdt_ - ( - IOobject - ( - IOobject::groupName("source", phase.name()), - phase.time().timeName(), - phase.mesh() - ), - phase.mesh(), - dimensionedScalar(dimDensity/dimTime, Zero) - ) + d_(dRef()) { - forAll(sizeGroups_, i) - { - fields_.add(sizeGroups_[i]); - } - d_ = dsm(); } @@ -256,14 +219,13 @@ Foam::diameterModels::velocityGroup::~velocityGroup() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::velocityGroup::preSolve() +void Foam::diameterModels::velocityGroup::correct() { - mvConvection_ = mvconvection(); -} + forAll(sizeGroups_, i) + { + sizeGroups_[i].correct(); + } - -void Foam::diameterModels::velocityGroup::postSolve() -{ if ( phase().mesh().solverDict(popBalName_).lookupOrDefault diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.H index e1110d52d5..d7bb127036 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroup.H @@ -110,15 +110,6 @@ class velocityGroup //- Sauter-mean diameter of the phase volScalarField& d_; - //- Multivariate convection scheme - tmp> mvConvection_; - - //- Table of fields for multivariate convection - multivariateSurfaceInterpolationScheme::fieldTable fields_; - - //- Mass transfer rate - volScalarField dmdt_; - // Private Member Functions @@ -130,8 +121,6 @@ class velocityGroup void scale(); - tmp> mvconvection() const; - protected: @@ -175,20 +164,8 @@ public: //- Return sizeGroups belonging to this velocityGroup inline const PtrList& sizeGroups() const; - //- Return const-reference to multivariate convectionScheme - inline const tmp>& mvConvection() const; - - //- Return const-reference to the mass transfer rate - inline const volScalarField& dmdt() const; - - //- Return reference to the mass transfer rate - inline volScalarField& dmdtRef(); - - //- Corrections before populationBalanceModel::solve() - void preSolve(); - - //- Corrections after populationBalanceModel::solve() - void postSolve(); + //- Correct the diameter field + virtual void correct(); //- Read diameterProperties dictionary virtual bool read(const dictionary& diameterProperties); diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroupI.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroupI.H index 92e72b5484..180f6f43cb 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroupI.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/diameterModels/velocityGroup/velocityGroupI.H @@ -46,24 +46,4 @@ Foam::diameterModels::velocityGroup::sizeGroups() const } -inline const Foam::tmp>& -Foam::diameterModels::velocityGroup::mvConvection() const -{ - return mvConvection_; -} - - -inline const Foam::volScalarField& Foam::diameterModels::velocityGroup:: -dmdt() const -{ - return dmdt_; -} - - -inline Foam::volScalarField& Foam::diameterModels::velocityGroup::dmdtRef() -{ - return dmdt_; -} - - // ************************************************************************* // diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LehrMilliesMewes/LehrMilliesMewes.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LehrMilliesMewes/LehrMilliesMewes.C index cd9d3fbc4c..9840d59e0e 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LehrMilliesMewes/LehrMilliesMewes.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LehrMilliesMewes/LehrMilliesMewes.C @@ -104,7 +104,7 @@ addToBinaryBreakupRate *exp(-sqrt(2.0)/pow3(fj.dSph()/L)) *6.0/pow(pi, 1.5)/pow3(fi.dSph()/L) *exp(-9.0/4.0*sqr(log(pow(2.0, 0.4)*fi.dSph()/L))) - /max(1.0 + erf(1.5*log(pow(2.0, 1.0/15.0)*fj.dSph()/L)), SMALL) + /max(1.0 + erf(1.5*log(pow(2.0, 1.0/15.0)*fj.dSph()/L)), small) /(T*pow3(L)); } diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.C index 8d95883d45..f0280ddfe1 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.C @@ -147,7 +147,7 @@ Foam::diameterModels::binaryBreakupModels::LuoSvendsen::LuoSvendsen // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::binaryBreakupModels::LuoSvendsen::correct() +void Foam::diameterModels::binaryBreakupModels::LuoSvendsen::precompute() { kolmogorovLengthScale_ = pow025 diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.H index 176b70d7b4..15b167e4f6 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/LuoSvendsen/LuoSvendsen.H @@ -202,8 +202,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to binary breakupRate virtual void addToBinaryBreakupRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.C index a010f8b323..7ad0f64297 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.C @@ -78,7 +78,7 @@ Foam::diameterModels::binaryBreakupModel::binaryBreakupModel // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::binaryBreakupModel::correct() +void Foam::diameterModels::binaryBreakupModel::precompute() {} diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.H index 7f225af655..2b307d4a86 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/binaryBreakupModels/binaryBreakupModel/binaryBreakupModel.H @@ -135,8 +135,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to binary breakupRate virtual void addToBinaryBreakupRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.C index 19d1b76914..f1fdeed823 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.C @@ -81,7 +81,7 @@ Foam::diameterModels::breakupModel::breakupModel // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::breakupModel::correct() +void Foam::diameterModels::breakupModel::precompute() {} diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.H index d71aaca221..cafc4b92ff 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/breakupModels/breakupModel/breakupModel.H @@ -159,8 +159,8 @@ public: return dsd_; } - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Set total breakupRate virtual void setBreakupRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.C index 3f569c9832..6429f9d19a 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.C @@ -86,7 +86,7 @@ BrownianCollisions // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::coalescenceModels::BrownianCollisions::correct() +void Foam::diameterModels::coalescenceModels::BrownianCollisions::precompute() { const volScalarField& T = popBal_.continuousPhase().thermo().T(); const volScalarField& p = popBal_.continuousPhase().thermo().p(); diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.H index ff4c8f3b79..46d681ca74 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/BrownianCollisions/BrownianCollisions.H @@ -129,8 +129,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to coalescenceRate virtual void addToCoalescenceRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.C index 8b4bafc3d5..54a080b971 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.C @@ -87,9 +87,9 @@ DahnekeInterpolation // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::coalescenceModels::DahnekeInterpolation::correct() +void Foam::diameterModels::coalescenceModels::DahnekeInterpolation::precompute() { - Brownian_().correct(); + Brownian_().precompute(); } diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.H index 696abe7aae..23ccd097ad 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/DahnekeInterpolation/DahnekeInterpolation.H @@ -109,8 +109,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to coalescenceRate virtual void addToCoalescenceRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.C index 3033f6899e..6e71e18307 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.C @@ -113,7 +113,7 @@ PrinceBlanch // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::coalescenceModels::PrinceBlanch::correct() +void Foam::diameterModels::coalescenceModels::PrinceBlanch::precompute() { if (laminarShear_) { diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.H index db20af5092..edb1ba668c 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/PrinceBlanch/PrinceBlanch.H @@ -203,8 +203,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to coalescenceRate virtual void addToCoalescenceRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.C index e366c0a23d..af53549b72 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.C @@ -78,7 +78,7 @@ Foam::diameterModels::coalescenceModel::coalescenceModel // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::coalescenceModel::correct() +void Foam::diameterModels::coalescenceModel::precompute() {} diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.H index e8b1fd8309..cfb1945c1e 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/coalescenceModels/coalescenceModel/coalescenceModel.H @@ -133,8 +133,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to coalescenceRate virtual void addToCoalescenceRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.C index eb01119bc7..47f917616d 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.C @@ -114,7 +114,7 @@ Foam::diameterModels::daughterSizeDistributionModel::nik } -void Foam::diameterModels::daughterSizeDistributionModel::correct() +void Foam::diameterModels::daughterSizeDistributionModel::precompute() { if (nik_.size() == 0) { diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.H index da85cbaa92..a98d08a3e9 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/daughterSizeDistributionModels/daughterSizeDistributionModel/daughterSizeDistributionModel.H @@ -122,8 +122,8 @@ public: //- Return contribution to sizeGroup i due to breakup in sizeGroup k const dimensionedScalar& nik(const label i, const label k) const; - //- Correct field independent expressions - void correct(); + //- Precompute field independent expressions + void precompute(); //- Calculate contribution to sizeGroup i due to breakup in sizeGroup k virtual dimensionedScalar calcNik diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.C index 1b59cb261c..1097f09919 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.C @@ -67,7 +67,7 @@ Foam::diameterModels::driftModels::constantDrift::constantDrift // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::driftModels::constantDrift::correct() +void Foam::diameterModels::driftModels::constantDrift::precompute() { N_ = Zero; diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.H index 137b8f0838..9e9447e495 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/constantDrift/constantDrift.H @@ -81,8 +81,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to driftRate virtual void addToDriftRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.C index 9accfbb2cb..eea558f7c2 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.C @@ -80,7 +80,7 @@ Foam::diameterModels::driftModel::driftModel // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::driftModel::correct() +void Foam::diameterModels::driftModel::precompute() {} diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.H index 514ad99c37..fce57d5499 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/driftModel/driftModel.H @@ -148,8 +148,8 @@ public: return dict_; } - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to driftRate virtual void addToDriftRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.C index d09e9784f8..6186cf6ced 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.C @@ -89,7 +89,7 @@ Foam::diameterModels::driftModels::phaseChange::phaseChange // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::driftModels::phaseChange::correct() +void Foam::diameterModels::driftModels::phaseChange::precompute() { const phaseSystem& fluid = popBal_.fluid(); diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.H index 9139477134..f63be410b3 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/driftModels/phaseChange/phaseChange.H @@ -98,8 +98,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to driftRate virtual void addToDriftRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.C index 73606a9873..d60cf2a137 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.C @@ -80,7 +80,7 @@ Foam::diameterModels::nucleationModel::nucleationModel // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::nucleationModel::correct() +void Foam::diameterModels::nucleationModel::precompute() {} diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.H index 7145697d04..93cc0f4f6a 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/nucleationModel/nucleationModel.H @@ -149,8 +149,8 @@ public: } - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to nucleationRate virtual void addToNucleationRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C index f5b27cf57e..575c4e9d62 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.C @@ -77,7 +77,7 @@ wallBoiling // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::diameterModels::nucleationModels::wallBoiling::correct() +void Foam::diameterModels::nucleationModels::wallBoiling::precompute() { const volScalarField& alphat = popBal_.mesh().lookupObject diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.H index 0fc745ac3e..2c53c353f8 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/nucleationModels/wallBoiling/wallBoiling.H @@ -86,8 +86,8 @@ public: // Member Functions - //- Correct diameter independent expressions - virtual void correct(); + //- Precompute diameter independent expressions + virtual void precompute(); //- Add to nucleationRate virtual void addToNucleationRate diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.C b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.C index 1bdc534e33..533a533f00 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.C +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.C @@ -31,11 +31,8 @@ License #include "nucleationModel.H" #include "phaseSystem.H" #include "surfaceTensionModel.H" -#include "fvmDdt.H" +#include "fvm.H" #include "fvcDdt.H" -#include "fvmSup.H" -#include "fvcSup.H" -#include "fvcDiv.H" #include "phaseCompressibleMomentumTransportModel.H" #include "shapeModel.H" @@ -227,40 +224,35 @@ void Foam::diameterModels::populationBalanceModel::createPhasePairs() } -void Foam::diameterModels::populationBalanceModel::correct() +void Foam::diameterModels::populationBalanceModel::precompute() { calcDeltas(); - forAll(velocityGroups_, v) - { - velocityGroups_[v].preSolve(); - } - forAll(coalescence_, model) { - coalescence_[model].correct(); + coalescence_[model].precompute(); } forAll(breakup_, model) { - breakup_[model].correct(); + breakup_[model].precompute(); - breakup_[model].dsdPtr()().correct(); + breakup_[model].dsdPtr()->precompute(); } forAll(binaryBreakup_, model) { - binaryBreakup_[model].correct(); + binaryBreakup_[model].precompute(); } forAll(drift_, model) { - drift_[model].correct(); + drift_[model].precompute(); } forAll(nucleation_, model) { - nucleation_[model].correct(); + nucleation_[model].precompute(); } } @@ -705,12 +697,9 @@ void Foam::diameterModels::populationBalanceModel::sources() phasePairIter ) { - pDmdt_(phasePairIter())->ref() = Zero; + *pDmdt_(phasePairIter()) = Zero; } - // Since the calculation of the rates is computationally expensive, - // they are calculated once for each sizeGroup pair and inserted into source - // terms as required forAll(sizeGroups_, i) { if (coalescence_.size() != 0) @@ -794,27 +783,6 @@ void Foam::diameterModels::populationBalanceModel::sources() } -void Foam::diameterModels::populationBalanceModel::dmdt() -{ - forAll(velocityGroups_, v) - { - velocityGroup& velGroup = velocityGroups_[v]; - - velGroup.dmdtRef() = Zero; - - forAll(sizeGroups_, i) - { - if (&sizeGroups_[i].phase() == &velGroup.phase()) - { - sizeGroup& fi = sizeGroups_[i]; - - velGroup.dmdtRef() += fi.phase().rho()*(Su_[i] - SuSp_[i]*fi); - } - } - } -} - - void Foam::diameterModels::populationBalanceModel::calcAlphas() { alphas_() = Zero; @@ -1266,7 +1234,7 @@ void Foam::diameterModels::populationBalanceModel::solve() if (nCorr > 0) { - correct(); + precompute(); } int iCorr = 0; @@ -1283,7 +1251,6 @@ void Foam::diameterModels::populationBalanceModel::solve() if (updateSources()) { sources(); - dmdt(); } maxInitialResidual = 0; @@ -1294,27 +1261,16 @@ void Foam::diameterModels::populationBalanceModel::solve() const phaseModel& phase = fi.phase(); const volScalarField& alpha = phase; const dimensionedScalar& residualAlpha = phase.residualAlpha(); - const volScalarField& rho = phase.thermo().rho(); fvScalarMatrix sizeGroupEqn ( - fvm::ddt(alpha, rho, fi) - + fi.VelocityGroup().mvConvection()->fvmDiv - ( - phase.alphaRhoPhi(), - fi - ) - + fvm::SuSp - ( - fi.VelocityGroup().dmdt() - - (fvc::ddt(alpha, rho) + fvc::div(phase.alphaRhoPhi())), - fi - ) - == - fvc::Su(Su_[i]*rho, fi) - - fvm::SuSp(SuSp_[i]*rho, fi) - + fvc::ddt(residualAlpha*rho, fi) - - fvm::ddt(residualAlpha*rho, fi) + fvm::ddt(alpha, fi) + + fvm::div(phase.alphaPhi(), fi) + == + Su_[i] + - fvm::SuSp(SuSp_[i], fi) + + fvc::ddt(residualAlpha, fi) + - fvm::ddt(residualAlpha, fi) ); sizeGroupEqn.relax(); @@ -1327,26 +1283,6 @@ void Foam::diameterModels::populationBalanceModel::solve() } } - if (nCorr > 0) - { - forAll(sizeGroups_, i) - { - sizeGroups_[i].correct(); - } - - forAll(velocityGroups_, i) - { - velocityGroups_[i].postSolve(); - } - } - - if (velocityGroups_.size() > 1) - { - calcAlphas(); - dsm_() = calcDsm(); - calcVelocity(); - } - volScalarField fAlpha0 ( sizeGroups_.first()*sizeGroups_.first().phase() @@ -1364,4 +1300,16 @@ void Foam::diameterModels::populationBalanceModel::solve() } } + +void Foam::diameterModels::populationBalanceModel::correct() +{ + if (velocityGroups_.size() > 1) + { + calcAlphas(); + dsm_() = calcDsm(); + calcVelocity(); + } +} + + // ************************************************************************* // diff --git a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.H b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.H index a8c675fc80..54c1314157 100644 --- a/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.H +++ b/applications/solvers/multiphase/multiphaseEulerFoam/phaseSystems/populationBalanceModel/populationBalanceModel/populationBalanceModel.H @@ -296,7 +296,7 @@ private: void createPhasePairs(); - void correct(); + void precompute(); void birthByCoalescence(const label j, const label k); @@ -455,6 +455,9 @@ public: //- Solve the population balance equation void solve(); + + //- Correct derived quantities + void correct(); }; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/README b/test/multiphase/multiphaseEulerFoam/populationBalance/README deleted file mode 100644 index dd5455be73..0000000000 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/README +++ /dev/null @@ -1,6 +0,0 @@ -The cases contained in this directory can be used for testing the -populationBalanceModel class which is a part of the multiphaseEulerFoam framework. -They represent single-cell setups, i.e. they solve the population balance -equation without spatial transport. The cases can also be used to study the -influence of certain parameters on the form of the size distribution, before -running a simulation with spatial transport. diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/binaryBreakup/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/breakup/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/coalescence/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/drift/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/drift/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/drift/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/drift/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/negativeDrift/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/system/fvSchemes b/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/system/fvSchemes index e2a4d63623..656615a05a 100644 --- a/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/system/fvSchemes +++ b/test/multiphase/multiphaseEulerFoam/populationBalance/simultaneousCoalescenceAndBreakup/system/fvSchemes @@ -29,14 +29,9 @@ divSchemes { default none; - "div\(phi,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*,alpha.*)" Gauss vanLeer; - "div\(phir,alpha.*)" Gauss vanLeer; - + "div\(phi,alpha.*)" Gauss vanLeer; "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; - "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - - "div\(alphaRhoPhi.*,(k|epsilon|omega|f).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/bubbleColumnPolydisperse/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/RAS/bubbleColumnPolydisperse/system/fvSchemes index 96115c1227..c16f288a39 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/bubbleColumnPolydisperse/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/bubbleColumnPolydisperse/system/fvSchemes @@ -37,7 +37,8 @@ divSchemes "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - "div\(alphaRhoPhi.*,(h|e|f).*\)" Gauss limitedLinear 1; + "div\(alphaRhoPhi.*,(h|e).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; "div\(alphaRhoPhi.*,K.*\)" Gauss limitedLinear 1; "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/system/fvSchemes index 25dd315e73..db37b895f2 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperse/system/fvSchemes @@ -38,7 +38,7 @@ divSchemes "div\(alphaRhoPhi.*,Yi\)" Gauss linearUpwind limited; "div\(alphaRhoPhi.*,(h|e).*\)" Gauss linearUpwind limited; - "div\(alphaRhoPhi.*,f.*\)" Gauss upwind; + "div\(alphaPhi.*,f.*\)" Gauss upwind; "div\(alphaRhoPhi.*,K.*\)" Gauss linearUpwind limited; "div\(alphaPhi.*,p\)" Gauss linearUpwind limited; "div\(phi.*,kappai.*\)" Gauss linearUpwind limited; diff --git a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/system/fvSchemes index 25dd315e73..db37b895f2 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/RAS/wallBoilingPolydisperseTwoGroups/system/fvSchemes @@ -38,7 +38,7 @@ divSchemes "div\(alphaRhoPhi.*,Yi\)" Gauss linearUpwind limited; "div\(alphaRhoPhi.*,(h|e).*\)" Gauss linearUpwind limited; - "div\(alphaRhoPhi.*,f.*\)" Gauss upwind; + "div\(alphaPhi.*,f.*\)" Gauss upwind; "div\(alphaRhoPhi.*,K.*\)" Gauss linearUpwind limited; "div\(alphaPhi.*,p\)" Gauss linearUpwind limited; "div\(phi.*,kappai.*\)" Gauss linearUpwind limited; diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/bubbleColumnPolydisperse/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/laminar/bubbleColumnPolydisperse/system/fvSchemes index 0e8c897ff8..da72928048 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/bubbleColumnPolydisperse/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/bubbleColumnPolydisperse/system/fvSchemes @@ -36,9 +36,10 @@ divSchemes "div\(alphaRhoPhi.*,U.*\)" Gauss limitedLinearV 1; "div\(phi.*,U.*\)" Gauss limitedLinearV 1; - "div\(alphaRhoPhi.*,(h|e|f).*\)" Gauss limitedLinear 1; - "div\(alphaRhoPhi.*,K.*\)" Gauss limitedLinear 1; - "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; + "div\(alphaRhoPhi.*,(h|e).*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,f.*\)" Gauss limitedLinear 1; + "div\(alphaRhoPhi.*,K.*\)" Gauss limitedLinear 1; + "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; "div\(\(\(\(alpha.*\*thermo:rho.*\)*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/system/fvSchemes index 2fbc51999d..18c7c5965a 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesis/system/fvSchemes @@ -41,8 +41,8 @@ divSchemes "div\(alphaRhoPhi.*,Y.*\)" Gauss limitedLinear 1; "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; - "div\(alphaRhoPhi.*,f.*\)" Gauss upwind; - "div\(fAlphaRhoPhi.*,kappa.*\)" Gauss linearUpwind limited; + "div\(alphaPhi.*,f.*\)" Gauss upwind; + "div\(fAlphaPhi.*,kappa.*\)" Gauss linearUpwind limited; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; } diff --git a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/system/fvSchemes b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/system/fvSchemes index 2fbc51999d..18c7c5965a 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/system/fvSchemes +++ b/tutorials/multiphase/multiphaseEulerFoam/laminar/titaniaSynthesisSurface/system/fvSchemes @@ -41,8 +41,8 @@ divSchemes "div\(alphaRhoPhi.*,Y.*\)" Gauss limitedLinear 1; "div\(alphaPhi.*,p\)" Gauss limitedLinear 1; - "div\(alphaRhoPhi.*,f.*\)" Gauss upwind; - "div\(fAlphaRhoPhi.*,kappa.*\)" Gauss linearUpwind limited; + "div\(alphaPhi.*,f.*\)" Gauss upwind; + "div\(fAlphaPhi.*,kappa.*\)" Gauss linearUpwind limited; "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear; }