CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Two fundamental questions about icoFoam while updating the velocities and pressure

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

Like Tree2Likes
  • 2 Post By hjasak

Reply
 
LinkBack Thread Tools Display Modes
Old   May 27, 2007, 01:02
Default (1) In typical CFD literature,
  #1
Member
 
roy fokker
Join Date: Mar 2009
Posts: 44
Rep Power: 8
dbxmcf is on a distinguished road
(1) In typical CFD literature, after the pressure correction equation is solved, the velocity is updated by adding the initial tentative velocity U* solved from the UEqn == -fvc::grad(p*), here p* is the initial pressure and the velocity correction U' from the pressure correction -rUA*fvc::grad(p'),i.e. U=U*+U'---------(a)
However from icoFoam code, it seems that the velocity is updated using:
U = rUA*UEqn.H()-rUA*fvc::grad(p')----------(b)
the difference between (a) and (b) is rUA*grad(p*), which is the gradient of initial pressure gradient, is there any reference for this difference?
(2) I didn't find the code for updating the pressure field which, in typical CFD literature, is p=p*+p', it seems that icoFoam is using the pressure correction value as the pressure value: p=p'?

I wonder if I have made my question clear, am I misunderstanding some basic concepts? Thanks a lot!
dbxmcf is offline   Reply With Quote

Old   May 27, 2007, 04:00
Default This is pretty basic stuff - h
  #2
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,763
Rep Power: 21
hjasak will become famous soon enough
This is pretty basic stuff - have a look at my Thesis:

- we solve for the pressure and not pressure correction
- the derivation of the pressure laplacian is given in detail in the Thesis.

Enjoy,

Hrv
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Old   May 27, 2007, 04:43
Default Thanks, actually I already rea
  #3
Member
 
roy fokker
Join Date: Mar 2009
Posts: 44
Rep Power: 8
dbxmcf is on a distinguished road
Thanks, actually I already read your thesis section 3.8.1, and I know that the pressure laplacian correction is from Eqn 3.141, because I read the wiki page:
http://openfoamwiki.net/index.php/IcoFoam

it says:
...
// take a Jacobi pass and update U. See Hrv Jasak's thesis eqn. 3.137 and Henrik Rusche's thesis, eqn. 2.43
// UEqn.H is the right-hand side of the UEqn minus the product of (the off-diagonal terms and U).
// See Eqn. 7.37 of Ferziger and Peric.
U = rUA*UEqn.H();
Ferziger's 7.37,7.39 is a pressure correction p'
Do you mean that your equation 3.137, 3.141 is the pressure p and not p'? And therefore the PISO loop is different (or slightly different) from the procedure by Ferziger?

I know this is quite fundamental, thanks for your reply.
dbxmcf is offline   Reply With Quote

Old   May 31, 2007, 09:40
Default Roy, You are right that the
  #4
Member
 
David P. Schmidt
Join Date: Mar 2009
Posts: 70
Rep Power: 8
schmidt_d is on a distinguished road
Roy,

You are right that the icoFoam implementation differs slightly from Feriger and Peric. The reference to Eqn. 7.37 in the Wiki comments is also misleading (mea culpa).

So the pressure Equation is Eqn. 7.35 from Ferziger and Peric; e.g. it is for the whole pressure, not just the correction to the estimated pressure field.

If this explanation makes sense, and you think you could improve the Wiki text, feel free to correct it.

David
schmidt_d is offline   Reply With Quote

Old   May 31, 2007, 15:58
Default Thanks, in fact I plan to make
  #5
Member
 
roy fokker
Join Date: Mar 2009
Posts: 44
Rep Power: 8
dbxmcf is on a distinguished road
Thanks, in fact I plan to make a step by step explanation of the icoFoam with PISO, the wiki page seems too simple an explanation for beginners. So far I still have some problem about one line:

adjustPhi(phi, U, p);
dbxmcf is offline   Reply With Quote

Old   May 31, 2007, 16:41
Default Consider a case which has zero
  #6
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,763
Rep Power: 21
hjasak will become famous soon enough
Consider a case which has zero gradient boundary condition on the pressure all the way around, like a pipe wit zero gradient outlet. In such a case, the pressure equation will not guarantee global continuity.

At the same time, if the mass flux in is not identical to mass flux out, the pressure equation (= continuity condition) will not have a solution.

adjustPhi will look for cases where p has got no fixed boundary condition and adjust total outflow from the domain after the momentum predictor to match the total inflow. Standard practice, slightly unusual packing :-)

Enjoy,

Hrv
mgg and franciscofelis like this.
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Reply

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
velocities and pressure Palani Velladurai Main CFD Forum 2 March 16, 2007 11:22
A fundamental problem about the UcorrectBoundaryConditions in icoFoam dbxmcf OpenFOAM Running, Solving & CFD 0 February 26, 2007 23:16
A fundamental problem about Pressure equation of the potentialFoam solver dbxmcf OpenFOAM Running, Solving & CFD 0 October 6, 2006 11:32
2 Fundamental CFD Questions regarding convergence Jon Main CFD Forum 0 September 24, 2005 20:47
fundamental questions Jim Kim Main CFD Forum 1 March 25, 2005 11:30


All times are GMT -4. The time now is 00:36.