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

why PIMPLE doesn't converge at each time step but no diverging?

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By wyldckat

Reply
 
LinkBack Thread Tools Display Modes
Old   February 28, 2013, 12:02
Default why PIMPLE doesn't converge at each time step but no diverging?
  #1
Senior Member
 
immortality's Avatar
 
Ehsan
Join Date: Oct 2012
Location: Iran
Posts: 2,205
Rep Power: 17
immortality is on a distinguished road
I have set Pimple nCorrectors to 10 but despite of this high value pimple doesn't converge at each time step.my problem is transient.
what does that message about not converging mean?then why diverging doesnt occurs immediately after not converging at a time step?
Code:
PIMPLE: iteration 9
DILUPBiCG:  Solving for Ux, Initial residual = 1.660614399e-06, Final residual = 1.382107362e-16, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 2.725991237e-05, Final residual = 1.71994151e-15, No Iterations 2
DILUPBiCG:  Solving for h, Initial residual = 4.640570901e-07, Final residual = 2.664924362e-17, No Iterations 2
FDICPCG:  Solving for p, Initial residual = 1.311912104e-06, Final residual = 3.564637383e-15, No Iterations 6
FDICPCG:  Solving for p, Initial residual = 7.244953397e-14, Final residual = 2.568884643e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.343009192e-16, global = 1.367661713e-17, cumulative = 2.07229617e-08
rho max/min : 2.417134107 2.398184636
FDICPCG:  Solving for p, Initial residual = 2.735098395e-09, Final residual = 5.153284331e-15, No Iterations 4
FDICPCG:  Solving for p, Initial residual = 5.535348519e-14, Final residual = 2.142343159e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.334873446e-16, global = 1.47642379e-17, cumulative = 2.072296172e-08
rho max/min : 2.417134107 2.398184636
FDICPCG:  Solving for p, Initial residual = 1.335350283e-11, Final residual = 6.963764942e-16, No Iterations 3
FDICPCG:  Solving for p, Initial residual = 4.134830709e-14, Final residual = 1.474027945e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.301559708e-16, global = 1.40876864e-17, cumulative = 2.072296173e-08
rho max/min : 2.417134107 2.398184636
PIMPLE: iteration 10
DILUPBiCG:  Solving for Ux, Initial residual = 1.82942849e-06, Final residual = 5.541810383e-17, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 2.959945528e-05, Final residual = 2.277521743e-15, No Iterations 2
DILUPBiCG:  Solving for h, Initial residual = 6.035283727e-07, Final residual = 9.136129994e-17, No Iterations 2
FDICPCG:  Solving for p, Initial residual = 1.595530764e-06, Final residual = 3.504793444e-15, No Iterations 6
FDICPCG:  Solving for p, Initial residual = 7.14289137e-14, Final residual = 2.634399827e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.339840533e-16, global = 1.340257095e-17, cumulative = 2.072296174e-08
rho max/min : 2.417134107 2.398184636
FDICPCG:  Solving for p, Initial residual = 2.868202145e-09, Final residual = 5.345704264e-15, No Iterations 4
FDICPCG:  Solving for p, Initial residual = 5.420100184e-14, Final residual = 1.936677383e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.324211337e-16, global = 1.342398081e-17, cumulative = 2.072296176e-08
rho max/min : 2.417134107 2.398184636
FDICPCG:  Solving for p, Initial residual = 1.966838831e-11, Final residual = 6.116982397e-16, No Iterations 3
FDICPCG:  Solving for p, Initial residual = 4.085579847e-14, Final residual = 1.43049529e-15, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.304000431e-16, global = 1.357813178e-17, cumulative = 2.072296177e-08
rho max/min : 2.417134107 2.398184636
PIMPLE: not converged within 10 iterations
my fvSolution is:
Code:
solvers
{
    p
    {
       solver PCG;
       preconditioner FDIC;
       tolerance  1e-14;
       relTol 0;
       nsweeps 1000;
       maxIter 25000;

     /*solver          GAMG;
        smoother  DICGaussSeidel;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 200;
        nPreSweeps      0;
        nPostSweeps     2;
        nFinestSweeps   2;
        agglomerator  faceAreaPair;
        mergeLevels 2;
        tolerance       1e-012;
        relTol          0;*/
    }

    pFinal
    {
        $p;
        relTol          0;
    }

    "rho.*"
    {
        $p;
        tolerance       1e-12;
        relTol          0;
    }

    "(U|e|h|R|k|epsilon|omega)"
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-12;
        relTol          0;
        maxIter 25000;
    }

    "(U|h|R|k|epsilon|omega)Final"
    {
        $U;
        relTol          0;
    }
}


PIMPLE
{
    momentumPredictor yes;
    nOuterCorrectors 10;
    nCorrectors     5;
    nNonOrthogonalCorrectors 1;
    rhoMin          rhoMin [ 1 -3 0 0 0 ] .6;
    rhoMax          rhoMax [ 1 -3 0 0 0 ] 8.5;
    //convergence        1e-16;

residualControl
    {
        "(p|U|k|omega)"
        {
            relTol          0;
            tolerance       0.0000000001;
        }
    }
}
/*relaxationFactors
 {
   fields
   {
   p  0.9;
   }
equations
{
   U    .99;
   k    .99;
   omega .99;
   h     .99;
   e     .99;
}*/
immortality is offline   Reply With Quote

Old   March 1, 2013, 16:49
Default
  #2
Senior Member
 
santiagomarquezd's Avatar
 
