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

pimpleFoam vs simpleFoam vs pisoFoam vs icoFoam?

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

Like Tree32Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   September 4, 2009, 16:40
Default pimpleFoam vs simpleFoam vs pisoFoam vs icoFoam?
  #1
Senior Member
 
Pei-Ying Hsieh
Join Date: Mar 2009
Posts: 271
Rep Power: 9
phsieh2005 is on a distinguished road
Hi,

Can someone explain the difference among pimpleFoam, simpleFoam, pisoFoam, and icoFoam?

When to select which solver?

Thanks!

Pei
phsieh2005 is offline   Reply With Quote

Old   September 5, 2009, 04:01
Default
  #2
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 322
Rep Power: 8
ata is on a distinguished road
Hi
icoFoam is transient solver for incompressible, laminar flow of Newtonian fluids.

pimpleFoam is large time-step transient solver for incompressible, flow using the PIMPLE(merged PISO-SIMPLE) algorithm.

pisoFoam is transient solver for incompressible flow.
Turbulence modelling is generic, i.e. laminar, RAS or LES may be selected.

simpleFoam is steady-state solver for compressible, turbulent flow

Regards

Ata
DuarteMagalhaes likes this.

Last edited by ata; September 18, 2009 at 04:35.
ata is offline   Reply With Quote

Old   September 21, 2009, 03:53
Default
  #3
Member
 
David GISEN
Join Date: Jul 2009
Location: Germany
Posts: 37
Rep Power: 7
David* is on a distinguished road
simpleFoam is for incompressible, turbulent flow.
DuarteMagalhaes likes this.
David* is offline   Reply With Quote

Old   September 21, 2009, 04:51
Default pimpleFoam vs simpleFoam vs pisoFoam vs icoFoam? Reply to Thread
  #4
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 322
Rep Power: 8
ata is on a distinguished road
Hi David
Thanks it's true.
Regards

Ata
ata is offline   Reply With Quote

Old   February 18, 2010, 11:02
Default Using LES with simplefoam
  #5
Member
 
Join Date: Mar 2009
Location: Norway
Posts: 85
Rep Power: 8
kjetil is on a distinguished road
May LES be used with simpleFoam?
kjetil is offline   Reply With Quote

Old   February 18, 2010, 11:20
Default
  #6
Senior Member
 
Florian Krause
Join Date: Mar 2009
Location: Munich
Posts: 103
Rep Power: 8
florian_krause is on a distinguished road
Hello,

simpleFoam is a steady-state solver, as ata already mentioned.....

Thus, No you cannot use simpleFoam for LES. Use pisoFoam instead!

Best,
Florian
florian_krause is offline   Reply With Quote

Old   September 10, 2010, 05:36
Default
  #7
Senior Member
 
Nilesh Rane
Join Date: Apr 2010
Posts: 122
Rep Power: 7
nileshjrane is on a distinguished road
guys,

I am getting different results for same case using icoFoam and simpleFoam. icoFoam seems to give better results. What could be the reason?? Isn't the two suppose to give similar results??? BTW i am using the default solvers coming with OF170. Only change is i changed fvscheme for U to upwind (which is the scheme used in simpleFoam anyway).
__________________
Imagination is more important than knowledge..
nileshjrane is offline   Reply With Quote

Old   September 5, 2012, 11:14
Default
  #8
Senior Member
 
Julien
Join Date: Jun 2012
Location: France
Posts: 153
Rep Power: 5
Djub is on a distinguished road
Hi!

I have the same kind of question: what is the interest of pisoFoam compared to pimpleFoam -and vice-versa.
I am trying to simulate the interaction between wind and buildings: my simulation has to be unsteady, incompresible, with large to very large Reynolds number and complex geometry. Should I use pisoFoam or pimpleFoam? And why?

In your case, Nilesh, icoFoam is unsteady laminar, whereas simpleFoam is stead turbulent. Equations are not similar!

