What lies beyond the cut

How much turbulence can a coarse grid know about?

Approaching the optimal closure: equivariance, inductive bias,
and Reynolds-number generalization in data-driven LES

Syver Døving Agdestein · Benjamin Sanderse
Centrum Wiskunde & Informatica, Amsterdam · Eindhoven University of Technology
WCCM–ECCOMAS 2026 · Munich · 22 July
MS184A · Theory-guided Design of Deep Learning-based Surrogates
Funded by NWO Talent Programme Vidi (VI.Vidi.193.105)
compute on SURF / Snellius (EINF-15798)
Q-criterion isosurfaces of a decaying Taylor–Green vortex
decaying Taylor–Green vortex at Re = 3000
Agdestein & Sanderse

The same flow, on two grids

DNS velocity, z component
DNS · velocity u
810³ — resolves everything
filtered velocity, z component
LES · filtered velocity ū
128³ — 250× fewer points, misses the small scales

the missing scales still act on the resolved ones — that action is the closure's job

Ground · Two grids

Where the energy lives — and where the grid stops

wavenumber k (log) energy E(k) (log) cut k = π/Δ data — DNS spectra · ν ∈ {2.5, 1.0}·10⁻⁴

the grid resolves everything left of the cut;
the shaded energy is invisible

coarsen the filter (Δ ↑) — more energy is hidden

lower the viscosity (ν ↓) — the tail grows longer

one resolved-scale number for
how much lies beyond the cut

Ā = ∇ū — the resolved velocity gradient ·

‖Ā‖ — its r.m.s. over the box

Ground · Sub-filter energy

Why this number? Scale the equations and see what survives

velocity slice, original scale
a turbulent solution
velocity slice, rescaled
…rescaled — still a solution
incompressible Navier–Stokes
rescale space and time

Still Navier–Stokes — but the rescaling multiplies ν by a²/b. A closure blind to ν stays consistent only where a² = b, the scalings that leave ν fixed.

Along that family, ū has a single dimensionless invariant: ReΔ. Symmetry itself hands the closure its Reynolds input.

Ground · Scaling symmetry

Energy crosses the cut in both directions

resolved scales sub-filter scales the cut E(k), k < π/Δ E(k), k > π/Δ forward transfer — dissipation backscatter — 22%
a closure must get this net flux right — at every Reynolds number
Ground · Dissipation & backscatter

Classical closures pick one side of this trade

pointwise SFS dissipation −τ:S̄ density (log) backscatter data — KDE at held-out (ν, Δ) reference (DNS) dyn. Smagorinsky Clark
functional · Smagorinsky

dissipation ≈ right · structure wrong
backscatter 0.0004 — can't flow backward

structural · Clark

structure ≈ right · dissipation 0.6× too weak
backscatter 0.25 — close to the true 0.22

and notice: ν appears in neither formula no ν

Smagorinsky 1963 · Germano et al. 1991 · Clark et al. 1979

Ground · Functional vs structural

Learn the closure from DNS — building in the physics we know

one network, fit a priori (least squares on τ) · 3 viscosities × 3 filter widths · 5 seeds
more inductive bias built in — less for the network to learn
MLP · no symmetry
Ā (9) hidden τ (6)
9 gradients in → 6 stresses out

structure must be learned from data

Rosenblatt 1958
G-CNN · tied weights
Ā (9) hidden τ (6)
tied across 48 grid symmetries

equivariant by weight sharing

Cohen & Welling 2016
TBNN · tensor basis
λ (5) hidden α (7)
λ₁…λ₅ invariants of Ā
T₁…T₇ basis tensors

equivariant through the features

Pope 1975 · Ling et al. 2016

However much we build in, all three stay single-point closures — each reads τ(x) from Ā(x) alone. Hold that thought.

Ground · The learned closures

The learned closures are just as blind

without ν, the scaling symmetry forces
no ν

consistent — but rigid three times over:

τ can only grow as Δ²
τ can only grow as |Ā|²
τ never feels ν — calibration frozen at the training regime

