The 3D Navier–Stokes solver (ns3d.py)

A 3D pseudo-spectral solver (velocity/rotational form, 2/3 dealiasing, integrating-factor RK4) with low-k forcing and the filtered (Germano) energy-flux diagnostic—the 3D version of Pillar IV's flux test (ledger row IV/3D). The solver is validated by inviscid energy conservation to machine precision (Δ E/E∼10⁻¹⁶) and divergence-freeness (∼10⁻¹⁴).

)} A 3D pseudo-spectral solver (velocity/rotational form, 2/3 dealiasing, integrating-factor RK4) with low-k forcing and the filtered (Germano) energy-flux diagnostic—the 3D version of Pillar IV's flux test (ledger row IV/3D). The solver is validated by inviscid energy conservation to machine precision (Δ E/E∼10⁻¹⁶) and divergence-freeness (∼10⁻¹⁴).

)} A 3D pseudo-spectral solver (velocity/rotational form, 2/3 dealiasing, integrating-factor RK4) with low-k forcing and the filtered (Germano) energy-flux diagnostic—the 3D version of Pillar IV's flux test (ledger row IV/3D). The solver is validated by inviscid energy conservation to machine precision (\Delta E/E\sim10^{-16}) and divergence-freeness (\sim10^{-14}). Forcing drives a developed cascade (velocity-derivative skewness \approx-0.5, the canonical value), in which the forward energy flux \Pi=-\tau_{ij}\bar S_{ij} is 9495\% forward and concentrates on intense-strain events: the top 20\% of the strain field carries \approx6066\% of the forward flux, \approx1014\% of the volume carries half, and \mathrm{corr}(\Pi,|\bar S|^2)\approx0.80 (the flux is strain-aligned, not vorticity-aligned). The result is resolution-converged across N=64,80,96,128 at fixed physical filter scale. The shipped __main__ runs a lighter N=48 developed case (still skewness {\approx}{-}0.4, same concentration) for quick reproduction; the converged N=64,80,96,128 figures were obtained with the accompanying checkpointed forced driver run3d.py and the flux-concentration measurement tool measure3d.py (the N=128 field was reached by spectral prolongation of the developed N=96 field, energy preserved to machine precision, then equilibrated under identical physics). Full source is shipped as ns3d.py (solver), run3d.py (checkpointed driver), and measure3d.py (measurement). The only residual is the infinite-Reynolds asymptotic, the open Onsager/Duchon–Robert problem.