This book is written for people who use, or are planning to use, computational ﬂuid dynamics (CFD) in their work, research, study or recreation time.
Its purpose is to provide the knowledge to help the reader build their conﬁdence to undertake CFD analysis, repeatedly, to a deﬁned standard, in a timely manner1. It forms part of our mission to make CFD accessible and inclusive, alongside our work to manage, maintain and develop the free, open source software OpenFOAM on behalf of The OpenFOAM Foundation Ltd.
The book taps into our experience in CFD, in particular with OpenFOAM. At the time of publication in 2022, it is 33 years since Henry Weller (HW) wrote the ﬁrst lines of code of the “Field Operation and Manipulation” (FOAM) software which became OpenFOAM in 2004.
Since 2008 Chris Greenshields (CG) has provided CFD training with OpenFOAM, delivering over 300 courses (over 650 days) to 3,000 participants around the world. The training continues today at CFD Direct Ltd, teaching repeatable procedures and workﬂows and the use of OpenFOAM and supporting software to deliver reliable CFD solutions.
This book does not replace training, but provides the supporting knowledge of the physics and numerical methods that underpin CFD. The user of any CFD software should beneﬁt from reading this book, but they can only relate its contents back to the software if the code is open source, as it is with OpenFOAM.
CFD is challenging because it combines ﬁve sub-disciplines which are complex in their own right: (1) creating a computational mesh for the problem geometry; (2) ﬂuid dynamics and physical modelling; (3) numerical methods; (4) data processing; and, (5) computers and programming.
This book concentrates mainly on ﬂuid dynamics, modelling and numerical methods, ﬁnishing with a some examples that brieﬂy describe some mesh generation and data processing. It presents:
- general equations of ﬂuid dynamics that are the basis of a CFD solution;
- common physical models, including turbulence modelling;
- the ﬁnite volume method to generate equations in linearised matrix form;
- methods to compute solutions of the matrix equations;
- algorithms used to couple systems of equations;
- the practical application and numerical implementation of common boundary conditions;
- some sample problems.
We named the book Notes on Computational Fluid Dynamics because we present the subject matter as a set of short topics, or notes, spanning exactly two pages of the print book, and one web page of this online version. Each topic appears in its entirety on the left and right pages of the opened, printed book. We use this format to break down the material into small pieces that are easier for the reader to digest.
The book presents CFD from the perspective of an engineer (or scientist), rather than a mathematician. CFD is an application of science so requires the qualities of an engineer to design, analyse, build and test, in order to create and run CFD simulations and interpret the results.
The ﬁnite volume method is the principal numerical method used in CFD. It is conceptually an engineering method that uses a computational mesh to deﬁne control volumes for physical processes. It is presented as such here, rather than as a mathematical construct which views the mesh as regions which specify distributions of variables.
Of course, we must use mathematics to describe physics, models and methods, but we do so in a way which is more familiar to engineers. Mathematics is just another form of language which we combine with verbal language in a manner that we hope conveys suﬃcient meaning while avoiding both ambiguity and unnecessary complexity.
For example, we describe a vector as a physical property, such as force and velocity, which has magnitude and direction, illustrated using an arrow. We do not describe it as a “three-dimensional vector space over the ﬁeld of real numbers”, using mathematical notation .
We avoid the excessive use of sub- and superscripts within our mathematical notation. For example, when we describe an increase in time by an increment , we write , where “” means that the right hand side is evaluated and assigned to the variable on the left. This avoids the need to distinguish the “old” and “new” using an index by .
Numerical methods are ultimately programmed into a computer, so it is better that the mathematical notation represents typical programming language. The assignment notation “t ”, for example, clearly indicates a change to already stored in computer memory.
We have tried to reduce the need for the reader to search back through the book for information, to make it easier to follow. One way we hope to achieve this is by reminding the reader what the mathematical symbols represent, e.g. speciﬁc internal energy is deﬁned in Sec. 2.15 , but the reader is reminded what represents in Sec. 2.17 and Sec. 6.13 .
When a topic refers back to something previously discussed, we have included references to direct the reader to the relevant section, page or equation number. To help the reader ﬁnd something quickly, we have provided a fairly extensive index and list of symbols.
The book is designed to be self-contained so that the reader does not need to search through other texts to ﬁnd some missing information. We have therefore dispensed with a long reference list at the end of the book in favour of footnotes within the pages themselves. Footnotes clarify minor points and present the origins of the science that is being used in CFD.
We use diagrams, graphs and images liberally to illustrate the topics we present. Each 2-page topic typically includes 1-2 ﬁgures, alongside equations. Some thematic ﬁgures are reused to reinforce certain concepts, redrawn with labelling relevant to the particular topic.
Each chapter includes one or more summary topics to give an overview of the main concepts presented within it.
Music has always been playing in the background during our work in CFD. As a light-hearted distraction, we chose to begin each chapter with relevant musical lyrics, which we think are just a poetic as anything found in literature.
The book is shaped by the people that taught, encouraged and supported us, past and present. CG would like to thank: Pat Leevers, Colin Wood and Bill Knox, for teaching him the value of writing, using diagrams and consistency; Richard Jones for many stimulating discussions about eﬀective teaching; Steve Camp for his infectious enthusiasm and insightful questions; and, Akshai Runchal, Nils Basse and Bill Jones for their correspondence on some important topics.
HW would like to thank Chris Marooney, Bill Jones and David Gosman for their teaching and guidance in CFD.
Thanks to our colleagues Will Bainbridge and Jenya Collings for their support and, in Jenya’s case, her assistance in publishing the book.
We hope you ﬁnd the book useful.
Chris Greenshields and Henry Weller
CFD Direct Ltd / The OpenFOAM Foundation Ltd