let ν back in — through the one dimensionless number the symmetry permits

same symmetry, one extra input
with ν

now m bends nonlinearly with Δ, |Ā| and ν —
but only through ReΔ = Δ²‖Ā‖/ν,
the one combination the rescalings leave alone

Main arc · The blind spot

Tested away from training: who keeps their calibration?

training window median SFS dissipation / truth true dissipation ReΔ at the test point (log) → data — median SFS dissipation / DNS reference · held-out (ν, Δ) · 5 seeds Reynolds-blind MLP dynamic Smagorinsky — also blind + ReΔ — holds at held-out ν and Δ
Main arc · Calibration

A flow it has never seen: Taylor–Green becoming turbulent

TGV vorticity, turbulent state
vorticity · t = 0
decaying, transitional — out of distribution twice over

laminar → transition → decay

all closures stay stable — but over-dissipate

dissipation / truth ReΔ at peak dissipation (log) → 1.0 data — SFS dissipation / reference, 3 filter widths blind + ReΔ

ReΔ corrects the Reynolds-driven share of the excess,
and honestly leaves the share owed to different flow physics

Main arc · Out of distribution

Couldn't a better architecture have fixed this? We checked.

strain invariant · tr S̄² SFS dissipation −τ:S̄ backscatter ↓ data — one slice · one input ↦ a cloud the conditional mean — the optimal one-point closure
The optimal closure
the best any one-point model can do
Langford & Moser 1999
parameters (log) error data — a-priori error, 5 seeds the floor — knowing only Ā MLP G-CNN · TBNN
Architecture
how cheaply you reach the floor — 25× cheaper, never below
Input
where the floor is — more input features can only lower it
Secondary arc · The floor
Takeaway

A closure that knows what it's missing works where it has never been.

Agdestein & Sanderse · CWI, Amsterdam · TU Eindhoven
“Approaching the optimal closure: equivariance, inductive bias,
and Reynolds-number generalization in data-driven LES”

arxiv preprint: 2603.05325 · code on GitHub

QR code: interactive story of this work
Read the interactive story of this work
https://agdestein.github.io/
Close
Backup

Setup: data and training

Experiment design
trained here filter width Δ/h → viscosity ν (ReΔ ↑ as ν ↓)
trained (3×3)  ·   tested — held-out seed & ν, off-grid Δ

every test point sits off the training grid — in filter width and in ReΔ
train ReΔ · 8 snapshots per grid point → 72 gradient–stress fields

Data & training

DNS — forced HIT, pseudo-spectral 810³ · one H100
2/3-rule dealiasing · kmaxη ≥ 1.1 · double precision

Filter — modified Gaussian onto a 128³ LES grid
kernel commutes with the rescaling symmetry

Closures — MLP · G-CNN · TBNN, four sizes (≈120–3000 params)
5 seeds each · a-priori least squares on the normalized stress · AdamW, 20 epochs

A posteriori — rollouts vs 40 filtered-DNS snapshots (≈1 integral time)
error = mean relative trajectory error · baselines: no-model · dynamic Smagorinsky · Clark

Backup · Setup
Backup

The calibration gain survives an actual LES run

training window rollout error vs filtered DNS ReΔ at the test point (log) → data — mean relative trajectory error over ≈ 1 integral time · held-out ν and Δ · 5 seeds Reynolds-blind MLP + ReΔ dynamic Smagorinsky

inside the training window the two are essentially tied; the ReΔ input pulls ahead at the highest Re ( at the farthest test point)

Backup · A posteriori
Backup

Scoreboard at the in-distribution test point (Δ/h = 2.5)

closurea-priori stress errora-posteriori rollout error

a priori, the data-driven closures sit on the one-point floor; a posteriori the spread narrows but the ranking holds — the learned closures stay ahead of every classical baseline

learned closures: largest tier (≈3000 parameters), median over 5 seeds · all metrics at held-out seed ν = 2.5·10⁻⁴, Δ/h = 2.5

Backup · Scoreboard