An intresting observation about SIMPLE Scheme
Hi All,
I wrote a code for simulating incompressible flows using SIMPLE scheme on staggered grids.One intresting observation was that the scheme is little unstable. I spent more that two weeks debugging the code. My problem went away after i did something wierd. With this modification I can go up to Re=25,000 for driven cavity. I boost the "Ap" or the diagonal coefficient of the pressure correction equation artificially.(by a factor of about 1.3).After that I did not observe any trouble in all of test cases & also driven cavity results match well with famous GhiaGhia solution. Does anybody have similar experience ? My friend also has a similar experience. This is why i am posting this question. Does this have anything to do with daigonal dominance or the scheme itself ? Is this typical of the scheme ? Any comments & explanations ? Regards, Abhijit Tilak. 
Re: An intresting observation about SIMPLE Scheme
Abhijit,
What you're doing is just underelaxation of the pressure correction equation. For the pressure correction equation, to increase AP is all that needs to be done because the contribution to the source term vanishes (initial guess for the pressure correction is zero everywhere). The relaxation factor which you use is just 1/1.3. Unfortunately, what you're doing is not always allowed and can lead to problems. regards DML 
Re: An intresting observation about SIMPLE Scheme
Hi,
I, know its like adding some inertia. Patankar in his book states that SIMPLE scheme is prone do divergence unless some relaxation is used. I was wondering if this form of relaxation is what most of you are are using. Is there a bug in my code ? Is doing this normal ? What is your experience ? Can you please elaborate ? Thanks, Abhijit Tilak. 
Re: An intresting observation about SIMPLE Scheme
Abhijit,
That is true, SIMPLE usually diverges without underrelaxation. But the underrelaxation should be applied with care. The main reason to use underelaxation in SIMPLE is that the changes in variables should be more gradual and no single transport equation should at once pull the solution too strongly towards itself. One should slowly approach the solution of the system of equations. If you apply underrelaxation to the pressure correction equation, you will fail to satisfy continuity equation. Now, depending on the formulation you used and the implementation of boundary conditions, your solution may diverge; here's why. First, once the residual of the continuity equation is significant (because of the relaxation of P' equation) you may need to use a conservative formulation of all other transport equations (c.f. the book of Patankar). Conservative form of the equations is more prone to divergence because either you must work with "bad" matrices or you get additional contribution to the sources. Second, the boundary conditions of the momentum/pressure equations. In the case you describe (driven cavity) the velocities are specified on all the boundaries. Therefore, you will always obtain a solution of the pressure correction equation despite the fact that the matrix is singular. It just follows from the integrability condition of the Poisson equation with Neumann B.Cs. For a more general case, when the inlets and outlets are present the situation is more complex. Just a hint, for the driven cavity problems (or in general, the problems without inlets/outlets/free boundaries) it is usually enough to apply a very slight underrelaxation (e.g. multiply your AP by 1.05). In this way you risk less (less violation of the mass balance) but the improvement in the convergence should be clearly seen. Hope this helps. DML 
Re: An intresting observation about SIMPLE Scheme
Hi
Thanks for your response. I also used the code for a flow over a backward facing step (Re=800) with exit pressure set to zero. I used same dirty trick boosting the Ap coefficient. Again the results compared with Gartling's paper look good.My code diverges if i don't boost the Ap coefficient for P' equation.Is there a possible bug in the code? Thanks, Abhijit Tilak. 
Re: An intresting observation about SIMPLE Scheme
Abhijit,
For constant pressure at the exit, the coefficient matrix of the pressure equation is no longer singular and you can obtain the solution. From what you're saying I think that your code works for these examples (driven cavity and backward step). If you want to make a further test for your code, try a case with one inlet and two outlets. Assume zero gradient for all variables (including pressure) at the outlets because you cannot, in general, set the pressure simultaneously at two outlets to zero. DML 
Re: An intresting observation about SIMPLE Scheme
Hi DML,
As u said I tested my code for multiple inlets/outlets. Exit pressure =0 was set for all outlets. I did'nt find any problems whatsoever. The problems start once I remove the artificial boosting of Ap coefficient for Pressure correction equn. Actually this is first time I am using SIMPLE scheme & staggered grids. All my work before was on nonstaggered grids with fractional step method. I am doin the staggered/SIMPLE out of curiosity. Any comments ? possible bug ? Thanks, Abhijit 
Re: An intresting observation about SIMPLE Scheme
Abhijit,
Congratulations... but you didn't do what I suggested. You know, the constant pressure B.C. for the multiple outlets can be assumed only for certain cases (e.g. outlets to the atmosphere). Now, you assumed p=0 for both outlets and obtained the solution. Fine, but this can be unphysical solution; it forces the difference in static pressure between the outlets to be zero. I'll give you a simple simple example to illustrate the problem. Let us take the flow in a pipeline as an example. We need to simulate the flow near an "Y" branch (one pipe branches into two pipes). We know the velocity profile well before the branch. For the start, we select the crosssection at a certain distance before the branch as the inlet. Two outlets will be located on the two pipes after the branch. This will be the domain of our calculations. You have all the freedom to select the position of the outlets. They should not be located too close to the branch, but they may be at a quite different distances from the branch for the two pipes. Depending on the selected positions of the outlets, static pressure at the outlets will be very different for the two outlets. The pressure losses will be different between the branch and the two outlets. A reasonable assumption is that we have developed flow conditions at the two outlets. Hence, the most straightforward condition is the zero axial gradient for all variables (including pressure) at the outlets. Your assumption (p=0 for both outlets) gives solution, but it usually a wrong solution for multiple outlets. Try my suggestion to use a zero normal gradient for all variables on the outlets. regards DML 
Re: An intresting observation about SIMPLE Scheme
Hi DML,
Thanks for the suggestion. My code currently is for cartesian coordinates. But it is not difficult to have multiple inlets & outlets. I tried case of one inlet & two outlets with zero gradient on P,u,v at exit. The code is stable so long as I boost the AP coefficient of P' equation. The results look reasonable & residues are order of 10^8. I think there is a bug in the code. What do u say ? Abhijit 
Re: An intresting observation about SIMPLE Scheme
Hi Abhijit, I have the same experience with you but I just boost the AP of pc a little ~ 1/0.99. By doing so, the convergence is significantly improved, and the velocity also looks reasonable, but I found that the accuracy of pressure is reduced. You can confirm this by simulating the Poisullue flow in a pipe or slot. You will observe that the velocity is good but the pressure distribution look like it is compressible flow!. The pressure difference should be constant along the flow direction but in this case you will see that the pressure decay too much from inlet to the downstream. This is my experience, can you conduct the same simulation and report your result?

