conatus.problems.swift_hohenberg

conatus.problems.swift_hohenberg(*, Nx, Ny, Lx, Ly, r, dealias)[source]

Swift–Hohenberg equation on a doubly periodic box, IVP (Swift & Hohenberg 1977):

dt(u) - r u + (1 + lap)^2 u = -u^3.

Critical wavenumber 1 (length unit = 1 / q_c), time unit as written; r = distance from onset. RealFourier(x, Nx, (0, Lx)) x RealFourier(y, Ny, (0, Ly)). The cubic term is dealiased exactly by dealias = 2 (a quadratic one by 3/2): it is your argument.

Validation reference: exp(i k.x) grows at s = r - (1 - |k|^2)^2 about u = 0, so onset is r_c = 0 at |k| = 1 (Cross & Hohenberg 1993, Rev. Mod. Phys. 65, 851); tests/problems/test_problems_patterns.py checks every Fourier group exactly. Rolls: A^2 = 4 r / 3 + r^2 / 144 + O(r^3) (examples/patterns/swift_hohenberg.py).

Parameters:
  • Nx (int)

  • Ny (int)

  • Lx (float)

  • Ly (float)

  • r (float)

  • dealias (float)

Return type:

Ready