Santiago Marquez Damian
Join Date: Aug 2009
Location: Santa Fe, Santa Fe, Argentina
Posts: 418
Rep Power: 15
santiagomarquezd will become famous soon enough
What value of residuals are expected for convergence?

Regards.
__________________
Santiago MÁRQUEZ DAMIÁN, Ph.D.
Post-doctoral Fellow
Research Center for Computational Mechanics (CIMEC) - CONICET/FICH-UNL
T.E.: 54-342-4511594 Ext. 1005
Güemes 3450 - (3000) Santa Fe
Santa Fe - Argentina
http://www.cimec.org.ar
santiagomarquezd is offline   Reply With Quote

Old   March 2, 2013, 01:35
Default
  #3
Senior Member
 
immortality's Avatar
 
Ehsan
Join Date: Oct 2012
Location: Iran
Posts: 2,205
Rep Power: 17
immortality is on a distinguished road
what do you mean?should not all values converge?
The PIMPLE says that it doesn't converge as its shown but values are converged(final residuals are low) then what does that mean that PIMPLE doesn't converge?
immortality is offline   Reply With Quote

Old   March 2, 2013, 08:17
Default
  #4
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,488
Blog Entries: 34
Rep Power: 86
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Greetings to all!

@Ehsan: I don't have a test case for confirming this myself, but I believe the issue is as follows:
  1. You're specifying that "p", "U", "k" and "omega" have to abide to the tolerance of... ... "1e-10 == 0.0000000001":
    Code:
    residualControl
        {
            "(p|U|k|omega)"
            {
                relTol          0;
                tolerance       0.0000000001;
            }
        }
  2. If you look at the output you've provided, on the last iteration you have:
    Code:
    DILUPBiCG:  Solving for Ux, Initial residual = 1.82942849e-06, Final residual = 5.541810383e-17, No Iterations 2
    DILUPBiCG:  Solving for Uy, Initial residual = 2.959945528e-05, Final residual = 2.277521743e-15, No Iterations 2
    It's the initial residual that counts for control and both "Ux" and "Uy" are well above 1e-10. I think this is why Santiago made that quick question.
Best regards,
Bruno
wyldckat is offline   Reply With Quote

Old   March 2, 2013, 09:08
Default
  #5
Senior Member
 
immortality's Avatar
 
Ehsan
Join Date: Oct 2012
Location: Iran
Posts: 2,205
Rep Power: 17
immortality is on a distinguished road
thank you dear Bruno.
Please verify im correct or not:variables set in residualControl check for initial residuals that be lower than set value.
But tolerances of variables that set in other dictionaries are related to final residuals.is it ok?
Then
1)how can i be certain that solution at each time step is converged?
2)What is better for tolerances in separate dictionaries for p,U,k,omega,...
3)which value for tolerances in residualControl is appropriate for sureness of convergency at each time step?
4)whats the usage and beneficient of residualControl totally?
immortality is offline   Reply With Quote

Old   March 2, 2013, 09:38
Default
  #6
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,488
Blog Entries: 34
Rep Power: 86
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Hi Ehsan,

Questions 1 to 3 - read this excellent post on the topic of convergence: Convergence

Question 4: AFAIK, it's an automated feature that hard-core CFD users rarely use . It will stop when the defined value is reached, but it cannot decide whether it's the right time to stop or not...

Hard-core CFD users look at the residual plots and decide from there when it's converged or what needs adjusting. I think the decision process is described in the post above.

Good luck! Best regards,
Bruno
immortality likes this.
wyldckat is offline   Reply With Quote

Old   March 2, 2013, 10:43
Default
  #7
Senior Member
 
santiagomarquezd's Avatar
 
Santiago Marquez Damian
Join Date: Aug 2009
Location: Santa Fe, Santa Fe, Argentina
Posts: 418
Rep Power: 15
santiagomarquezd will become famous soon enough
Hi, my question was about what value you set in the residualControl option.

Regards.
__________________
Santiago MÁRQUEZ DAMIÁN, Ph.D.
Post-doctoral Fellow
Research Center for Computational Mechanics (CIMEC) - CONICET/FICH-UNL
T.E.: 54-342-4511594 Ext. 1005
Güemes 3450 - (3000) Santa Fe
Santa Fe - Argentina
http://www.cimec.org.ar
santiagomarquezd is offline   Reply With Quote

Old   May 19, 2013, 14:16
Default
  #8
Senior Member
 
immortality's Avatar
 
Ehsan
Join Date: Oct 2012
Location: Iran
Posts: 2,205
Rep Power: 17
immortality is on a distinguished road
Hi dear Santiago
sorry for delay in reply.
in fact i have seen your message now accidently.
thanks.I never use residualControl anymore.
I think its for steady_state problems rather than transients.
is my conclusion true?
thanks for your before reply again.
__________________
Injustice Anywhere is a Threat for Justice Everywhere.Martin Luther King.
To Be or Not To Be,Thats the Question!
The Only Stupid Question Is the One that Goes Unasked.
immortality is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
pisoFoam with k-epsilon turb blows up - Some questions Heroic OpenFOAM Running, Solving & CFD 26 December 17, 2012 04:34
AMI speed performance danny123 OpenFOAM 19 October 24, 2012 07:44
Floating point exception error Alan OpenFOAM Running, Solving & CFD 10 April 6, 2012 14:02
Problem with FloatingObject Leech OpenFOAM Running, Solving & CFD 10 March 29, 2012 15:24
High Courant Number @ icoFoam Artex85 OpenFOAM Running, Solving & CFD 9 January 3, 2012 09:06


All times are GMT -4. The time now is 00:37.