Re: An intresting observation about SIMPLE Scheme
Hi Ilaner,
Thanks for your reply. I posted this question bcos me & one of my classmate who wrote SIMPLE code as a course project, experienced the same behaviour. One more thing, I have to increase the boosting of the coefficient as the reynolds number increases. the value of 1.3 that I mentioned was for Re = 10,000 for a driven cavity problem. For low Re...say 1000 I to boost the Ap coefficient by 1.03 or 1.02. I will try the test case you mentioned asap & let you know. Regards Abhijit 
Re: An intresting observation about SIMPLE Scheme
Hi Abhijit, Looking forward to seeing your result. BTW, If I remember correctly, I ever read a paper from NHT on this issue before. Unfortunately, I forget its title.
Regards Ilaner 
Re: An intresting observation about SIMPLE Scheme
Hi,
I tried the poisulle flow test case. As you said the accuracy of pressure is reduced, even though mass is conserved well & velocities look good. I also tried case of backward facing step Re=800. Increasing the boosting of Ap coefficient beyond 1.1 results in reduced accuracy in all variables. It washes away the recirculation zone between (x=4 & x=9) on top wall completely. Do you have any alternative explanation for this behaviour ? do you remember what the paper in NHT said about this ? Thanks Abhijit Tilak. 
All times are GMT 4. The time now is 19:22. 