# Pressure correction equation [SIMPLE]

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

 January 22, 2018, 18:36 Pressure correction equation [SIMPLE] #1 Member   Khaled Ahmad Join Date: Dec 2015 Posts: 32 Rep Power: 9 In developing a code... After we solve the pressure correction equation PP, we need to correct the velocities u,v and the pressure P, such that: P = P* + URF * (PP - PPref) where PPref is a reference value, usually assigned to the cell (2,2) URF is the under-relaxation factor Why would we use a reference pressure in correcting the pressure after the pressure correction equation? Thanks ...

January 25, 2018, 04:21
#2
Senior Member

Join Date: Dec 2017
Posts: 153
Rep Power: 7
Quote:
 Originally Posted by kh.aa In developing a code... Why would we use a reference pressure in correcting the pressure after the pressure correction equation? Thanks ...
Hello,

The problem is well know in literature and in text books (see for example Fezinger and Peric). You have to specify a reference pressure every time you have defined Neumann BC (zero gradient) at all your boundaries (e.g. lid driven cavity). This is due to the fact that the pressure-correction equation is a Poisson-like equation and if you fix the pressure's derivative everywhere, then your solution is defined up to an arbitrary constant. In other words your matrix is singular and this may create huge problem when you are solving the linear system. This ambiguity is removed by defining the pressure value in one cell of your choice, since your solution depends on pressure gradient only and not on absolute pressure. If, for example, you have an outlet where usually the pressure is fixed, then you have not to define a reference (your equation has at least one dirichlet condition) and everithing is fine as is.

Hope this help,

Alie

 January 25, 2018, 04:30 #3 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,388 Rep Power: 67 I would highlight that fixing a value is not a necessary condition. If the prescribed Neumann BC.s satisfies the compatibility condition in its discrete form the solution is ensured (up to an arbitrary function). AliE likes this.

January 25, 2018, 04:53
#4
Member

Join Date: Dec 2015
Posts: 32
Rep Power: 9
Quote:
 Originally Posted by AliE Hello, The problem is well know in literature and in text books (see for example Fezinger and Peric). You have to specify a reference pressure every time you have defined Neumann BC (zero gradient) at all your boundaries (e.g. lid driven cavity). This is due to the fact that the pressure-correction equation is a Poisson-like equation and if you fix the pressure's derivative everywhere, then your solution is defined up to an arbitrary constant. In other words your matrix is singular and this may create huge problem when you are solving the linear system. This ambiguity is removed by defining the pressure value in one cell of your choice, since your solution depends on pressure gradient only and not on absolute pressure. If, for example, you have an outlet where usually the pressure is fixed, then you have not to define a reference (your equation has at least one dirichlet condition) and everithing is fine as is. Hope this help, Alie
Thanks, that helped of course but I am not getting it quite well thought.

The problem here is with that "reference pressure", I've always like a dead value always there, e.g. in all of obstacles, I have to set u, v, ... and all the variables to zero. However, the pressure is always there with a great value "Pref"

According to that, I am getting unrealistic, I think, pressure contours.

To be specific, I am talking here about 2D incompressible flow, non orthogonal coordinates with uniform inlet, outlet, wall and axi-symmetric with some obstacles in the flow.

Thanks..

January 25, 2018, 04:57
#5
Member

Join Date: Dec 2015
Posts: 32
Rep Power: 9
Quote:
 Originally Posted by FMDenaro I would highlight that fixing a value is not a necessary condition. If the prescribed Neumann BC.s satisfies the compatibility condition in its discrete form the solution is ensured (up to an arbitrary function).
Actually, I tried that to set it zero and drop it at all, I ended up with more iterations but the results are more realistic, somehow.

 January 25, 2018, 05:04 #6 Senior Member   Join Date: Dec 2017 Posts: 153 Rep Power: 7 Ok , if you have an outlet then you have not to specify a pressure reference from some other cell, since the pressure is already fixed there. Standard BC for pressure your case should be: inlet: zero gradient obstables/walls: zero gradient outlet: fixed pressure (e.g. p=0) Do not calculate the correction using something like "P-P(2,2)", your pressure reference here is the p at oulet, fixed using a dirichlet BC.

January 25, 2018, 05:10
#7
Member

Join Date: Dec 2015
Posts: 32
Rep Power: 9
Quote:
 Originally Posted by AliE Ok , if you have an outlet then you have not to specify a pressure reference from some other cell, since the pressure is already fixed there. Standard BC for pressure your case should be: inlet: zero gradient obstables/walls: zero gradient outlet: fixed pressure (e.g. p=0) Do not calculate the correction using something like "P-P(2,2)", your pressure reference here is the p at oulet, fixed using a dirichlet BC.
Ok, Got it, Thank you

So I just correct the pressure P = P* + URF * (PP )

And where is exactly can I find something in that issue, I went through Fezinger and Peric and I did not find anything about this, I think

If you could please mention to me something to get it explained

Thank you so much

 January 25, 2018, 05:19 #8 Senior Member   Join Date: Dec 2017 Posts: 153 Rep Power: 7 Ok, and this is correct if you have assigned a p=0 bc at outlet that is a common practice. I remeber that in Ferzinger's book there are few lines about this problem somewhere. If you are not able to find out where, than look into Versteeg's book or simply search for this online and you wil find the answer. Cheers, Alie kh.aa likes this.

 Tags code, pressure-correction, solver