Skip to content

Stationary forcing produces a non-steady radial 'pulsing'; instability worsens as dt shrinks (over-remeshing); Hs amplitude not dt-converged #64

@mochell

Description

@mochell

Summary

Under a stationary, axisymmetric TC forcing the wave field should reach a steady state, but it does not: it periodically launches radial waves outward from the storm centre ("pulsing"). This is purely numerical — the forcing is constant in time and radially symmetric.

It is NOT a high-CFL instability — it grows as dt shrinks (over-remeshing)

Reducing the remesh timestep dt (which lowers cg·dt/dx) makes the pulsing dramatically worse, with a sawtooth signature (slow bleed-down then snap-back). Late-time (t>10 h) max-Hs ripple, Holland CAT4, Rm=75 km, dx=10 km, P=2:

dt mean max Hs ripple (rel. peak-to-peak)
20 min 24.5 m 10.2%
5 min 21.1 m 4.2% (calmest)
2 min 20.3 m 20.4%
1 min 19.0 m 37.7%

There is a sweet spot near dt=5 (moderate CFL). The failure mode is remesh frequency: when a particle moves ≪ one grid cell per step, the advect → deposit → remesh → deposit round-trip (a lossy interpolation/reconstruction every step) accumulates error → sawtooth. So "reduce dt for stability" is exactly backwards here.

Figure: pulsing_maxHs_timeseries_P2.png. Please attach from plots/hurricanes/comparison/.

Amplitude is not dt-converged

The mean max Hs drifts systematically with dt (19.0 → 20.3 → 21.1 → 24.5 m for dt = 1 → 2 → 5 → 20 min). The scheme is not converged in amplitude w.r.t. the remesh timestep.

Pre-existing — not introduced by the B-spline work (#60)

The pulsing is present at P=1 (CIC, the original scheme) too — late-time ripple at Rm75 dx10: P=1 6.4%, P=2 4.2%, P=3 8.4%. It was previously masked by the grid-axis anisotropy; once #60 made the field isotropic, the temporal oscillation is clearly visible as clean radial waves.

Resolution sensitivity

A better-resolved storm (Rm=200 km, Rm/dx=20 vs 7.5) has a much smoother Hs field — the sharp radial pulsing is strongly suppressed (hovmoller_Rm200_P2_y0.png).

Root cause (hypothesis)

The lossy deposit ↔ GetVariablesAtVertex reconstruction applied at every remesh step; more remeshes per unit time → more accumulated error. Likely coupled to the eye reconstruction singularity in #63 (the λp eye spikes correlate with these resets).

Figures (attach from plots/hurricanes/comparison/): pulsing_maxHs_timeseries_P2.png, hovmoller_Hs_P2_holland_CAT4_y0.png, hovmoller_Rm200_P2_y0.png.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions