From cfeb2c9233dc813296114aa76ce1a647670f74d2 Mon Sep 17 00:00:00 2001 From: sergio Date: Fri, 8 Sep 2017 15:35:27 -0700 Subject: [PATCH] ENH: adding oversetAdjustPhi to overInterFoam plus reconstructing U from phi in pEq. --- .../interFoam/overInterDyMFoam/createDyMControls.H | 5 +++++ .../interFoam/overInterDyMFoam/interDyMFoam.C | 3 ++- .../multiphase/interFoam/overInterDyMFoam/pEqn.H | 10 +++++++++- .../interFoam/overInterDyMFoam/readControls.H | 5 +++-- .../floatingBody/background/system/fvSolution | 2 ++ 5 files changed, 21 insertions(+), 4 deletions(-) diff --git a/applications/solvers/multiphase/interFoam/overInterDyMFoam/createDyMControls.H b/applications/solvers/multiphase/interFoam/overInterDyMFoam/createDyMControls.H index cb2dfd5ddd..5ddaf3477a 100644 --- a/applications/solvers/multiphase/interFoam/overInterDyMFoam/createDyMControls.H +++ b/applications/solvers/multiphase/interFoam/overInterDyMFoam/createDyMControls.H @@ -23,3 +23,8 @@ bool ddtCorr ( pimple.dict().lookupOrDefault("ddtCorr", true) ); + +bool adjustFringe +( + pimple.dict().lookupOrDefault("oversetAdjustPhi", false) +); diff --git a/applications/solvers/multiphase/interFoam/overInterDyMFoam/interDyMFoam.C b/applications/solvers/multiphase/interFoam/overInterDyMFoam/interDyMFoam.C index 7bb7f8af6b..4a986ef175 100644 --- a/applications/solvers/multiphase/interFoam/overInterDyMFoam/interDyMFoam.C +++ b/applications/solvers/multiphase/interFoam/overInterDyMFoam/interDyMFoam.C @@ -53,6 +53,7 @@ Description #include "interpolationCellPoint.H" #include "transform.H" #include "fvMeshSubset.H" +#include "oversetAdjustPhi.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -64,7 +65,7 @@ int main(int argc, char *argv[]) #include "createTime.H" #include "createDynamicFvMesh.H" #include "initContinuityErrs.H" - #include "createControl.H" + pimpleControl pimple(mesh); #include "createTimeControls.H" #include "createDyMControls.H" #include "createFields.H" diff --git a/applications/solvers/multiphase/interFoam/overInterDyMFoam/pEqn.H b/applications/solvers/multiphase/interFoam/overInterDyMFoam/pEqn.H index 0a5b0296b8..e332a353f6 100644 --- a/applications/solvers/multiphase/interFoam/overInterDyMFoam/pEqn.H +++ b/applications/solvers/multiphase/interFoam/overInterDyMFoam/pEqn.H @@ -38,6 +38,13 @@ phiHbyA += phig; + if (adjustFringe) + { + fvc::makeRelative(phiHbyA, U); + oversetAdjustPhi(phiHbyA, U); + fvc::makeAbsolute(phiHbyA, U); + } + // Update the pressure BCs to ensure flux consistency constrainPressure(p_rgh, U, phiHbyA, rAUf, MRF); @@ -64,7 +71,8 @@ "minGradP", fvc::reconstruct((phig - p_rghEqn.flux())/rAUf) ); - U = HbyA + rAU*cellMask*minGradP; + //U = HbyA + rAU*cellMask*minGradP; + U = fvc::reconstruct(phi); U.correctBoundaryConditions(); fvOptions.correct(U); } diff --git a/applications/solvers/multiphase/interFoam/overInterDyMFoam/readControls.H b/applications/solvers/multiphase/interFoam/overInterDyMFoam/readControls.H index 0df2a74f30..d8481c8870 100644 --- a/applications/solvers/multiphase/interFoam/overInterDyMFoam/readControls.H +++ b/applications/solvers/multiphase/interFoam/overInterDyMFoam/readControls.H @@ -11,5 +11,6 @@ moveMeshOuterCorrectors = massFluxInterpolation = pimple.dict().lookupOrDefault("massFluxInterpolation", false); -ddtCorr = - pimple.dict().lookupOrDefault("ddtCorr", true); \ No newline at end of file +ddtCorr = pimple.dict().lookupOrDefault("ddtCorr", true); + +adjustFringe = pimple.dict().lookupOrDefault("oversetAdjustPhi", false); diff --git a/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/fvSolution b/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/fvSolution index f7341ee5c0..04bfe4172a 100644 --- a/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/fvSolution +++ b/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/fvSolution @@ -85,6 +85,8 @@ PIMPLE ddtCorr yes; correctPhi no; + oversetAdjustPhi no; + moveMeshOuterCorrectors no; turbOnFinalIterOnly no; }