4 Deep Water Wave Problem: CPU Version

This chapter solves the deep water wave problem, a nonlinear dispersive equation that models surface gravity waves in water with infinite depth. This is a classic problem in fluid dynamics and demonstrates advanced numerical techniques:

  1. Spectral methods: Using Fourier transforms for spatial derivatives
  2. Nonlinear dynamics: Capturing wave-wave interactions
  3. Time integration: RK4 for high accuracy
  4. Dealiasing: Preventing aliasing errors in nonlinear terms
  5. High-performance computing: Parallel computation with threading

The deep water equation is physically relevant for ocean waves, water tanks, and fundamental research in nonlinear wave dynamics.

The deep water wave system can be written as:

\[\frac{\partial \eta}{\partial t} = -\frac{\partial \phi}{\partial x} \bigg|_{z=0}\]

\[\frac{\partial \phi}{\partial t} = -g\eta - \frac{1}{2}|\nabla \phi|^2 \bigg|_{z=0}\]

where: - \(\eta(x,t)\) is the surface elevation (the wave height) - \(\phi(x,t)\) is the velocity potential - \(g\) is gravitational acceleration

Using the Matsuno formulation (a clever reformulation of the equations), we can write:

\[\frac{\partial \eta}{\partial t} = -\frac{\partial \phi}{\partial x}\]

\[\frac{\partial \phi}{\partial t} = -g\eta - \frac{1}{2}\left(\frac{\partial \phi}{\partial x}\right)^2 - \frac{1}{2}\mathcal{H}\left[\frac{\partial \phi}{\partial x}\right]^2\]

where \(\mathcal{H}\) is the Hilbert transform and \(g = 1\) (normalized).



CC BY-NC-SA 4.0 Pierre Navaro