Adolfo
DNS

Taylor-Green Vortex DNS

Direct numerical simulation of vortex breakdown at Re=1600

Captured all three flow phases (laminar decay, vortex stretching, turbulent decay). Enstrophy peak timing and 74% energy dissipation match reference DNS.

OpenFOAM v2406 PETSc CUDA Python ParaView

Key Results

Re = 1600
Reynolds number
Standard benchmark for DNS validation
64 cubed (262k cells)
Mesh
Uniform hexahedral grid with triply-periodic boundaries
t* = 7.5
Enstrophy peak
Marks transition to turbulence — 74% of kinetic energy dissipated by t=20
DNS (no model)
Method
All turbulent scales resolved — no RANS or LES closure

The Problem

The Taylor-Green vortex starts from a smooth analytical initial condition and transitions to fully developed turbulence through vortex stretching. At Re = 1600, it’s the standard benchmark for DNS codes because it tests the full energy cascade — large vortex tubes stretch, fold, and break down into progressively smaller structures until viscosity dissipates them.

Why DNS: No turbulence model. If the numerics are correct, the physics emerges. If your scheme is too diffusive, the enstrophy peak arrives late and damped — there’s no model to mask the error.

What I Did

1. Set up a 64-cubed mesh with periodic boundaries. The grid was sized so the maximum resolved wavenumber satisfies k_max * eta > 1, where eta is the Kolmogorov length scale. This ensures all dissipative scales are captured.

2. Adaptive time stepping with CFL below 0.5. DNS requires tight temporal control — numerical dissipation from time discretization can mask the physical dissipation rate. Used second-order backward differencing.

3. Tracked enstrophy as the primary diagnostic. Enstrophy (volume-integrated vorticity squared) is proportional to energy dissipation rate. Its evolution has a well-characterized peak around t* = 7.5 that marks the transition to turbulence.

4. Built an automated visualization pipeline. Python scripts compute enstrophy from OpenFOAM output. A ParaView script renders Q-criterion isosurfaces at 40 time instants with a rotating camera, then assembles them into an animation.

The Result

The simulation captures all three flow phases:

  1. Laminar decay (t = 0–4): initial vortex tubes weaken smoothly
  2. Vortex stretching (t = 4–9): tubes fold, stretch, and generate small-scale structures — enstrophy climbs to its peak
  3. Turbulent decay (t = 9–20): small-scale dissipation dominates — 74% of kinetic energy dissipated by t = 20

The enstrophy peak timing and magnitude agree with reference DNS data from Brachet et al.

Why This Matters

DNS provides ground truth. In industry, you validate RANS and LES models against DNS. Being able to set up, run, and post-process a DNS case demonstrates understanding of the numerics that underpin all turbulence modeling.

Key Learnings

  • DNS is the ultimate validation tool — no modeling assumptions means the numerics must carry all the physics.
  • The Taylor-Green vortex exposes numerical dissipation clearly: if your scheme is too diffusive, the enstrophy peak arrives late and is damped.
  • Q-criterion isosurfaces reveal the physical vortex stretching mechanism that drives the energy cascade.

Skills Demonstrated

Direct numerical simulation methodology Enstrophy and energy dissipation diagnostics Automated post-processing (Python + ParaView scripting) Vortex dynamics and energy cascade analysis Scientific visualization with Q-criterion