I know people who have choosen to prefer pimpleFoam over pisoFoam (http://www.symscape.com/node/948). But they are running RANS, I would like to perform LES. Any advice or explaination ?
Djub is offline   Reply With Quote

Old   September 5, 2012, 16:41
Default
  #9
Senior Member
 
Awais Ali
Join Date: Feb 2010
Location: Germany
Posts: 125
Rep Power: 8
owayz is on a distinguished road
Send a message via MSN to owayz
Using LES or RANS doesn't matter. People who normally prefer pimpleFOAM say that pimple Algorithm is more robust and efficient. They also say that it can be used for larger (compared to piso, where courant number of > 1 could result in diverged simulation) time steps. If larger time step is of interest (as in some sudo transient cases ) then surely pimple is an attractive algorithm.
You said that you want to do LES. In LES you might also need to think about time scales and you must keep your time step smaller than the time scales of the large eddies which you are actually simulating.
What I have observed is that people normally keep the courant number less that 0.5-0.4 . Pimple offers you more control by providing nOuterIterations parameter. Where as if nOuterIterations is = 1, you pimple is just simply a piso Algorithm. So definitely some addition cost on computation with more outer iterations could improve your results, but it is sometimes an important decision whether you want to improve the results further or not.

regards,
Awais
deji, songwukong, Alhasan and 7 others like this.
owayz is offline   Reply With Quote

Old   September 6, 2012, 04:21
Default
  #10
Senior Member
 
Julien
Join Date: Jun 2012
Location: France
Posts: 153
Rep Power: 5
Djub is on a distinguished road
Hi Awais. Thanks a lot for your advices. But I did not catch everything

"as in some sudo transient cases" . What means "sudo" ?

My goal is to model very large Reynolds problem: about 1e5 or 1e6. Thus, keeping a little Co is out of my CPU capabilities. Today I am running with Co close to 1. TJunction tutorial works with a Co of 5, and only 1 nOuterIterations . So this tuto is actually a piso algorithm?

I think about using a Co of 5 (same as the tuto), and 1 nOuterIterations (just to be not only piso but real pimple). Do you think it'd be OK?

Another aspect: I am not familiar with the concept of "final" solvers. For the momment I used the same as "normal" ones:
Quote:
p {solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0.1; }
pFinal { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0; }
"(U|k)" { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; }
"(U|k)Final" { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; }
Is this OK? Or does it make no sense? Or is it a waste of CPU?

Last edited by Djub; September 6, 2012 at 04:58. Reason: adding a question
Djub is offline   Reply With Quote

Old   September 6, 2012, 09:12
Default
  #11
Senior Member
 
Awais Ali
Join Date: Feb 2010
Location: Germany
Posts: 125
Rep Power: 8
owayz is on a distinguished road
Send a message via MSN to owayz
Hi Julien,
By Sudo Transient I mean a simulation which is physically not transient, but you use a transient flow solver like pimpleFoam. To see this in action you can also have a look at the angleDuct tutorial in rhoPimpleFoam/ras. There the courant number is 10.
But if you are using LES, you would need time Averaging of the solution. Plus time scale of the structures in flow is also important.
If you are doing RANS simulation then may be the setup you have just said (i.e. Co 5 and 1 nouterIteration) might work. But again in transient simulation you will be interested in averaged values of the flow, so just think whether you will be able to capture all the flow fluctuations with that time step or not.
My understanding is that you should keep Co < 1 (specially) when your flow is highly transient like flow over a cylinder produces vortex street and if the time step is high we might miss many modes of the fluctuations and this could be reflected in our averaged values (or may be it could also take more time to get a time averaged solution).
Regarding pFinal and UFinal I think these are somehow the stringent criteria for last Iteration on the equation in one pimple Loop so as to get the best possible solution in the numerical sense.
Regards,
Awais
Alhasan likes this.
owayz is offline   Reply With Quote

Old   September 10, 2012, 03:03
Default
  #12
Senior Member
 
akidess's Avatar
 
Anton Kidess
Join Date: May 2009
Location: Delft, Netherlands
Posts: 919
Rep Power: 17
akidess will become famous soon enough
Quote:
Originally Posted by Djub View Post
"as in some sudo transient cases" . What means "sudo" ?
Small side remark - he probably meant to write 'pseudo'
__________________
*On twitter @akidTwit
*Spend as much time formulating your questions as you expect people to spend on their answer.
*Help define the OpenFOAM stackexchange Q&A site: http://area51.stackexchange.com/prop...oam-technology
akidess is offline   Reply With Quote

Old   September 10, 2012, 10:25
Default
  #13
Senior Member
 
Awais Ali
Join Date: Feb 2010
Location: Germany
Posts: 125
Rep Power: 8
owayz is on a distinguished road
Send a message via MSN to owayz
Thanks for pointing that out Anton.
Regards,
Awais
owayz is offline   Reply With Quote

Old   September 12, 2012, 03:59
Default
  #14
Senior Member
 
Julien
Join Date: Jun 2012
Location: France
Posts: 153
Rep Power: 5
Djub is on a distinguished road
Hi everybody,

I ran some cases with Pimple. It rocks!
From a working PISO case, the only change is about nOuterIterations (in fvsolution ). In my case, I use 2 nOuterItreations. You have also to choose for final solvers, I suppose for the last iteration.
But PIMPLE permits the use of the entry adjustTimeStep yes in the controlDict. In this case, you control directly the CFL (entry maxCo). I am now working with a maxCo of 10 ! And it is still stable and realist . And of course much faster !

In this case, your time step is not constant so you may prefer to use writeControl adjustableRunTime (instead of timestep). In this case, writeInterval is in seconds.

Djub
lakeat, caduqued, zhernadi and 4 others like this.

Last edited by Djub; September 12, 2012 at 10:35.
Djub is offline   Reply With Quote

Old   March 20, 2013, 13:39
Default Courant number
  #15
Member
 
Suranga Dharmarathne
Join Date: Jan 2011
Location: TX, USA
Posts: 39
Rep Power: 6
sdharmar is on a distinguished road
Isn't it a problem if you increased Courant number>1

Br,
Suranga.
sdharmar is offline   Reply With Quote

Old   March 21, 2013, 05:53
Default
  #16
Senior Member
 
Julien
Join Date: Jun 2012
Location: France
Posts: 153
Rep Power: 5
Djub is on a distinguished road
Pimple being an Implicit numerical method (cf Wikipedia), you can use a large Co, greater than 1. Co needs to be smaller than 1 for explicit method (see here).
By the way, as owayz said, I took a great care to define correctly the time scales of the large eddies I am simulating.
In my case, there was no problem at Co=10. Nevertheless, Co=100 crashed, as well as Co=50. At Co=30, the results were not satisfactory. So the limit (in my case, which was a simple rectangular rod in a laminar flow, for vortex shedding estimation), the limit is between Co=10 (OK) and Co=30 (KO)
Alhasan, Nucleophobe and matpik like this.
Djub is offline   Reply With Quote

Old   March 27, 2013, 14:09
Default physical example
  #17
Senior Member
 
Join Date: Nov 2012
Location: Bavaria
Posts: 144
Rep Power: 4
aylalisa is on a distinguished road
Hi,

most stupid question comes probably at last.

I've read the discussion more then once but I am still not clear about the usage of these different solvers.

Could anybody try to explain the advantages/disadvantages on the basis of a practical situation.

Supposed there is a duct flow (L > 5000mm, W =250mm, H = 20mm, fluid = water, point of origin is located in the center of the duct) with...

a) small Reynoldsnumber (100 - 200) at inlet, no obstacle (e.g. rod or cube) in the middle of the duct,

