CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   SIMPLE and PISO (

Aditya March 23, 2006 05:23

I have a few doubts of implementing SIMPLE and PISO fro transient problems.

1. What do we mean when we say SIMPLE is iterative and PISO is non-iterative. Does that indicate that the Momentum and continuity equations are simultaneously satisfied after the "second pressure correction" in PISO?

2, If that is so how does SIMPLE take care of the transient problems. By giving a small delta t and iterating to get converged solutions at that delta t?

3. In PISO why do we use the "correction" mass flux instead of the corrected one (I am not sre whther i am right on that) as the source term of the second pressure corrction equation. Does it not destroy the continuity??

Please answer.


newposter March 25, 2006 11:08


1. That's right, both, momentum and continuity should be fullfilled after the second corrector step if the time step is small enough (Courant Number lower than 1!). You can use more corrector steps if necessary (mostly not more than four). You can derive these equations in the same way like the second correction equation and this answers question 3: if correctly derived you have on the right hand side the divergence of correction massfluxes not of "real massfluxes". Note that in the first corrector step you correct the velocities from the momentum equations in the second corrector step you correct the velocity corrections!!! 2. You already answered! You can also derive a simple relationship between the underrelaxation for momentum equation you need for the iterative process within a time step for SIMPLE and the necessary time for the same calculation with PISO.

For this subject try also the following literature: 1) Ferziger and Peric C. Methods for F. Dynamics 2) The papers from the inventor of PISO Issa (Google) 3) The PhD of Mr. Hrvoje Jasak (wrote already very often in this place).

Good Luck!

Aditya March 27, 2006 00:34

Thank you newposter My doubts 2 and 3 ar now perfectly cleared. However I am still a bit confused on doubt 1. I am referrin Christian Michelsen Research report in which it is clearly stated that PISO is an iterative algorithm. While when I referred Issa's paper, it was explicitly stated that PISO is a non-iterative algorithm which makes more sense. So I am bit confused about the nomenclature used by the two authors.

Regards and thanks Aditya

newposter March 27, 2006 13:42


I think originally it was developed as a non-iterative method. Although many people write that they are using PISO in an iterative variant like SIMPLE or SIMPLEC with a much better convergence rate. I am also using it in the most cases in this variant. The problem in the non-iterative variant is the need for a very small timestep!

Good Luck!

And a question to you: How are you discretizing and calculating right hand side of your PISO (divergence of massflux-correction)? Are you using collocated variable arragement?

Aditya March 28, 2006 00:43

Yes the Rhie and Chow momentum Interpolation Staggered gris are more or less obsolete I think.

I have a small question about the timestep. I have incompressible equations on my hands. And depending upon whether unsteady or steady my a_p , a_nb and the source term (ref. Prof. Jayathi Murthy's notes) change. So in case of steady equations I nowhere use a timestep. So for using PISO for steady incompressible equations, I dont have an input of time step. Does this sound fundamentally incorrect? Since whenever PISO is mentioned, timestep comes up invariably.

By PISO what I do is to correct the first velocity correction at cell through the sum_(a_nb * phi_nb')/a_p which SIMPLE algorithm ignores. Please let me know.

Thanks and regards,


newposter April 1, 2006 18:52


That's ok that your APs are changing in the steady formulation of PISO. But then you are running this algorithm like SIMPLE with outer Iterations and not in the original version. It can be faster than SIMPLE or SIMPLEC but must not!

Your second question: You are solving a SIMPLE pressure correction equation with the divergence of massfluxes on the right hand side but with neglecting the corrections of neighbour-cells. Then you are correcting massfluxes, velocities and pressurefield. After this you have to solve a second pressure correction with the divergence of (a_nb * u_nb')/a_p on the right hand side. You get second pressure-corrections p'' and you have to correct then your pressure field again and your massfluxes and velocities again! After this your pressure field (at the new time step) is: p=p*+p'+p'' Your velocites are now (for example east-face): u=u*-dV/A_P*dp'/dx-dV/A_P*dp''/dx+(A_nb * u_nb')/A_P And your massfluxes: m=m*-A_E*(p'_E-p'_P)-A_E*(p''_E-p''_P)+S_e*(A_nb * u_nb')/A_P

* means the solution you got after the first momentum solution, S_e means surface on east-side!

But look also in literature to derive this equations! Good luck!

All times are GMT -4. The time now is 16:39.