Course Contents

The course is a 5 day course with physical attendance. The programme is subject to minor changes.

Day 1

  • Introduction to Linux/UNIX and OpenFOAM structure
  • The OpenFOAM code base and environmental variables
  • Efficient collaboration on OpenFOAM projects using Git (we will use GitHub)
  • Automating workflows for reproducible simulations
  • Generating structured meshes with blockMesh
  • Importing meshes in commercial formats (e.g. ANSYS Fluent)
  • Boundary and initial conditions
  • Physical parameters, solver settings and turbulence modelling
  • Post-processing with Paraview

Day 2

  • Complex meshing with snappyHexMesh
  • Running simulations in parallel
  • Mesh manipulation and mapping techniques for efficient grid independence analyses
  • Function objects for runtime post-processing
  • Automating post-processing with Python and Paraview

Day 3

  • Introduction to C++ programming in OpenFOAM
  • Writing solvers in OpenFOAM

Day 4

  • Coupling OpenFOAM with external optimisation tools in Python

Day 5

  • The OpenFOAM code base and its documentation
  • Writing new boundary condition
  • Writing a new function object