EVA: Complementary Modules 2019-20

Complementary modules organized by all institutions participating in the MSE.

Please note:

  • The number of inscriptions is typically restricted
  • Please consider the status field: only modules with "registration open" status can be booked
  • Module inscriptions have to be made via your advisor to the contact person as specified in the offering
Title: Thermo Fluid Dynamic Model Development using OpenFoam® - Part 1
Short Code: EVAOpenFoam1
ECTS Credits: 3
Organizer Details: Dr. Gernot Boiger, boig@zhaw.ch

Some exercises could be mandatory. Semester development project: self developed solver. Conclude by presentation of semester projects.

Decision Date: 30 July 2019 
Start Date: 16 September 2019 
End Date: 23 December 2019 
Date Details:

The module will be held in Winterthur (ZHAW, SoE) but otherwise like a “central module” during 14 weeks, 3 lessons per session. Exact dates will be appointed together with applying students.


2 tutorial periods and 1 theory period per week



Description (max. 300 characters):

The objective of this module is to develop first, self written thermo-, fluid dynamic models under the open source C++ based, numerical simulation tool box OpenFoam®. The module does contain an introduction to the main features of OpenFoam®, but goes clearly beyond an introductory course such that not only the application of this extensive, community based, software package is taught, but also the basics for its extension and/or adaption to specific problems. In addition to this, useful theoretical background on numerics, meshing, thermo-, fluid dynamic modelling and the C++ programming language will be taught. This semester’s goal is to create your first, self-written OpenFoam® application (e.g.: solver, utility or boundary condition).

Contents and Learning Objectives:

Learning Objectives:

At the end of the course the student knows:

  • About the actual character of OpenFoam® in contrast to commercial CFD tools
  • How to apply OpenFoam® from meshing over pre-processing to post-processing (including the use of blockMesh, snappy hex Mesh, paraview, Matlab in combination)
  • The main features of OpenFoam® (e.g.: tutorial cases, solvers, utilities)
  • How to understand and/or find his/her way through the basic software structure (e.g.: Finding, using)
  • How to choose, modify, recompile and apply his/her first, self written OpenFoam® application (e.g.: solver, utility, boundary condition...)

Numerical background about the main solution algorithms within OpenFoam (e.g.: PISO, SIMPLE loop).


  • Basic structure of OpenFoam® simulation cases
  • Introduction to some OpenFoam® Standard solvers
  • Basic Meshing with blockMesh
  • Input-/Output files
  • Simulation control before/at runtime
  • Visualization & post processing using ParaView and Matlab;
  • Utility: „sample“ to determine quantitative values and field data profiles
  • Implementation of pre- and post- processing utilities
  • Basics of turbulence modelling
  • Applications: a.) icoFoam/cavity b.) Channel Flow c.) Karman – Eddies d) Heat Transfer & Radiation modelling e) Multi- Reference Frame (MRF) modelling (e.g.: Mixing, pump) g) Buoyant flow (Boussinesq-Approx.)
  • Introduction to “non-standard” OpenFoam® tools such as a) SWAK (=Swiss Army Knife) for FOAM to implement function based, flexible boundary conditions; b) Snappy Hex Mesh (Meshing Tool) 
  • “A walk through icoFoam”: Stepwise Analysis of the basic source code of one of the simplest OpenFoam® solvers (= laminar, transient, incompressible)
  • First, simple modification and re-compilation of icoFoam (tutorial case: Driven cavity) to extend it to your own „passiveScalarTransportFoam“ (=Implementation of Transport Equation);
  • Chose, plan, modify/program, recompile, apply and verify your first own “boundary condition”
  • „Update an older solver“: We will try to update the ancient “icoLagrangianFoam” (OF version 1.6) to the latest OF version; The solver is about particle tracking of simple, spherical hard ball particles within a transient, laminar, incompressible flow. A simple feature like that does not exist anymore as a stand alone piece of code in OF… but can be very useful. 
Admission: None.

OpenFoam® User guide: http://www.openfoam.org/docs/user/

OpenFoam® programmer’s guide: http://www.foamcfd.org/Nabla/guides/ProgrammersGuide.html

  • Basic knowledge of CFD
  • Installed and working version of OpenFoam®
  • Interest in thermo- fluid dynamic modelling

Dr. Gernot Boiger (boig@zhaw.ch) , Prof. Dr. Dirk Wilhelm

Contact Person E-Mail: boig@zhaw.ch
Status: registration open
Specialization: Business Engineering and Production (BEP)

Energy and Environment (EE)

Industrial Technologies (InT)

Information and Communication Technologies (ICT)


[Responsible for this text: Mathias Bonmarin]