b) small Reynoldsnumber (100 -200) at inlet, obstacle (cube with side length a=20mm) positioned in the center of the duct,

c) high Reynoldsnumber (> 3000) at inlet, no obstacle located in the duct,

d) high Reynoldsnumber (> 3000) at inlet, obstacle (cube a=20mm) positioned in the center of the duct.

For what case would you use which solver and why?
You could also change the physical setting of one of the cases if that helps to show the advantage of a specific solver.


Thanks a lot in advance!

Aylalisa
aylalisa is offline   Reply With Quote

Old   March 28, 2013, 03:59
Default
  #18
Senior Member
 
akidess's Avatar
 
Anton Kidess
Join Date: May 2009
Location: Delft, Netherlands
Posts: 919
Rep Power: 17
akidess will become famous soon enough
If there is no motion of the obstacle, then it doesn't influence your choice of solver. I believe you can use pimpleFoam for all cases. You might be able to use even larger timesteps (thus saving some computational time) by using simpleFoam for the high Reynolds cases.
__________________
*On twitter @akidTwit
*Spend as much time formulating your questions as you expect people to spend on their answer.
*Help define the OpenFOAM stackexchange Q&A site: http://area51.stackexchange.com/prop...oam-technology
akidess is offline   Reply With Quote

Old   April 3, 2013, 11:03
Default modify the situation
  #19
Senior Member
 
Join Date: Nov 2012
Location: Bavaria
Posts: 144
Rep Power: 4
aylalisa is on a distinguished road
What kind of flow phenomenon makes you use pisoFoam and icoFoam respectively?
aylalisa is offline   Reply With Quote

Old   April 3, 2013, 11:26
Default
  #20
Senior Member
 
Julien
Join Date: Jun 2012
Location: France
Posts: 153
Rep Power: 5
Djub is on a distinguished road
icoFoam is laminar, whereas pisoFoam can deal with turbulence.
Djub 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
Laminar simpleFoam and inviscid simpleFoam herenger OpenFOAM Running, Solving & CFD 7 July 11, 2013 06:27
SimpleFoam as Newtonian laminar flow solver titio OpenFOAM Running, Solving & CFD 2 March 8, 2013 05:44
Density in icoFoam Densidad en icoFoam manuel OpenFOAM Running, Solving & CFD 8 September 22, 2010 04:10
Error running simpleFoam in parallel skabilan OpenFOAM Running, Solving & CFD 2 August 29, 2008 09:42
Kubuntu uses dash breaks All scripts in tutorials platopus OpenFOAM Bugs 8 April 15, 2008 07:52


All times are GMT -4. The time now is 17:29.