CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums

Comments

Register Blogs Community New Posts Updated Threads Search

  1. Old Comment

    All about the PIMPLE algorithm - Part II

    Great one Tobi;

    I could really see what PIMPLE is doing at last.

    I tried the pitzDaily and though the initial parts work as mentioned, when i use the relaxationFactor for 'p' i get the following error:

    --> FOAM FATAL ERROR:
    previous iteration field
    IOobject: volScalarField p "/home/---/OpenFOAM/***-2.3.1/run/tutorials/incompressible/pimpleFoam/pitzDaily/0"

    not stored. Use field.storePrevIter() at start of iteration.


    Though i use the p.storePrevIter() function call before the pEqn.H file.

    On searching for over, I came to know that it was a bug in older versions and corrected from 2.0.X. Though i use 2.3.X is still have this error.

    Any ideas;

    Thanks once again;
    Saideep
    permalink
    Posted August 18, 2015 at 05:44 by Saideep Saideep is offline
  2. Old Comment

    divDevRhoReff and divDevReff

    Thank you very much sir. You've answered the question that confused me so many times.Thanks again
    permalink
    Posted August 2, 2015 at 09:23 by Souresh Souresh is offline
  3. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    Hi,

    "I created a bug report yesterday asking about this and Henry told me that pressure relaxation is only beneficial for large timesteps with Co >> 1. sonicFoam only supports smaller time steps for which pressure relaxation is not needed and slows convergence."

    That is clear. If you check this blog you see that the underrelaxation only is used to get higher Co numbers. If the Co is very small due to your timestep, the timestep itself is the limiting function.

    To your case, I will have a look at it.
    permalink
    Posted June 23, 2015 at 03:23 by Tobi Tobi is offline
  4. Old Comment

    All about the PIMPLE algorithm - Part II

    I created a bug report yesterday asking about this and Henry told me that pressure relaxation is only beneficial for large timesteps with Co >> 1. sonicFoam only supports smaller time steps for which pressure relaxation is not needed and slows convergence.

    However, I'm having a different issue with sonicFoam/relaxation factors. In my own case I see a dependence of the maximum field values on the relaxation factors, even though the solution is converged. I'm using very simple boundaries and the mesh is ok according to checkMesh. I have posted an example case in this thread, would you mind taking a look?
    http://www.cfd-online.com/Forums/ope...tml#post551131

    This problem does not appear on the tutorial cases, so I guess there is something wrong with my case.
    permalink
    Posted June 19, 2015 at 08:41 by chriss85 chriss85 is offline
  5. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    Now I get the point.
    Here I can not give you information. Maybe it should be implemented and it's forgotten till now (because if you underrelax U and E, you should also be able to implement p relaxation).

    Ask the developers or just implement it and make a study on a validation case and compare with and without.
    permalink
    Posted June 18, 2015 at 07:27 by Tobi Tobi is offline
  6. Old Comment

    All about the PIMPLE algorithm - Part II

    What I mean is that p.relax() is not called in the code of sonicFoam, whereas it is used in other solvers such as rhoPimpleFoam for example. In sonicFoam I see relaxation being applied to EEqn and UEqn (so directly on the matrix, not on the fields).

    See https://github.com/OpenFOAM/OpenFOAM...nicFoam/pEqn.H

    compared to https://github.com/OpenFOAM/OpenFOAM...pleFoam/pEqn.H
    permalink
    Posted June 18, 2015 at 07:13 by chriss85 chriss85 is offline
  7. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    I checked the tutorial of sonicFoam and it seems that you can add relaxation factors. Why not? Its only a mathematical treatment of the equations. Means you limit the new value with limiters (relaxation factors) till you get to the last outer iteration. Here the relaxation factors has to be 1 to get the correct result.

    Why we use relaxation factors is due to the fact, that some times its better to proceed the solution in more iterations than in one.

    If you start the sonicFoam, you see the following line:

    PIMPLE: Operating solver in PISO mode

    That give you the information that the PIMPLE Algorithm is implemented. Therefore, it is possible to use PIMPLE and if you use PIMPLE you use underrelaxation. Otherwise it does not make sence.
    permalink
    Posted June 18, 2015 at 06:01 by Tobi Tobi is offline
  8. Old Comment

    All about the PIMPLE algorithm - Part II

    Do you happen to know why the pressure is not relaxed in sonicFoam, compared to other compressible solvers? Do you believe it could cause problems to add a pressure relaxation?
    permalink
    Posted June 18, 2015 at 05:12 by chriss85 chriss85 is offline
  9. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    Hello,

    they are completely different. In the solver it specify when the solver for the matrix is moving out and in residualControl its for the outer loop. Means if all residual have reached one limit. Normally relTol is set to 0.1 or 0.01 to get faster solution in matrix calculation. For the residual control for the pimple algorithm it should be set to 0 because there the total tolerance (tol) should be the goal. Maybe its only a placeholder (i never used other values for relTol than 0, because I want to abort the PIMPLE loop if I reach the tolerance of xe-y)
    permalink
    Posted April 22, 2015 at 12:09 by Tobi Tobi is offline
  10. Old Comment

    All about the PIMPLE algorithm - Part II

    I wonder too about the difference/functioning between tolerance and relTol in solver and residualControl.
    permalink
    Posted April 22, 2015 at 11:20 by ASo ASo is offline
  11. Old Comment

    All about the PIMPLE algorithm - Part II

    Hi, I would like to clarify, how is the residualControl {} tolerance and relTol for U and p different from those specified in solver {} tolerances and relTol? Will one override another or are they totally different things?
    permalink
    Posted March 30, 2015 at 09:38 by haze_1986 haze_1986 is offline
  12. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    Quote:
    Originally Posted by akidess View Comment
    2) Is your converged solution guaranteed to be independent of the relaxation applied?
    Hello akidess,

    the solution is always independent of the relaxation (:
    I made three test cases that show the same results but there is also a interesting thing that I will mention. Thanks for your feedback!
    permalink
    Posted October 23, 2014 at 09:35 by Tobi Tobi is offline
  13. Old Comment
    Tobi's Avatar

    All about the PIMPLE algorithm - Part II

    Quote:
    Originally Posted by akidess View Comment
    Considering this post is aimed at beginners, two possible issues should be mentioned:
    1) How to choose the optimum underrelaxation parameters?
    2) Is your converged solution guaranteed to be independent of the relaxation applied?
    Thanks for replaying...

    1) I think that is also dependend on the problem you want to solve (like in SIMPLE) sometimes you need more relaxation in other cases you could increase it. Maybe you can switch this parameters during simulation. At the beginning lower and then increase it.

    2) Good question. Normally after reaching the final pimple loop the relaxation factors become "1" -> ".*Final" keyword in the relaxationFactors dictionary. So there is no under-relaxation anymore and the solution is independent of the relaxation applied. But in case that you exit the pimple loop due to the fact that you reach the convergence criterion, I can not guarantee that I am right. If I compare the "InitialResiduals" the solution should be independent of the applied relaxation. I will check this.

    If you agree with the hints, I will insert it to the hints.
    If you can give me some feedback about the second hint, you are welcomed.
    Thanks for reading and your feedback.
    permalink
    Posted October 22, 2014 at 09:15 by Tobi Tobi is offline
  14. Old Comment
    akidess's Avatar

    All about the PIMPLE algorithm - Part II

    Considering this post is aimed at beginners, two possible issues should be mentioned:
    1) How to choose the optimum underrelaxation parameters?
    2) Is your converged solution guaranteed to be independent of the relaxation applied?
    permalink
    Posted October 22, 2014 at 08:43 by akidess akidess is offline

All times are GMT -4. The time now is 21:35.