OpenFOAM Programming

Reserve seats...
Please note: the prices above are net prices excluding tax. For german customers and non-company customers from abroad, german VAT (16%) has to be added.

The training can be attended on site or online. Due to the current outbreak of the COVID-19 disease, we offer our trainings exclusively online until further notice.

Online participants can join via Microsoft Teams. The link will be sent to you before the event begins. Training materials will be mailed to all online participants in advance in hard copy.


In this course, the most important programming components of the OpenFOAM basic library are introduced, i.e. vector/matrix/tensor classes, containers, fields, discretization, grid handling, etc. Furthermore, the runtime selection mechanism is explained. The structure of solvers and utilities is shown. The programming patterns, which are necessary for an extension of models, boundary conditions etc., are shown and applied by numerous examples. At the end of the course the participants should know the basic structure of the OpenFOAM project and be able to independently develop approaches for their own extensions.

The topics in detail:

  • Basics
    • Structure of the OpenFOAM project, tools and build system
    • Important OpenFOAM libraries
  • Building blocks of the OpenFOAM library
    • basic types
    • Input/Output
    • Vector/Tensor Types
    • Treatment of units
    • container
    • Fields, Field algebra
    • mesh handling
    • discretization
    • runtime selection
  • solver
    • Read the source code:
    • laplacianFoam,
    • simpleFoam
  • utilities
    • Creating a Function Object for Calculating Derived Fields
    • Own preprocessing tool (initialization of a field)
  • turbulence model
    • Examination of the classes involved
    • Creating a Modified Variant of the k-Omega SST Model
  • transport models
    • Examination of the classes involved
    • Implement your own viscosity model
  • boundary conditions
    • Examination of the classes involved
    • Create your own Dirichlet boundary condition
  • discretization scheme
    • Examination of the classes involved
  • Dynamic grids
    • Examination of the classes involved
    • Implement own solidBodyMotionFunction
  • Source terms (fvOption)
    • Examination of the classes involved
    • Create your own source term using derived fvOption
  • Participants’ own problems
    • the participants can present their own problems
    • solutions are sought
    • a solution is outlined


  • 9:00 am - 12:00 pm
  • lunch break (one hour)
  • 1:00 pm - 5:00 pm
All times between April and October are Central European Summer Time (CEST) and Central European Time (CET) otherwise. If desired and with the consent of all participants, the above times may be deviated from.


The course materials are written in English and the course is usually conducted in English. If all participants agree, it is also possible to switch to the German language.


Drinks and refreshments will be provided for on-site participants. Lunch on each day of the event is included in the price. You will find directions and recommendations for hotels above under the link "Locations".

How to Join

Go to the reservation form by clicking the button below. Alternatively, you can write us an email or call us by phone (+49 381 36 77 98 53).  
Tickets: Standard: 995.00 €
Reserve seats...

Further Upcoming Events

Apologies, but no events were found.