CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   Finite Volume -- SIMPLE Algorithm (

Roger December 16, 2008 11:28

Finite Volume -- SIMPLE Algorithm

My name is Roger,

I am a grad student writing a lid-driven cavity code in matlab using the Finite-Volume-Method for a class. I am having trouble getting my SIMPLE algorithm to work. Does any body have any sample code for the Simple Algorithm, especially the initialization process for multiple iterations?

(I am using the Intro to Computational Fluid Dynamics by Versteeg as my guide. In example 6.2 I do not get the same value for the discretized momentum equation of node 1 for the second iteration as does Versteeg.)

Thank you,


Bignose December 17, 2008 23:30

Re: Finite Volume -- SIMPLE Algorithm
I would suggest going to the book written by the guy who basically invented SIMPLE. Patankar's Numerical Heat Transfer and Fluid Flow. Your school library should have a copy (probably multiple copies), your professor should probably have a copy, too. It really is the seminal work on the SIMPLE procedure.

Jed December 24, 2008 15:58

Re: Finite Volume -- SIMPLE Algorithm
FWIW, SIMPLE is a rather poor special case of a more general class: Schur complement derived preconditioners for iterative (usually Krylov) methods. For a good review, see

title={{A taxonomy and comparison of parallel block multi-level preconditioners for the incompressible Navier-Stokes equations}},
author={Elman, H.C. and Howle, V.E. and Shadid, J. and Shuttleworth, R. and Tuminaro, R.},
journal={Journal of Computational Physics},
publisher={Academic Press}

There isn't much reason to use the classical methods such as SIMPLE and Uzawa, except to show that they're not very good.

samia January 2, 2009 19:30

Re: Finite Volume -- SIMPLE Algorithm
i will traying the same thing good luck for us

SamR February 6, 2010 19:04

Hi Roger,

I am also trying to implement the SIMPLE algorithm (in Matlab) using the example from Versteeg, and have had the same problem with the second iteration. Towards the end of page 208, it says that they should have included under-relaxation measures for aP, Su and d, so I figured that was why I got different values for the discretised momentum equation on the second iteration.

I know its over a year since you originally posted , but was wondering if you found any useful resources to solve your issues?

Hope you can help.

kirilhs October 25, 2010 03:16

You can try SIMPLE-TS
The SIMPLE-like methods have some disadvantages.

You can try SIMPLE-TS, which do not need under-relaxation coefficients.

The source code written in c++ is also available.


spejbl February 10, 2011 04:47


I have written a code for a driven cavity problem (Finite-Volume-Method / SIMPLE-method for MATLAB) but's not really working. So it would be really nice if someone have a working MATLAB code for that problem which you can send to me so that I can check out where my mistakes are. I really dont know.

Thanks for helping!


jyothishkumar February 11, 2011 09:18


Have you tried the SIMPLE algorithm for 1d nozzle or diffuser. if not please try to do that and it wont take much time. If you are not getting the solution then let me know.



kabilan June 25, 2011 22:49

hai dear
i am trying to write code for 1d nozzle problem in versteeg book example 6.2. in that the program not working properly and i have more doubt in residual solving, so please send me program to
thank you

All times are GMT -4. The time now is 19:09.