Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More
Part 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 More