Waves: Dean stream function theory

Stream function theory is particularly important in nonlinear wave representation, so it is worth going into a little detail here. For consistency with the original literature referenced below, we use slightly different conventions on this page only to the rest of the OrcaFlex documentation. We assume for simplicity that the wave is long-crested and travels in the $x$ direction; we shall work in the $(x,z)$ plane. The seabed has $z=0$ and the mean water level is given by $z=d$, where $d$ is the water depth at the seabed origin. The horizontal and vertical particle velocities are denoted by $u$ and $v$ respectively. We assume a moving frame of reference with respect to which the motion is steady, and $x=0$ under a crest.

A typical approach to wave theory makes use of the idea of a velocity potential. This is a vector field $\phi(x,z)$ whose partial derivatives are the particle velocities of the fluid \begin{equation} \PD{\phi}{x} = u \quad\text{and}\quad \PD{\phi}{z} = v \end{equation} Chappelear devised a wave theory based on finding the best fit velocity potential to the defining wave equations. This turns out to be rather complicated, and Dean's simplification is to apply the same principle to a stream function. A stream function is a vector field $\psi(x,z)$ which satisfies \begin{equation} \PD{\psi}{x} = -v \quad\text{and}\quad \PD{\psi}{z} = u \end{equation} Dean's original paper was intended to be used to fit stream functions to waves whose profile was already known, for example a wave recorded in a wave tank. In OrcaFlex, however, you provide information on the wave train in the form of water depth, wave height and wave period, and we wish to find a wave theory which fits these data. Thus Dean's theory in its original form does not apply; instead, we choose to apply the stream function theory of Rienecker and Fenton (1981), also known as Fourier approximation wave theory.

The problem, in a nutshell, is to find a stream function $\psi$ which

  1. satisfies Laplace's equation $\PDD{\psi}{x} + \PDD{\psi}{z} = 0$, which means that the flow is irrotational,
  2. is zero at the seabed, that is $\psi(x,0) = 0$,
  3. is constant at the free surface $z = \eta(x)$ say, i.e. $\psi(x,\eta) = \text{constant}$ and
  4. satisfies Bernoulli's equation $\frac12\biggl[\bigl(\PD{\psi}{x}\big)^2 + \bigl(\PD{\psi}{z}\bigr)^2\biggr] + \eta = \text{constant}$.

In these equations all variables have been non-dimensionalised with respect to water depth $d$ and gravity $g$.

By standard methods, conditions 1 and 2 can be shown to be satisfied by a stream function of the form \begin{equation} \label{psi} \psi(x,z) = B_0 z + \sum_{j=1}^N B_j\ \frac{\sinh(jkz)}{\cosh(jk)}\ \cos(jkx) \end{equation} where $k$ is the (as yet undetermined) wave number. Implementing stream function theory, then, requires the numerical solution of a set of nonlinear equations to determine the coefficients $B_j$ and $k$ in equation (\ref{psi}) satisfying conditions 3 and 4.

The value of $N$ is said to be the order of the stream function. For most waves the OrcaFlex default value for the order will suffice. However, for nearly-breaking waves the solution method sometimes has problems converging: in this case, it is worth experimenting with different values for the order.