CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > General Forums > Main CFD Forum

Problems with SIMPLE

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 23, 2010, 08:46
Default Problems with SIMPLE
  #1
New Member
 
Fabian
Join Date: Jan 2010
Posts: 27
Rep Power: 16
gautcho is on a distinguished road
Hello, for a little project I want to implement a really easy example for the SIMPLE-algorithm with matlab (speed doesn't matter and with matlab plotting is easy). I started with an example from a book (CFD from Versteeg et al., example 6.2) and I get every value right, but the example ends before the loop of SIMPLE is really starting and I cant find my errors. So I have a few general questions about SIMPLE:

1. There are two linear equations systems to solve: one to find the u* out of the p* with the momentum equations and one to find the p' with the contnuity. Am I correct, if I say that the matrices, lets call them A and P, are the same in every inner loop? And only the solution-vector differs?
2. Is there any difference from the first time to go thru the loop to the nth (with n>=2) time besides the fact that you dont have to guess the p* because you get it from the further loop-run?
3. u* is always been calculated by the momentum equation and never guessed, right?
4. If I have got a steady and incompressible flow, is there any other variable beside the velocities and the pressure I have got to calculate?


Thank you for any answers
gautcho is offline   Reply With Quote

Old   January 24, 2010, 16:44
Default
  #2
New Member
 
Fabian
Join Date: Jan 2010
Posts: 27
Rep Power: 16
gautcho is on a distinguished road
Ok, let me simplify it: Do I have to calculate new coefficients (e.i. a_p, a_e, a_w) in every inner loop?
gautcho is offline   Reply With Quote

Old   January 27, 2010, 12:03
Default simple
  #3
Senior Member
 
CFDtoy
Join Date: Mar 2009
Location: United States
Posts: 145
Blog Entries: 2
Rep Power: 17
CFDtoy is on a distinguished road
Hi,
Let me try to find solutions to your problem.



Quote:
Originally Posted by gautcho View Post
Hello, for a little project I want to implement a really easy example for the SIMPLE-algorithm with matlab (speed doesn't matter and with matlab plotting is easy). I started with an example from a book (CFD from Versteeg et al., example 6.2) and I get every value right, but the example ends before the loop of SIMPLE is really starting and I cant find my errors. So I have a few general questions about SIMPLE:

1. There are two linear equations systems to solve: one to find the u* out of the p* with the momentum equations and one to find the p' with the contnuity. Am I correct, if I say that the matrices, lets call them A and P, are the same in every inner loop? And only the solution-vector differs?

Me: For u* eqn: the ap and other An are constructed from Navier momentum eqn

For p' eqn: ap, au comes from continuity eqn. so, ap's and other coefficient are different

2. Is there any difference from the first time to go thru the loop to the nth (with n>=2) time besides the fact that you dont have to guess the p* because you get it from the further loop-run?

Me: Is this steady or transient?
for transient: Each time there is an inner iteration loop..and everytime, p is different since you update p = p*+urf*p'
So, next time u visit finding u*, your right side has a new p and hence new gradient p source term

3. u* is always been calculated by the momentum equation and never guessed, right?

Me: u* is initialized thats about it (t = 0). Computed using mom eqn

4. If I have got a steady and incompressible flow, is there any other variable beside the velocities and the pressure I have got to calculate?

Me: single phase steady incompressible..u and p what more do u want?
u residuals give momentum balance and p residuals gives mass imbalance...


Thank you for any answers
__________________
CFDtoy
CFDtoy is offline   Reply With Quote

Old   January 28, 2010, 14:21
Default
  #4
New Member
 
Fabian
Join Date: Jan 2010
Posts: 27
Rep Power: 16
gautcho is on a distinguished road
Thank you for your answers, they helped me a lot. Yet another question: In almost every book about CFD you can read: You need SIMPLE to compute incompressible flows, because you dont have rho in the continuity-eq, so you cant use p=rho*R*T for calculating p and the velocities are the dominant variables in the momentum eq, so you dont have got a eq for p.

But whats the problem? I have got 4 eq (3D): 3 momentum + conti and 4 variables (3 velocities + pressure), so i can solve the problem explicit or implicit... What's about this "dominant variables", why couldnt I compute one velocitie from the continuity?
gautcho is offline   Reply With Quote

Old   January 28, 2010, 15:57
Default
  #5
Senior Member
 
Join Date: Nov 2009
Posts: 411
Rep Power: 19
DoHander is on a distinguished road
Because the continuity equations acts like a boundary condition, and not like a real separate equation for velocities. In incompressible flows.

If you don't like the idea of using a pressure equation, you can use the full NS equations preconditioned for low speed flows, just like for a compressible flow. Or Chorin's method where you use a pseudo-density equation instead of a continuity without the density like you have for the incompressible case.
DoHander is offline   Reply With Quote

Old   January 28, 2010, 17:00
Default Eqns
  #6
Senior Member
 
CFDtoy
Join Date: Mar 2009
Location: United States
Posts: 145
Blog Entries: 2
Rep Power: 17
CFDtoy is on a distinguished road
Hi there, (gautcho)
Let me try to get your questions straight. You have 4 eq (3 momentum + continuity) and 4 variablbes (3 vel and pressure)?

Ok lets see. for incompressible part: (btw are you looking at incomp or comp?)

continuity => rho*Area*vel = constant (without src) ok - eqn 1
Momentum eqns: u1 = dP/dx + .. - eqn 2
u2 = dP/dy + .. - eqn 3
u3 = dP/dz + ... - eqn 4

Now, you want to solve u from u1,u2,u3 right? ok..so what is your "good value" for p such that your u1, u2, u3 are good ? By saying good,

when you solve u1,u2,u3 ...it should automatically give you

Ai*ui = constnat (rho constant and no src) eqn 1 (Ai is the area vector)

Can you make sure that del (dot) (A1u1+A2u2+A3u3 ) = 0 (divergence of this vector is zero) ?

May be not. Somehow, your del (dot) (ui) gives some "extra value" on right side ..for the guessed P...so you correct p and try solving u1,u2,u3 again ...and check if del . aiui = 0 (or close to) ...this is basically SIMPLE method

Basically, since you are guessing the initial p to get u and that divergence is not maintained..you correct it. ..this is an iterative process..

/CFDtoy

Quote:
Originally Posted by gautcho View Post
Thank you for your answers, they helped me a lot. Yet another question: In almost every book about CFD you can read: You need SIMPLE to compute incompressible flows, because you dont have rho in the continuity-eq, so you cant use p=rho*R*T for calculating p and the velocities are the dominant variables in the momentum eq, so you dont have got a eq for p.

But whats the problem? I have got 4 eq (3D): 3 momentum + conti and 4 variables (3 velocities + pressure), so i can solve the problem explicit or implicit... What's about this "dominant variables", why couldnt I compute one velocitie from the continuity?
__________________
CFDtoy
CFDtoy is offline   Reply With Quote

Old   January 29, 2010, 02:56
Default
  #7
New Member
 
Fabian
Join Date: Jan 2010
Posts: 27
Rep Power: 16
gautcho is on a distinguished road
@DoHander: It have to use the SIMPLE-algorithm because it's the theme of my project. The question is: Why do I have to use it, if I want to compute incompressible flows. Maybe your first sentence give the right answer, but I'm not very experienced in CFD and FD and so it's a little bit too inexact for me. Why acts the continuity only like a BC? For me it's an equation in a system of equations and after discretisation I can solve this system...

@CFDtoy: I understand the method of SIMPLE, but it's the same question here: Why not solving it directly? And I'm looking at the incompressible part...
gautcho is offline   Reply With Quote

Old   February 2, 2010, 08:10
Default
  #8
New Member
 
Simon Hubbard
Join Date: Mar 2009
Posts: 10
Rep Power: 17
monkeytron is on a distinguished road
HI gautcho,

For incompressible flow you want to calculate four quantities for 3D flow - the three velocity components (u,v,w) and the pressure (p). You therefore need four equations - you've got the 3 NS equations, one for the velocity in each direction and you need another one to calculate the pressure. A common approach is to reformulate the continuity eqn into a correction to a guessed pressure field. This is what SIMPLE is. There is no point using continuity to get a velocity, that is what the NS eqns give you.
monkeytron is offline   Reply With Quote

Reply


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
SIMPLE momentum in cylindrical coordinates TerraVici Main CFD Forum 4 April 9, 2012 05:22
unsteady flow problems Daniel FLUENT 0 January 25, 2009 23:54
Problems with Fluent on simple 1D problems agg FLUENT 3 November 21, 2008 11:55
problems with VERY simple mesh Ralf Schmidt FLUENT 7 October 17, 2006 07:21
Solving a simple equation ? T Main CFD Forum 0 October 22, 2004 09:12


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