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

Pressure interpolation between cells

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

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 6, 2005, 22:37
Default Pressure interpolation between cells
  #1
Steve Moore
Guest
 
Posts: n/a
Hi

How does fluent interpolate the face values of pressure from the values stored at the cell centers? The reference in the manual is to a paper by Rhie and Chow that uses a 'pressure weighted method', using 'momentum equation coefficients'... although no further explanation is given. I've read that paper myself but can't see how or where in the paper you would find anything useful.
  Reply With Quote

Old   September 6, 2005, 22:44
Default Re: Pressure interpolation between cells
  #2
zxaar
Guest
 
Posts: n/a
fluent uses a method in which we solve the pressure correction or poisson equation for pressure correction. To constuct this pressure correction equation you need to interpolate the pressure gradient, not the value of pressure, this in fluent is done as arithmatic average, that is 0.5 * (val_1 + val_0)

the same average value of phase is used for gradient calculation where it needs valeu of pressure at face, that is p_face = 0.5 * (p_0 + p_1)

these gradients are unlimited gradients, and by using this you can calculate the limited gradients based on schemes of barth and jesperson (see the reference fluent gives to their paper).
  Reply With Quote

Old   September 6, 2005, 23:06
Default Re: Pressure interpolation between cells
  #3
Steve Moore
Guest
 
Posts: n/a
In the discretized momentum equation, isn't the pressure term the summation of pressure (multiplied by the face area) values? Where is the pressure gradient term? Also what does the poisson equation look like?

Steve
  Reply With Quote

Old   September 6, 2005, 23:07
Default Re: Pressure interpolation between cells
  #4
zxaar
Guest
 
Posts: n/a
and about rhie -chow funda, its like this:

we have at each cell descretised equation in this form, ap * v_p = sum (al * v_l) - grad(p)

sum is sum for all the faces of the cell.

now this means we have

v_p = ( sum(al * v_l ) ) / ap - grad(p) / ap

now the continuity says that sum(v_face . area) = 0,

so we get

sum ( ( (sum(al * v_l) / ap - grad(p)/ ap )|face . area ) = 0

this gives us:

sum( grad(p)/ap . area) |face = sum ( sum(al * v_l) / ap . area )

as our poisson equation, you can solve for it and get the new pressure and use it

or

you can further construct :

p_dash = press correction

sum( grad(p_dash) / ap .area )| face = sum ( sum(al * v_l) / ap . area ) - sum( grad(p)/ap . area) |face ,

and fluent uses this, grad (p) is by previous iteration

  Reply With Quote

Old   September 6, 2005, 23:10
Default Re: Pressure interpolation between cells
  #5
zxaar
Guest
 
Posts: n/a
and yes, the grad(p) is the gradient used as such, but the term with grad(p_dash) is descretised as they mention in udf manual you asked for cross diffusion terms
  Reply With Quote

Old   September 6, 2005, 23:30
Default Re: Pressure interpolation between cells
  #6
Steve Moore
Guest
 
Posts: n/a
Thanks for that... I think I've almost got it. What I still don't get though is with the discretization that is explained in the Fluent manual, the pressure term is a summation over the faces of the cell. Do they not actually do this? Is it that you use the divergence theorem on the pressure term to get it to a grad(p)? ... In which case shouldn't it be:

ap * v_p = sum (al * v_l) - grad(p)V

Steve
  Reply With Quote

Old   September 6, 2005, 23:45
Default Re: Pressure interpolation between cells
  #7
zxaar
Guest
 
Posts: n/a
yes it is correct , i omitted V so that i can keep the expression simle as possible to give you the idea. when it is solved it is in the form as u have written
  Reply With Quote

Old   September 7, 2005, 00:42
Default Re: Pressure interpolation between cells
  #8
Steve Moore
Guest
 
Posts: n/a
so what is the relation between pressure values stored at the cell center and the cell pressure gradient?
  Reply With Quote

Old   September 7, 2005, 00:52
Default Re: Pressure interpolation between cells
  #9
Steve Moore
Guest
 
Posts: n/a
Also... returning to one of your previous replies. You said:

v_p = ( sum(al * v_l ) ) / ap - grad(p) / ap

now the continuity says that sum(v_face . area) = 0,

so we get

sum ( ( (sum(al * v_l) / ap - grad(p)/ ap )|face . area ) = 0

If you're considering a given cell 'p' and if (say) your using a first order upwind scheme, then v_face may not necessarily be equal to v_p right? It could be equal to v_l (meaning the velocity in the center of one of the neighbouring cells) depending on the direction of the flow... Is that correct? and if so is that substitution OK?

Something else I've been wondering is how do you work out the 'upwind' direction? Is it basically taking the dot product of the area vector (of the face concerned) with the two velocity vectors on the cells that share that face and saying that the negative value is the upstream value... or have I got that wrong?

Thanks for all your help by the way... this has been really helpful for me
  Reply With Quote

Old   September 7, 2005, 01:44
Default Re: Pressure interpolation between cells
  #10
zxaar
Guest
 
Posts: n/a
the term (sum(al * v_l) / ap at face is interpolated by centeral differences , that is for each cell you get H = sum(al * v_l), so you can get H/ap interpolated at the face. in fluent they do not mention how they interpolate, they just mention they use central difference, but starCCM+ uses arithmatic average for H, that 0.5 * (H_1 + H_0),

for ap, it could be airthmatic mean, harmonic mean or volume weighted average.

for graient, (by gauss theorem), p_face = 0.5 * (p_0 + p_1). this is usual practice, and fluent says they use this value. starCCM+, first calculate gradient based on this value, then based on this gradient they get new face value p_face = p_0 + (deltaR) * grad(p)_0

so you can get two face values (from 0 and 1 cell) at face, so you can take p_face = 0.5 *(face value_1 + face_value_0)

  Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
interpolation for pressure harry OpenFOAM Running, Solving & CFD 35 November 10, 2017 07:35
Pressure Rise Error emueller CFX 0 May 5, 2009 12:08
Neumann pressure BC and velocity field Antech Main CFD Forum 0 April 25, 2006 03:15
physical boundary error!! kris Siemens 2 August 3, 2005 01:32
Hydrostatic pressure in 2-phase flow modeling (CFX4.2) HB &DS CFX 0 January 9, 2000 14:19


All times are GMT -4. The time now is 02:05.