I have recently used Azure Batch to do CFD simulations using OpenFOAM®, and I summarize my experience and the procedure I followed below. Before entering the details, it is worth saying what Azure Batch is. Azure Batch is a compute management service that lets users to rapidly deploy batch processes either by running multiple tasks on individual nodes, or a single task on multiple nodes, with high-performance communication (Infiniband or, as it is called in the service, RDMA). While Azure Batch is not a full replacement for an HPC cluster with standard queue systems, it is a convenient option for projects that require a defined number of simulations that need…
-
-
Extended second-order moment advection scheme
I made the OpenQBMM implementation of the second-order realizable zeta scheme for moment advection more general. The previous implementation [2] was specific for moments of distributions supported over the positive real line, making the implementation of the scheme not suitable for moments of distributions with compact support, such as the PDF of the mixture fraction used in turbulent mixing and combustion models. However, the original paper of Nguyen and Laurent [1] proposes a straightforward extension to the case of compact support, which is now made available in OpenQBMM. For simplicity, the implementation considers only the support [0, 1], without loss of generality. The implementation is currently available in the development-openfoam.com…
-
Dynamic Smagorinsky model updated
Almost eleven years ago, I implemented a version of the dynamic Smagorinsky model of Lilly (1992) into OpenFOAM® and I still receive many requests of a reference where this code has been used, which is quite interesting because I have not implemented the model to do any specific research work, but because back then OpenFOAM used to have a quite strange implementation of the dynamic Smagorinsky model, whose coefficient was averaged on the entire domain volume. This implementation was stuck until now to OpenFOAM 2.x until now. Today I have ported it to OpenFOAM v2012, and the code is available on GitHub. As soon as it is better tested, a…
-
P. 3. The structure of dictionaries (Ep. 2)
In the last post of this series the general structure of a dictionary was introduced. We will now see the basic structure of entries. The first point to make is that entries in OpenFOAM® dictionaries can be of several types but they all follow the key/value format, at least in a broad sense.
-
P. 2. The structure of dictionaries (Ep. 1)
Dictionaries are what OpenFOAM® uses as input files, but the same name is used to indicate some of the structures inside such files. In this part a general overview of their structure is provided.
-
P. 1. Dimensional units in OpenFOAM
One of the first OpenFOAM features users encounter when they start learning how to set simulations up is that the code verifies the dimensional consistency of the variables involved in operations. Some details about this feature will be discussed in this post.
-
A new series of blog posts
The new year brings some novelty and one of them is that I am starting a series of blog posts on various technical aspects in OpenFOAM®.
-
VS Code extension for OpenFOAM
A useful VS Code extension for OpenFOAM dictionaries has been developed by Zhikui Guo. It adds color highlighting to the sections of an OpenFOAM dictionary.
-
Contributing research work to open-source projects
As the main developer of OpenQBMM, an add-on for OpenFOAM which implements quadrature-based moment methods for the solution of generalized population balance equations, I have been recently involved in the transfer of the copyright on the OpenQBMM code base to the OpenFOAM Foundation, to be able to contribute the corresponding source code to them. I summarize here some motivations, lessons learned and some advice that may be useful to others who want to follow the same path. Why contribute? This is a question several have asked. Why contribute a code base that took four years of work to be build (and quite some nights, holiday, weekends too), including research, overcoming…
-
Developing for OpenFOAM on Windows 10 – Part 3
Enabling support for graphical applications in WSL with Xming The Windows Subsystem for Linux does not officially support GUI applications. However, it is possible to successfully run several of them using a Windows-based X server as Xming. The steps to follow are simple: Download Xming (please, consider a donation to support the developer!) for your version of Windows Install it accepting the default settings Open the Ubuntu bash terminal and type echo "export DISPLAY=:0" >> .bashrc Load the settings with the command: source ~/.bashrc Test the setup as follows: Start the Xming server on Windows. An icon will appear in the notification areas Type paraview in the Ubuntu bash terminal.…