saidc. |
September 5, 2021 07:31 |
Pressure iterations reach max
1 Attachment(s)
Hi,
I'm solving a natural convection case with the buoyantPimpleFoam. The pressure solver reaches maximum iteration nearly all outer loops even if the checkMesh results looks fine and also the convergence criteria not tight.
- GAMG: Solving for p_rgh, Initial residual = 0.0475859098409, Final residual = 0.0157404857286, No Iterations 300
I've tried to get better mesh, more robust schemes (upwind), reduce relaxation factors and tolerances but none of them worked. Maybe I have missed something about boundary condition but they look fine either to me. Why do not converge? I am open to any suggestions. Files are attached.
Kind regards,
Said.
For quick look;
Code:
cells: 984891
Checking geometry...
Overall domain bounding box (-0.00334 -0.00334 -1.90819582357e-17) (0.00334 0.00334 0.08684)
Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
Mesh has 3 solution (non-empty) directions (1 1 1)
Boundary openness (2.79406534204e-16 6.89998282164e-16 1.24139673575e-16) OK.
Max cell openness = 2.51976925248e-16 OK.
Max aspect ratio = 6.09829454585 OK.
Minimum face area = 6.12453563709e-09. Maximum face area = 1.55316884489e-07. Face area magnitudes OK.
Min volume = 2.2134204e-13. Max volume = 1.88150115538e-11. Total volume = 2.30561433658e-06. Cell volumes OK.
Mesh non-orthogonality Max: 64.9766553786 average: 15.615597926
Non-orthogonality check OK.
Face pyramids OK.
Max skewness = 0.837135365112 OK.
Coupled point location match (average 0) OK.
Code:
p_rgh
{
solver GAMG;
tolerance 1e-4;
relTol 0.05;
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nFinestSweeps 2;
scaleCorrection yes;
directSolveCoarsestLevel false;
cacheAgglomeration on;
nCellsInCoarsestLevel 1000;
agglomerator faceAreaPair;
minIter 4;
maxIter 300;
mergeLevels 1;
}
p_rghFinal
{
solver GAMG;
tolerance 1e-6;
relTol 0.05;
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nFinestSweeps 2;
scaleCorrection yes;
directSolveCoarsestLevel false;
cacheAgglomeration on;
nCellsInCoarsestLevel 1000;
agglomerator faceAreaPair;
minIter 4;
maxIter 300;
mergeLevels 1;
}
Code:
ddtSchemes
{
default Euler;
}
gradSchemes
{
//default cellMDLimited Gauss linear 0.5;
//grad(U) cellMDLimited Gauss linear 0.5;
default cellLimited Gauss linear 0.5;
grad(U) cellLimited Gauss linear 0.5;
}
divSchemes
{
default none;
//div(phi,U) Gauss linearUpwind grad(U);
//div(phi,K) Gauss linearUpwind default;
//div(phi,h) Gauss linearUpwind default;
div(phi,U) Gauss upwind grad(U);
div(phi,K) Gauss upwind default;
div(phi,h) Gauss upwind default;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default Gauss linear limited 0.777;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default limited 0.777;
}
|