How to Derive the Navier-Stokes Equations: From start to end
Are you looking for a single source that shows you how to derive the Navier-Stokes equations from start to end, without skipping any intermediate steps, and where each intermediate step is explained so that the derivation can be followed? Then look no further, I have written this article to give the most comprehensive review of …
How to Derive the Navier-Stokes Equations: From start to end Read More »
What is numerical dissipation in CFD and why do we need it?
I’ll make a bet with you. By the end of this article, you will have changed your views on numerical dissipation. When you read the words numerical dissipation in the title, did you associate that with something good or bad? My guess is that you view numerical dissipation as something bad, and that would be …
What is numerical dissipation in CFD and why do we need it? Read More »
I’ve tried SU2 for a week – should you, too?
Have you ever added a CFD solver to your learning to-do list? I have, and it keeps growing! So, instead of creating a to-do list that will never be completed, I thought I’d spend some time on a solver that has been on it for quite some time and share my experiences with you. I …
How to determine the best stopping criterion for CFD simulations
Have you ever stopped and asked yourself, how do I know if my CFD simulation has actually converged? Well, you are not alone. Judging convergence is one those topics that, at first glance, doesn’t seem to be a very complicated matter, but upon further inspection you realise that this is a deep rabbit hole. In …
How to determine the best stopping criterion for CFD simulations Read More »
How to use Conan to manage your own CMake-based libraries
In this final article in our series on build automation, we look at how we can provide our own Conan recipe to compile and package our libraries with Conan so that we can store them in our local Conan cache for easy reuse in other projects. We will be able to put our own libraries …
How to use Conan to manage your own CMake-based libraries Read More »
Complete walkthrough: Adding CMake to an existing library
In this article, we will explore how we can take two libraries we have developed before on this website (namely the linear algebra solver library and the mesh reader library) and add CMake scripts to them to fully automate the compilation and deployment stages from configuring the project to compilation, testing, documentation generation, installation, and …
Complete walkthrough: Adding CMake to an existing library Read More »
How to use CMake/CPack to create beautiful GUI-installers
In this article, we look at the CMake utility tool CPack, which helps us package our libraries and executables generated by CMake into a nice and easy-to-use graphical user interface to guide users through the installation process. Windows users will be familiar with these graphical user interfaces for installation, where we can select an installation …
How to use CMake/CPack to create beautiful GUI-installers Read More »
Never worry about Docs again! Automate it with CMake instead
In this article, we will talk about the d word again; documentation. I know, most developers find open-heart surgery more appealing that having to write documentation for their own code, but it is an integral part of software engineering and ensuring other users can work with your software. I wouldn’t do you a favour by …
Never worry about Docs again! Automate it with CMake instead Read More »
How to automate testing with CMake, CTest, and gtest
In this article, we will have a look at how we can integrate unit, integration, and system tests with CMake. We will see that CMake comes with additional helper utilities, one of which is CTest. We use CMake to register all tests and then compile them into individual executables, and we use CTest to run …
How to automate testing with CMake, CTest, and gtest Read More »