When I first began using OpenFOAM back in 2013, there were only a handful of resources available to start with. I had soon realized that the learning curve to use this software effectively was quite steep. Soon I found myself in a position where I had to start developing the code but realised that there were not many references written with developers in mind.
Fortunately, over the past several years some excellent contribution from OpenFOAM community has been significant in developing a strong database of OpenFOAM resources. Today, we are flooded with an abundance of references that it is difficult to keep track of them. In this post I have tried to compile a list of references (mostly available for free) that could be useful for both OpenFOAM users and developers. This list is by no means exhaustive and will be updated regularly to incorporate new references.
If you are just starting with OpenFOAM you will probably find the references in this post a bit overwhelming. Therefore have a look at this section of the post ‘OpenFOAM references for beginners‘ where I have only provided selected references.
A complete list of OpenFOAM references arranged by category:
OpenFOAM references for beginners
Reference | Description |
OpenFOAM installation | This is one of the three OpenFOAM forks out there which is released by the OpenFOAM Foundation and is ideal for someone starting with OpenFOAM. A new version is released in summer each year. |
User guide | Perhaps if there is one document that one should refer to when beginning to learn OpenFOAM, it is this official user guide released by the OpenFOAM Foundation to accompany their annual release. The document contains sufficient information for a novice user about OpenFOAM simulation workflow along with a few tutorials. |
Course | A basic self taught course designed for OpenFOAM beginners by J. Haider. It describes the OpenFOAM workflow in detail and contains several tutorials to highlight the capability of the software. |
Forum | The OpenFOAM forum on CFD online website is one of the most popular and active software user forums and comprises of various sub forums like installation, pre-processing, solving and post-processing. |
Forks
Perhaps, the biggest confusion for OpenFOAM beginners is caused due to the presence of various OpenFOAM forks. A brief description these forks is provided in a blog by B. Santos and in another video by J. Nagy. The OpenFOAM forks currently available are:
- OpenFOAM: This official OpenFOAM released by the OpenFOAM Foundation.
- OpenFOAM +: This is the official development version released by ESI-OpenCFD.
- FOAM-extend: This is the community driven branch of OpenFOAM.
Guides
- ‘User Guide‘ by The OpenFOAM Foundation: The most fundamental document that one should refer to when beginning to learn OpenFOAM. Although the document is not comprehensive but it contains sufficient information which should get a novice user started. In particular, the tutorials mentioned in the User Guide should give the user an idea of the simulation workflow.
- ‘Programmer’s Guide‘ by The OpenFOAM Foundation: This can be regarded as an extension of the User Guide giving more insight into the data structure of OpenFOAM. Even if you are just using OpenFOAM, it is worth going through this document to understand how OpenFOAM functions..
- ‘C++ Source Code Guide‘ for OpenFOAM: This guide is generated using Doxygen and has links to the source code and inheritance diagrams. It is very useful for intermediate/advanced users to study and navigate through OpenFOAM structure.
- ‘Coding Style Guide‘ by The OpenFOAM Foundation: This is a very useful reference detailing how to code in OpenFOAM. Similarity in coding style is essential for future and collaborative work.
Literature
- ‘CFD with opensource software‘ by Prof. H. Nilsson: A popular course on OpenFOAM which is conducted at Chalmers University of Technology annually since 2007.
- ‘OpenFOAM introductory course‘ by Wolf Dynamics: Very informative slides prepared by Dr. J. Guerrero.
- ‘Instructional workshop on OpenFOAM programming‘ by P. Mohanamuraly: Useful material on OpenFOAM programming.
- ‘OpenFOAM course for beginners: Hands-on training‘ by J. Haider: A short course ideally suited to people who are beginners in OpenFOAM.
Courses
- ‘CFD with opensource software‘ by Prof. H. Nilsson: A popular course on OpenFOAM which is conducted at Chalmers University of Technology annually since 2007.
- ‘OpenFOAM introductory course‘ by Wolf Dynamics: Very informative slides prepared by Dr. J. Guerrero.
- ‘Instructional workshop on OpenFOAM programming‘ by P. Mohanamuraly: Useful material on OpenFOAM programming.
- ‘OpenFOAM course for beginners: Hands-on training‘ by J. Haider: A short course ideally suited to people who are beginners in OpenFOAM.
Tutorials
- ‘Introduction to OpenFOAM‘ by Prof. H. Jasak: Course at Ghent University
- Video tutorials by J. Nagy on YouTube
- Programming tutorials by A. Lidtke: An excellent collection of short, well explained codes highlighting the various aspects of OpenFOAM. The relevant post on CFD online can be found here.
- Video tutorials by T. Holzmann
- Video tutorials by 8th Floor CFD@FSB
- Video tutorials by R. Lee
- Video tutorials on Spoken tutorial.
- Guide by J. C. Puig: A list of simple tutorials useful for OpenFOAM beginners.
- Tutorial guide by V. Pozzobon for beginners in OpenFOAM.
OpenFOAM projects on GitHub
- ‘Reduced Order Modelling techniques for OpenFOAM‘ by Applied Mathematics Laboratory at SISSA.
- ‘olaFlow‘ by P. Higuera: Simulation of wave and porous structure interaction in the coastal and offshore fields.
- Solid mechanics solvers in FOAM extend 4.
- ‘Cell centred explicit solid dynamics‘ toolkit.
- ‘Vertex centred explicit solid dynamics‘ toolkit.
- ‘HopeFOAM‘ by The Exercise Group: A high order discontinuous Galerkin Finite Element Method.
- ‘DensityBasedTurbo‘ solver on by O. Borm.
Other references
Others
- OpenFOAM forum on CFD online website: This is one of the most popular and active software user forums on CFD online website and comprises of various sub forums. If you have just started using OpenFOAM and you have a list of questions in your head, this is the place where you will most likely get answers to them. Moreover, novice and advanced programmers will find the ‘OpenFOAM Programming and Development‘ sub forum very useful.
- OpenFOAM wiki: This page collects information on various OpenFOAM related topics.
Blogs
- CFD blog by F. Nozaki
- CFD online blog by B. Santos
- Blog by M. Abbas
- CFD blog by A. Passalacqua
- Blog by H. Kassem
Working on openfoam and trying to get acquainted with the code behind it