Chapter 1 Introduction

This guide accompanies the release of version 9 of the Open Source Field Operation and Manipulation (OpenFOAM) C++ libraries. It provides a description of the basic operation of OpenFOAM, first through a set of tutorial exercises in chapter 2 and later by a more detailed description of the individual components that make up OpenFOAM.

OpenFOAM is a framework for developing application executables that use packaged functionality contained within a collection of over 100 C++ libraries. OpenFOAM is shipped with approximately 200 pre-built applications that fall into two categories: solvers, that are each designed to solve a specific problem in fluid (or continuum) mechanics; and utilities, that are designed to perform tasks that involve data manipulation. The solvers in OpenFOAM cover a wide range of problems in fluid dynamics, as described in chapter 3 .

Users can extend the collection of solvers, utilities and libraries in OpenFOAM, using some pre-requisite knowledge of the underlying method, physics and programming techniques involved.

OpenFOAM is supplied with pre- and post-processing environments. The interface to the pre- and post-processing are themselves OpenFOAM utilities, thereby ensuring consistent data handling across all environments. The overall structure of OpenFOAM is shown in Figure 1.1.


Open Source Field Operation and Manipulation (OpenFOAM ) C++ Library Pre- processing Solving Post-processing Utilities Meshing User Standard ParaView Others Tools ApplicationsApplications e.g.EnSight \relax \special {t4ht=


Figure 1.1: Overview of OpenFOAM structure.


The pre-processing and running of OpenFOAM cases is described in chapter 4 . In chapter 5 , we cover both the generation of meshes using the mesh generator supplied with OpenFOAM and conversion of mesh data generated by third-party products. Post-processing is described in chapter 6 and some aspects of physical modelling, e.g. transport and thermophysical modelling, are described in in chapter 7 .

OpenFOAM v9 User Guide - Chapter 1 Introduction