From e0987483a226b9799ebde0b2e1a874eb9ba1ef7d Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 24 Feb 2014 11:18:30 +0000 Subject: [PATCH] driftFluxFoam: Separated control of solution of diffusion from bounded advection --- .../driftFluxFoam/alphaEqnSubCycle.H | 2 +- .../driftFluxFoam/ras/dahl/system/controlDict | 2 +- .../driftFluxFoam/ras/dahl/system/fvSolution | 30 ++++++++++++------- .../ras/mixerVessel2D/system/controlDict | 3 +- .../ras/mixerVessel2D/system/fvSolution | 20 +++++++++++-- .../ras/tank3D/system/controlDict | 4 +-- .../ras/tank3D/system/fvSolution | 23 ++++++++++---- 7 files changed, 59 insertions(+), 25 deletions(-) diff --git a/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H b/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H index ede3ad6f13..0e9e2bd10a 100644 --- a/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H +++ b/applications/solvers/multiphase/driftFluxFoam/alphaEqnSubCycle.H @@ -57,7 +57,7 @@ - fvm::laplacian(mut/rho, alpha1) ); - alpha1Eqn.solve(); + alpha1Eqn.solve(mesh.solver("alpha1Diffusion")); phiAlpha += alpha1Eqn.flux(); } diff --git a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/controlDict b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/controlDict index 04cdc807cd..67e02247c9 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/controlDict +++ b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/controlDict @@ -47,7 +47,7 @@ runTimeModifiable yes; adjustTimeStep on; -maxCo 1; +maxCo 5; maxDeltaT 1; diff --git a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution index aafe85c8a4..fbe0f240f9 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution @@ -19,8 +19,12 @@ solvers { "alpha1.*" { - nAlphaCorr 1; - nAlphaSubCycles 4; + nAlphaCorr 3; + nAlphaSubCycles 1; + + MULESCorr yes; + nLimiterIter 5; + alphaApplyPrevCorr yes; solver smoothSolver; smoother symGaussSeidel; @@ -29,6 +33,15 @@ solvers minIter 1; } + alpha1Diffusion + { + solver PCG; + preconditioner DIC; + tolerance 1e-6; + relTol 0; + minIter 1; + } + p_rgh { solver GAMG; @@ -49,7 +62,8 @@ solvers "(U|k|epsilon)" { - solver smoothSolver; + solver PBiCG; + preconditioner DILU; smoother symGaussSeidel; tolerance 1e-7; relTol 0.1; @@ -65,20 +79,16 @@ solvers PIMPLE { - nCorrectors 2; + momentumPredictor no; + nCorrectors 3; nNonOrthogonalCorrectors 0; } relaxationFactors { - fields - { - } equations { - "U.*" 1; - "k.*" 1; - "epsilon.*" 1; + ".*" 1; } } diff --git a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/controlDict b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/controlDict index 25ba33a488..5f9bee1349 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/controlDict +++ b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/controlDict @@ -47,8 +47,7 @@ runTimeModifiable yes; adjustTimeStep yes; -maxCo 0.5; -maxAlphaCo 0.5; +maxCo 1; maxDeltaT 0.05; diff --git a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution index b17fe4183d..fe17af4e50 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution @@ -19,13 +19,27 @@ solvers { "alpha1.*" { - nAlphaCorr 1; - nAlphaSubCycles 3; + nAlphaCorr 2; + nAlphaSubCycles 1; + + MULESCorr yes; + nLimiterIter 5; + alphaApplyPrevCorr yes; solver smoothSolver; smoother symGaussSeidel; tolerance 1e-6; relTol 0; + minIter 1; + } + + alpha1Diffusion + { + solver PCG; + preconditioner DIC; + tolerance 1e-6; + relTol 0; + minIter 1; } "rho.*" @@ -71,7 +85,7 @@ solvers PIMPLE { - momentumPredictor yes; + momentumPredictor no; nCorrectors 3; nNonOrthogonalCorrectors 0; diff --git a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/controlDict b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/controlDict index 93e66698b0..6a0cd39d3d 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/controlDict +++ b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/controlDict @@ -33,11 +33,11 @@ writeInterval 50; purgeWrite 0; -writeFormat ascii; +writeFormat binary; writePrecision 6; -writeCompression compressed; +writeCompression uncompressed; timeFormat general; diff --git a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution index 6234dea5f6..cb5f5e8897 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution @@ -19,8 +19,12 @@ solvers { "alpha1.*" { - nAlphaCorr 1; - nAlphaSubCycles 4; + nAlphaCorr 5; + nAlphaSubCycles 1; + + MULESCorr no; //yes; + nLimiterIter 5; + alphaApplyPrevCorr yes; solver smoothSolver; smoother symGaussSeidel; @@ -29,6 +33,15 @@ solvers minIter 1; } + alpha1Diffusion + { + solver PCG; + preconditioner DIC; + tolerance 1e-6; + relTol 0; + minIter 1; + } + p_rgh { solver GAMG; @@ -65,15 +78,13 @@ solvers PIMPLE { - nCorrectors 2; + momentumPredictor no; + nCorrectors 3; nNonOrthogonalCorrectors 0; } relaxationFactors { - fields - { - } equations { ".*" 1;