CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Improving convergence - high viscosity problem

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By Bloerb

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 31, 2020, 06:25
Default Improving convergence - high viscosity problem
  #1
New Member
 
Julia Fed
Join Date: Jul 2020
Location: UK
Posts: 4
Rep Power: 5
JuliaFed is on a distinguished road
Hi,
I have been having problems with convergence while running OpenFOAM simulations. I have made my mesh in ANSYS (refined it a few times), converted it to OpenFOAM, and it works for low viscosities. The problem is that I need to reach very high values of viscosity (about 3000). Decreasing the timestep doesn't help and the Courant number explodes pretty quickly.

At the moment, I am using icoFoam, a uniform inlet velocity of 0.00023 m/s, Timestep = 0.005.

my fvSchemes file is:

ddtSchemes
{
default Euler;
}

gradSchemes
{
default Gauss linear;
}

divSchemes
{
default none;
div(phi,U) Gauss linear;
}

laplacianSchemes
{
default Gauss linear orthogonal;
}

interpolationSchemes
{
default linear;
}

snGradSchemes
{
default orthogonal;
}

and fvSolution:

solvers
{
p
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
relTol 0.05;
}

pFinal
{
$p;
relTol 0;
}

U
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-05;
relTol 0;
}
}

PISO
{
nCorrectors 4;
nNonOrthogonalCorrectors 0;
pRefCell 0;
pRefValue 0;
}
Maybe I can improve something here?

Thank you,
Julia
JuliaFed is offline   Reply With Quote

Old   July 31, 2020, 09:05
Default
  #2
Senior Member
 
Domenico Lahaye
Join Date: Dec 2013
Posts: 730
Blog Entries: 1
Rep Power: 17
dlahaye is on a distinguished road
High viscosity is numerically easy to tackle. A coarse mesh should do fine. Your mesh refinement makes CFL go down.

D.
dlahaye is offline   Reply With Quote

Old   July 31, 2020, 09:59
Default
  #3
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by JuliaFed View Post
Hi,
I have been having problems with convergence while running OpenFOAM simulations. I have made my mesh in ANSYS (refined it a few times), converted it to OpenFOAM, and it works for low viscosities. The problem is that I need to reach very high values of viscosity (about 3000). Decreasing the timestep doesn't help and the Courant number explodes pretty quickly.

At the moment, I am using icoFoam, a uniform inlet velocity of 0.00023 m/s, Timestep = 0.005.

my fvSchemes file is:

ddtSchemes
{
default Euler;
}

gradSchemes
{
default Gauss linear;
}

divSchemes
{
default none;
div(phi,U) Gauss linear;
}

laplacianSchemes
{
default Gauss linear orthogonal;
}

interpolationSchemes
{
default linear;
}

snGradSchemes
{
default orthogonal;
}

and fvSolution:

solvers
{
p
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
relTol 0.05;
}

pFinal
{
$p;
relTol 0;
}

U
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-05;
relTol 0;
}
}

PISO
{
nCorrectors 4;
nNonOrthogonalCorrectors 0;
pRefCell 0;
pRefValue 0;
}
Maybe I can improve something here?

Thank you,
Julia
I might know what your problem is: May you post images of your grid? cross sections, etc...?
Santiago is offline   Reply With Quote

Old   July 31, 2020, 16:43
Default
  #4
Senior Member
 
Join Date: Sep 2013
Posts: 353
Rep Power: 20
Bloerb will become famous soon enough
These mandate a really orthogonal high quality grid. If your checkMesh output has a nonOrthogonality above let's say 5 you should probably consider switching those out, or you'll loose accuracy. Going from orthogonal to uncorrected to corrected and limited results in higher accuracy on bad meshes. Solving with uncorrected or orthogonal will result in better convergence at the cost of accuracy if the mesh does not allow for it.

Code:
laplacianSchemes
{
    default         Gauss linear orthogonal; -> corrected 
}
snGradSchemes
{
    default         orthogonal; -> corrected 
}
Gauss linear isn't all that easy to converge. You might want to try limitedLinear 1 or linearUpwind grad(U) instead. Allthough this isn't a huge deal in your case, since highly viscous flow is usually creeping flow (really low Reynolds numbers) so this term vanishes no matter what and should not have a noticeable effect on your results. Some people even comment this term out inside the UEqn of the solver since it has so little effect at really high viscosity.
Code:
divSchemes
{
    default         none;
    div(phi,U)      Gauss linear; -> limitedLinear 1 or linearUpwind grad(U)
}
high viscosity often needs a lot of piso correctors to converge.
Code:
PISO
{
    nCorrectors     4; --> increase these
    nNonOrthogonalCorrectors 0; -> maybe go up to 1 here
}
Switching these is usually only done to speed up the simulation. Unless you are running a simulation on several dozen cores GAMG beats PCG usually vastly in run time as the solver for p.

Code:
solvers
{
    p
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-06;
        relTol          0.05;
    }

    pFinal
    {
        $p;
        relTol          0;
    }

    U
    {
        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance       1e-05;
        relTol          0;
    }
}
you could also switch to pimpleFoam and use nOuterCorrectors with relaxation. Just increasing nCorrectors to something absurd like 30 will however have a comparable effect at these viscosities. Might be slower to solve though
granzer likes this.
Bloerb is offline   Reply With Quote

Reply

Tags
convergen


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Convergence Problem in Multiphase problem (three phases) m.uzair FLUENT 0 August 2, 2018 08:23
handling of high viscosity Jim87 FLUENT 8 July 19, 2013 05:43
High turbulent viscosity, problem with BC Narmin FLUENT 2 May 8, 2007 03:17
convergence problem limseokmin FLUENT 3 November 14, 2004 12:43
convergence problem with SIMPLER NURAY KAYAKOL Main CFD Forum 1 February 24, 1999 13:43


All times are GMT -4. The time now is 22:10.