CFD, or Computational Fluid Dynamics, is one of the heavy users of high-performance computing resources. There are several commercial packages available, such as those from companies like Ansys. But those can be very expensive. If you are willing to work without the personal support offered by these commercial options, there are several open source options that can provide just as much functionality as the commercial offerings. In this article, we will be looking at OpenFOAM.
With OpenFOAM, you can model fluid flows through and around objects. This means you can model flow through pipes, or flows around an airplane wing. A fluid in CFD terms is any kind of liquid or gas. The software package includes several pre-processing and post-processing tools. With these, you can create the mesh that is used to describe the objects being studied. The post-processing tools can be used to take the raw numbers from the run and visualize them. Most humans have a much easier time making sense of images, rather than a table of numbers. You can even create movies of the fluid flow that you just simulated.
In order to use OpenFOAM, you begin by defining your problem. The first step is to create what’s called a mesh defining the environment and all of the objects of interest. Then you spell out all of the parameters of the fluid that you are studying. This includes items like density and viscosity. You also spell out the details of the run, like whether you are only working with incompressible fluids, or whether you are worried about turbulence. All of this is called a “case” in OpenFOAM jargon.
Running a case can be done on your home workstation, using your GPU if available. But when your problem outgrows your personal resources, it can be run on large parallel machines, like the ones available through ACENET and Compute Canada. With OpenFOAM, you can easily scale up to very large projects.
OpenFOAM is available on all Compute Canada systems, as well as our Atlantic Canadian system Siku.