twoPhaseEulerFoam: Corrected potential conservation issue at inlet-outlet BCs

Updated MULES to ensure the limiter is 1 at inlet BCs
This commit is contained in:
Henry
2013-08-15 17:03:52 +01:00
parent b9f9598725
commit 13e1addc35
4 changed files with 12 additions and 7 deletions

View File

@ -92,6 +92,12 @@
) )
); );
alphaPhic1.boundaryField() = min
(
phi1.boundaryField()*alpha1.boundaryField(),
alphaPhic1.boundaryField()
);
MULES::explicitSolve MULES::explicitSolve
( (
geometricOneField(), geometricOneField(),

View File

@ -485,11 +485,12 @@ void Foam::MULES::limiter
const labelList& pFaceCells = const labelList& pFaceCells =
mesh.boundary()[patchi].faceCells(); mesh.boundary()[patchi].faceCells();
const scalarField& phiBDPf = phiBDBf[patchi]; const scalarField& phiBDPf = phiBDBf[patchi];
const scalarField& phiCorrPf = phiCorrBf[patchi];
forAll(lambdaPf, pFacei) forAll(lambdaPf, pFacei)
{ {
// Limit outlet faces only // Limit outlet faces only
if (phiBDPf[pFacei] > 0) if ((phiBDPf[pFacei] + phiCorrPf[pFacei]) > SMALL*SMALL)
{ {
label pfCelli = pFaceCells[pFacei]; label pfCelli = pFaceCells[pFacei];
@ -862,7 +863,7 @@ void Foam::MULES::limiterCorr
forAll(lambdaPf, pFacei) forAll(lambdaPf, pFacei)
{ {
// Limit outlet faces only // Limit outlet faces only
if (phiCorrPf[pFacei] > 0) if (phiCorrPf[pFacei] > SMALL*SMALL)
{ {
label pfCelli = pFaceCells[pFacei]; label pfCelli = pFaceCells[pFacei];

View File

@ -28,9 +28,8 @@ boundaryField
outlet outlet
{ {
type pressureInletOutletVelocity; type fixedValue;
phi phi.particles; value uniform (0 0 0);
value $internalField;
} }
walls walls

View File

@ -6027,8 +6027,7 @@ boundaryField
{ {
inlet inlet
{ {
type fixedValue; type zeroGradient;
value uniform 0;
} }
outlet outlet
{ {