HomeNews and blogs hub

Simulating wave turbulence and suspended particle transport

Bookmark this page Bookmarked

Simulating wave turbulence and suspended particle transport

Author(s)
Vanesa Magar

Vanesa Magar

SSI fellow

Scott Brown

Posted on 3 September 2013

Estimated read time: 4 min
Sections in this article
Share on blog/article:
Twitter LinkedIn

Simulating wave turbulence and suspended particle transport

Posted by a.hay on 3 September 2013 - 9:17am

tidalwaves.jpgBy Scott Brown and Vanesa Magar, School of Marine Science and Engineering, Plymouth University.

This article is part of our series: a day in the software life, in which we will be asking researchers from all disciplines to discuss the tools that make their research possible.

Breaking ocean waves are a common sight at the coast. Whether it is a plunging wave with its barrelling motion, or the whitecapping that can be seen on a rough day, turbulence is being generated. This is where our interest lies. However, the mechanisms behind this generation are complex and without the availability of sophisticated software our research would be near impossible.

To simulate the action of breaking waves and sediment transport, we currently use OpenFOAM (Open Field Operation and Manipulation), an open Source Computational Fluid Dynamics (CFD) software package written in C++. It uses the finite volume method to discretise and solve the Navier-Stokes Equations, which describe the motion of a fluid substance. The software also includes many shared libraries, which can be linked with existing solvers in order to personalise it according to your needs.

Apart from OpenFOAM, of course, other CFD software packages are also available. Commercial options include ANSYS CFX and ANSYS Fluent, or if an alternative open source package is required, then Gerris also offers a wide suite of features. However, we find OpenFOAM to be more user-friendly than Gerris and like the added freedom of open source in comparison to more commercial software.

Meanwhile, as anyone who has worked with CFD before will know, the simulations can take a long time to run. Fortunately, OpenFOAM can help since it allows parallel computing. To do this, it takes advantage of an MPI library of your choice, which, in my case, is OpenMPI.

Next, we need to generate wave simulations. This is performed using the additional toolbox, Waves2Foam, released by Niels Jacobsen in 2011. This toolbox generates waves according to an existing wave theory by specifying inlet boundary conditions before solving the governing equations throughout the rest of the domain. A particularly useful aspect of Waves2Foam is the option to include relaxation zones, which reduce the effect of any reflection that occurs within the domain.

Before running a simulation, however, there are a few tasks that must be addressed, and once again software is able to help. Mesh generation is a very important consideration and there are many ways to create one compatible with OpenFOAM. The complexity of the problem will determine the choice of tool, which are provided within the OpenFOAM package. For simple cases, the tool blockMesh is best, whereas for complicated geometries snappyHexMesh becomes more relevant.

Many other pre-processing exercises can be completed using the basic commands and programs which come with Linux. For simple tasks, such as editing OpenFOAM dictionaries or compiling source code, we commonly use the text editor gedit, along with the gcc complier.

Another essential component to this research is software that can manipulate and interpret the large volumes of data obtained with every OpenFOAM simulation. ParaView, an open source visualisation software, allows analysis of vector as well as scalar fields. Utilising the Visualization Toolkit (VTK), ParaView offers many sophisticated filters. Examples include slicing, contours and streamlines. It is also possible to produce short result animations with the help of a video decoder such as MEncoder. Other post-processing tasks, such as Fourier transforms or plotting our results, are performed in Matlab, but for quick viewing, gnuplot is very straightforward.

In summary, there are many types of software, of varying levels of complexity, which make simulating wave-induced turbulence and suspended particle transport problems easier to solve. Although learning to use such software can be time consuming and often frustrating, it also allows us to stay at the forefront of research.

Share on blog/article:
Twitter LinkedIn