Home / Learn / What every CFD developer needs to know about C++

What every CFD developer needs to know about C++


Lecture 1: Choosing the right programming language for CFD development

Choosing the right programming language for CFD development is crucial for performance. Understand the different types of programming languages in this article

Read article

Lecture 2: Why you should use C++ for CFD development

Discover why C++ stands out as the top choice for CFD programming. It's compiled, object-orientated, offers rich libraries and tools, and excels at speed.

Read article

Lecture 3: The complete guide to memory management in C++ for CFD

Learn the key concepts of memory management in C++, including the stack, the heap, avoiding costly memory copying, and how to make the CPU caches work for you.

Read article

Lecture 4: Object-orientated programming in CFD

Classes form the basic building block of object-orientated programming. See how they can help us write modular and extendable C++ code when writing CFD solvers.

Read article

Lecture 5: How to handle inheritance and class hierarchies in C++

Explore why inheritance is the bread and butter of modern C++ design and how it is applied in CFD solvers. Learn about dynamic polymorphism and when to avoid it

Read article

Lecture 6: Templates in C++: Boost your CFD solver performance

Learn in this article when you should/shouldn't use templates in C++ for your CFD codes. We see how templates relate to inheritance and their use in OpenFOAM.

Read article

Lecture 7: Enhance readability with operator overloading in C++

Operator overloading is optional but makes our C++ code much more readable. Explore how overloaded operators provide intention-revealing and clean code.

Read article

Lecture 8: The power of the standard template library (STL) in C++

The C++ standard template library provides access to efficient data structures and algorithms we frequently use in CFD solvers. Learn how to master it here.

Read article

Lecture 9: Understanding Lambda expressions and how to use them in C++

Learn lambda expressions in C++: a powerful tool for writing optimised CFD solvers, avoiding code duplication, and mastering algorithms in C++'s STL

Read article

Lecture 10: Reduce memory bugs with smart pointers in C++

Understand smart pointers in C++, their benefit over raw pointers, and how to use them in CFD solvers. Use them with the factory pattern to write clean code.

Read article
Popup Image

Get started today!

Do you want to learn how to put the Navier-Stokes equations into code and write your own solver?

Sign up for my newsletter, and you get my eBook Write your first CFD solver - From theory to implemented CFD solver in less than a weekend for free!