I am an atmospheric scientist trying to understand the interactions between turbulence, clouds, radiation and the land surface with 3D simulation and field observations (see chiel.ghost.io). The main tool of our research lab is MicroHH, our in-house C++/CUDA 3D simulation code. Recently, I have ported the dynamical core of MicroHH to Julia to make the code more accessible to students, as C++ is often too complex to learn for a short project, and have a tool for future SciML projects.
Turbulence in the atmosphere is often studied using 3D simulations as a virtual laboratory. Most experiments require code modification by users, but this is hard, because most codes are written in low-level languages as Fortran and C++. MicroHH.jl, a Julia port of the dynamical core of MicroHH, has been designed to solve this problem. It is built on MPI.jl, LoopVectorization.jl, CUDA.jl, and HDF5.jl for the IO. Interaction with running simulations is made possible via user scripts.