From cb2bc60fa557943bb5657d46b5f69538101f9e97 Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Thu, 23 Feb 2017 12:03:50 +0000 Subject: [PATCH] MULES: Adjust limiter only at boundaries for which the field value is fixed Resolves bug-report https://bugs.openfoam.org/view.php?id=2470 --- .../fvMatrices/solvers/MULES/CMULESTemplates.C | 10 ++++++++++ .../fvMatrices/solvers/MULES/MULESTemplates.C | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/finiteVolume/fvMatrices/solvers/MULES/CMULESTemplates.C b/src/finiteVolume/fvMatrices/solvers/MULES/CMULESTemplates.C index b9ffcc9bc4..e55889eaa3 100644 --- a/src/finiteVolume/fvMatrices/solvers/MULES/CMULESTemplates.C +++ b/src/finiteVolume/fvMatrices/solvers/MULES/CMULESTemplates.C @@ -259,6 +259,16 @@ void Foam::MULES::limiterCorr psiMinn[pfCelli] = min(psiMinn[pfCelli], psiPf[pFacei]); } } + else + { + forAll(phiCorrPf, pFacei) + { + const label pfCelli = pFaceCells[pFacei]; + + psiMaxn[pfCelli] = max(psiMaxn[pfCelli], psiMax); + psiMinn[pfCelli] = min(psiMinn[pfCelli], psiMin); + } + } forAll(phiCorrPf, pFacei) { diff --git a/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C b/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C index 675e4a3bd6..4ad5686625 100644 --- a/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C +++ b/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C @@ -301,6 +301,16 @@ void Foam::MULES::limiter psiMinn[pfCelli] = min(psiMinn[pfCelli], psiPf[pFacei]); } } + else + { + forAll(phiCorrPf, pFacei) + { + const label pfCelli = pFaceCells[pFacei]; + + psiMaxn[pfCelli] = max(psiMaxn[pfCelli], psiMax); + psiMinn[pfCelli] = min(psiMinn[pfCelli], psiMin); + } + } forAll(phiCorrPf, pFacei) {