Turbulet Jet Flows

A solver for large scale DNS simulations

An MPI based, DNS solver was developed in C, with the goal of speed, balanced load, and low memory requirements.

A simulation based on the solver I have developed, with properties,
  * Cartesian, uniform mesh
  * 16(cores)x54x281x281 = 68 Million cells
  * Compressible
  * 2nd-order Riemann-solver based
  * Round
  * Parallel


Turbulent Jet
Contours of vorticity magnitude at the z=0 cross-section



Two iso-surfaces of vorticity magnitude:

Vorticity magnitude at the z=0 cross-section:

The video above is made by,
  - Writing slices of data every 10 time-steps in Legacy VTK format (ASCII), up to the 55740th step. Each time step is 20 nano-seconds, amounting to a total time of 1.1ms!
  - Converting the Legacy VTK format files to vtk's new XML structured grid format, using a python-vtk script, for reduced file size and faster processing.
  - Reading the XML files, and Painting the vorticity magnitude data based on a color table, rendering, and saving to png images.
  - An mencoder script to assemble the image files into a movie, at 45 frames per second.

The simulation was performed on two nodes, each node equipped with two Intel Xeon E5430 quad-core processors, running at 2.66 GHz.
The network connection was Infiniband, and it took a total of 9 days (wall-clock time) for the simulation to complete the 55740, predictor-corrector, time-steps. The memory requirements were about 12GB in single-precision arithmetics (about 200 bytes per cell).