ASTR/ATOC-5410: Fluid Instabilities, Waves, and Turbulence October 30, 2016, Axel Brandenburg

Handout 14: Nonlinear Water Waves

The KdV equation can be written in the form

u̇ + uu′ + u′′′ = 0  (1)

1 Energy conservation in KdV

Among the several other conservation laws, energy conservation is an important one. To contrast the effects of viscosity with dispersive effects, let us write

u̇ = −uu′ + νu′′ − μu′′′,  (2)

where we have introduced viscosity ν and “dispersivity” μ. To compute energy conservation, let us write

\frac{∂}{∂t} (\frac{1}{2}u^{2}) ≡ uu̇ = −u^{2}u′ + νuu′′ − μuu′′′.  (3)

The advection operator does not change the energy, because

∫ u^{2}u′ dx = ∫ (\frac{1}{3}u^{3})′ dx = 0.  (4)

But even the dispersive term does not change the energy:

∫ uu′′′ dx = ∫ (uu′′)′ dx − ∫ (u′u′′) dx = ∫ (uu′′)′ dx − ∫ (u^{′2})′ dx = ∫ (uu′′ − u^{′2})′ dx = 0. (5)

By comparison,

∫ uu′′ dx = ∫ (uu′)′ dx − ∫ (u^{′2}) dx = − ∫ (u^{′2}) dx ≠ 0,  (6)

does lead to energy dissipation.

2 Solution

To determine the solution, we make what is called an ansatz, namely

u = \frac{A}{cosh^{2}[a(x − ct)]},  (7)

which has 3 unknowns that can be determined such that Equation (1) is obeyed. We now compute every term in turn and begin with

u̇ = +2Aac\frac{sinh[a(x − ct)]}{cosh^{3}[a(x − ct)]}.  (8)

Next to compute uu′ and later u′′′, we need

u′ = −2Aa\frac{sinh[a(x − ct)]}{cosh^{3}[a(x − ct)]}.  (9)

We see that with each differentiation we pull out a factor a. To simplify notation let us now introduce

θ = x(x − ct)  (10)

for the argument of the cosh and sinh functions, so

u′′ = −2Aa^{2} (−3 \frac{sinh^{2} θ}{cosh^{4} θ} + \frac{1}{cosh^{2} θ} ) .  (11)

Finally, we compute

u′′′ = −2Aa^{3} [−3 (−4 \frac{sinh^{3} θ}{cosh^{5} θ} + 2 \frac{sinh θ}{cosh^{3} θ} ) − 2 \frac{sinh θ}{cosh^{3} θ} ] ,  (12)

which combines to

u′′′ = −2Aa^{3} (12 \frac{sinh^{3} θ}{cosh^{5} θ} − 8 \frac{sinh θ}{cosh^{3} θ} ) .  (13)

Making use of the relation cosh^{2} − sinh^{2} x = 1, i.e., sinh^{2} x = cosh^{2} −1, we have

u′′′ = −2Aa^{3} (12 \frac{sinh θ (cosh^{2} θ − 1)}{cosh^{5} θ} − 8 \frac{sinh θ}{cosh^{3} θ} ) .  (14)

or

u′′′ = −2Aa^{3} (12 \frac{sinh θ}{cosh^{3} θ} − 12 \frac{sinh θ}{cosh^{5} θ} − 8 \frac{sinh θ}{cosh^{3} θ} ) .  (15)

and therefore

u′′′ = −2Aa^{3} (4 \frac{sinh θ}{cosh^{3} θ} − 12 \frac{sinh θ}{cosh^{5} θ} ) .  (16)

Putting now everything together, we have

u̇ + uu′ + u′′′ = 2aA\frac{sinh θ}{cosh^{3} θ} [(c − 4a^{2}) + (−A + 12a^{2}) \frac{1}{cosh^{2} θ} ] .  (17)

The rhs can only vanish if

c = 4a^{2} = A/3.  (18)

We also see that, if we were to introduce a parameter μ in front of the dispersive term, i.e.,

u̇ + uu′ + μu′′′ = 0,  (19)

the solution would read

c = 4a^{2}/μ = A/3.  (20)

so the relation A = 3c is not altered, but just the width changes.

Figure 1: xt diagram for c_{1} = 3 and c_{2} = 2.

Figure 2: xt diagram for c_{1} = 3 and c_{2} = 1.

3 Numerical solutions

To compute numerical solutions of the KdV equation, one can just use a high-order finite difference scheme and represent first derivative on a discrete mesh as

f′_{i} = (−f_{i−3} + 9f_{i−2} − 45f_{i−1} + 45f_{i+1} − 9f_{i+2} + f_{i+3})/(60δx),  (21)

and the third derivative as

f′′′_{i} = (+f_{i−3} − 8f_{i−2} + 13f_{i−1} − 13f_{i+1} + 8f_{i+2} − f_{i+3})/(8δx^{3}).  (22)

Both formulae have a stencil width of three in each direction, but the first derivative is sixth order and the third one is only second order accurate. A third derivative that is also sixth order has a stencil width of four:

f′′′_{i} = (+7f_{i−4} − 72f_{i−3} + 338f_{i−2} − 488f_{i−1} + 488f_{i+1} − 338f_{i+2} + 72f_{i+3} − 7f_{i−4})/(240δx^{3}). (23)

The equations are advanced in time by a time-stepping scheme. It is advantageous to choose a highorder scheme, e.g., a third order scheme. Higher order schemes also allow for a longer time step, which allows the code still to be stable. The maximum possible time step scales in a well-defined way with the parameters in the simulation. For pure advection, this is known as the Courant–Friedrichs–Lewy condition, i.e., δt < C_{CFL}δx/u_{max}. If viscosity is important, it can constrain the time step further, and on dimensional grounds it must be δt < C_{visc}δx^{2}/ν, and likewise for dispersion, δt < C_{disp}δx^{3}/μ. In practice, we can take the minimum of all three or more such constraints, i.e.,

δt_{max} = min [C_{CFL}δx/u_{max}, C_{visc}δx^{2}/ν, C_{disp}δx^{3}/μ] .  (24)

For the code at hand, we found empirically C_{CFL} ≈ 0.9, C_{visc} ≈ 0.1, and C_{disp} ≈ 0.3.

Solitons cannot be superimposed just like that. Exact two-soliton solutions do actually exist, and if they are fare enough apart initially, the addition of two solution is good enough. In Figures 1 and 2 we show examples of soliton collisions. One clearly sees that the actual interaction is not just the sum of two. Also, there is always a phase shift.

$Header: /var/cvs/brandenb/tex/teach/ASTR_5410/14_Nonlinear_Water_Waves/notes.tex,v 1.8 2016/10/30 15:05:53 brandenb Exp $