Skip to content

Cartesian PIC propagation focuses wave energy onto the grid axes (breaks axisymmetry) #59

@mochell

Description

@mochell

Summary

The 2-D semi-Lagrangian Particle-in-Cell engine (WaveGrowthModels2D.WaveGrowth2D)
does not propagate a radially-symmetric wave field isotropically. The
advect → deposit-to-4-nodes → remesh cycle concentrates wave energy along the
Cartesian grid axes
. Under a stationary, perfectly radially-symmetric wind
(e.g. a Holland TC) this grows into a 4-fold ("cross") Hs pattern locked to the
grid axes; the grid-free ray integration of the same equations stays cleanly
axisymmetric.

This is a scheme-level numerical anisotropy, not a tunable parameter: it is
independent of the boundary condition, only partially mitigated by resolution,
and present with no source terms at all.

Minimal reproduction (pure propagation, no source terms)

Seed an annulus of wave energy whose group velocity points radially outward
everywhere, with input=false, dissipation=false, peak_shift=false, direction=false (only propagation=true) on a square Cartesian grid, zero wind
forcing, and step with time_step!. A correct scheme keeps a perfect,
equally-thin expanding circle.

Observed: energy is funnelled into sharp spikes on the four grid axes
((±R,0), (0,±R)) while the diagonals deplete, and the thin ring broadens
radially — all while total energy is conserved (e.g. 376.00 → 375.50 over
30 h). So it is pure numerical redistribution by the deposit/remesh, with no
physical source to blame.

On an anisotropic grid (dx = 3·dy) the effect is unbalanced: tall sharp
spikes along the fine axis, long streaks along the coarse axis — confirming the
numerical diffusion is per-axis, set by the grid spacing.

A self-contained script + figures/videos are available (TC wave comparison
harness): ring_propagation_test.jl produces ring_propagation_*.mp4 and the
ring_propagation_montage_*.png montages.

Corroborating evidence (full TC)

Stationary Holland um=30 m/s, Rm=100 km, V=0:

  • Boundary (boundary_type = same vs minimal): bit-identical → not a
    boundary effect.
  • Resolution (dx 20→4 km): the temporal amplitude oscillation converges,
    but the 4-fold spatial pattern persists.
  • CFL (dt 5 vs 15 min): need cg·dt/dx ≲ 1 for the amplitude to converge.
  • TC size (Rm 100→200 km, same grid): 4-fold persists and scales with the
    TC (not a feature-resolution effect).

Symmetry argument: with a radially-symmetric forcing there is no preferred
physical direction
, so any 4-fold azimuthal structure can only originate from
the square grid's 4-fold symmetry.

Likely root cause

The bilinear PIC deposit to the 4 nearest nodes
(ParticleInCell.compute_weights_and_index_mininal /
get_absolute_i_and_w) plus the remesh
(Operators/mapping_2D.jl: ParticleToNode!, remesh!) discretizes axis-aligned
propagation differently from diagonal propagation, focusing axis-aligned energy
and dispersing off-axis energy. Over an outward-radiating field this accumulates
into the grid-axis 4-fold.

Suggested directions for a fix

  • An isotropic / higher-order deposition kernel (the bilinear 4-node deposit
    is the anisotropy source) — primary candidate.
  • Flux-form propagation, a less anisotropic lattice, or sub-grid azimuthal
    smoothing.
  • Unit test: the pure-propagation ring is the natural regression test — a
    correct scheme keeps it circular and thin (and isotropic under dx≠dy apart
    from the expected per-axis resolution).

Reference

Full write-up with figures (3-page PDF) and all diagnostics:
analysis/hurricanes/comparison/FINDINGS_PiCLES_axisymmetry.{md,pdf} in the
2022_particle_waves repo (TC wave comparison harness).

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions