PhD course in CFD with OpenSource software, Quarter 2, 2008

This PhD course can also be chosen by students in Master Programmes at Chalmers (Check with your coordinator so that they accept it! The Master Programme in Applied Mechanics accepts it.). Such students will be registered under the TME050 Project course, which is a general purpose course code for advanced project courses. PhD students will not be registered under TME050. Industrial participants should contact me at

The course homepage is

If you are interested in taking the course you should contact me at so that I can maintain an e-mail list that will be used for further information until the course starts. A definitive registration to the course should be made by October 20, by e-mail to me. Then I need to know your CID if you have any, or your personal number so that I can arrange the computer accounts. If you already have a CID, make sure that it will be valid throughout the course, and that you can log in to the student computers in MT11. I will help you if you have any problems with this.


The course gives an introduction to the use of OpenSource software for CFD applications. A major project work in OpenFOAM (see the short description below) forms a large part of the course. The project may be defined according to the student's special interests. The result of the project should be a detailed tutorial for a specific application or library of OpenFOAM. The tutorials will be peer-reviewed and graded by the students, and the tutorials thus form a part of the course. The tutorials will be made available as OpenSource, as a contribution to the OpenFOAM community. To pass the course the student must do the project and peer-review the tutorials from the other projects. There will also be some compulsory minor tasks. The TME050 Project course requires grading: Fail, 3, 4, 5. PhD students are not registered to TME050, but should reach an equivalence of grade 4 to pass. There will be no written examination, instead there will be some requirements for each grade.

The students will learn on the following subjects:

OpenFOAM (Open Field Operation and Manipulation, is developed and distributed by OpenCFD ( OpenFOAM is an object oriented C++ toolbox for solving various systems of partial differential equations using the finite volume method on arbitrary control volume shapes and configurations. It includes preprocessing (grid generator, converters, manipulators, case setup), postprocessing (using OpenSource Paraview), and many specialized CFD solvers are implemented. The features in OpenFOAM are comparable to what is available in the major commercial CFD codes. Some of the more specialized features that are included in OpenFOAM are: sliding grid, moving meshes, two-phase flow (Langrange, VOF, Euler-Euler) and fluid-structure interaction. The strength of OpenFOAM is however the object-oriented approach to generating specialized solvers, utilities and libraries, using a flexible set of C++ modules. OpenFOAM runs in parallel using automatic/manual domain decomposition, and the parallelism is integrated at a low level so that solvers can generally be developed without the need for any parallel-specific coding. Due to the distribution as an OpenSource code it is possible to gain control over the exact implementations of different features, which is essential in research work. It also makes development and tailoring of the code for the specific application possible. In addition to the source code, OpenFOAM gives access to an international community of OpenFOAM researchers through the discussion board at the OpenFOAM home page.


The course will be given as a number of full-day hands-on workshops, ending with one or two full days of presentations (depending on the number of students). In order not to interfere with the master course in Multiphase Flow (TME160), the course is given mondays and fridays. The students are also expected to work on some minor tasks and their project by themselves.

Some hints from me:

Project suggestions

(Most of these topics have been discussed a lot in the forum, so it should be possible to find all the answers there)


There is no requirement to buy any book. You have to find the information you need to solve your project and the tasks.

The C++ part of the course is based on C++ Direkt, by Jan Skansholm, Studentlitteratur, which is in Swedish. Any introductory C++ book should be fine. Anyone who is doing CFD is recommended to have the introductory book on CFD by Versteeg and Malalasekera. Another useful book is J.H. Ferziger and M. Peric Computational Methods for Fluid Dynamics 3rd ed. Springer 2002. There is also a lot to find on the Internet, for example:

More information

See the homepage of the course given 2007 for more information. The course for 2008 will develop from the one given in 2007. You can also contact me at

Master Thesis propositions

Master Thesis Propositions using OpenFOAM
Berg Propulsion
Volvo Technology
Volvo Cars Corporation