# Equilibrium-Coordinate Neural Operator

- ID: 630
- Canonical URL: https://synthcore.org/idea/630/equilibrium-coordinate-neural-operator
- API JSON: https://synthcore.org/api/idea/630.json
- API Markdown: https://synthcore.org/api/idea/630.md
- Verification status: failed_benchmark
- Source: [arXiv:2607.09293](https://arxiv.org/abs/2607.09293)
- Category: architecture
- Solves: accuracy, stability, generalization
- ML areas: world-model, graph-nn, loss, training-dynamics
- Math tags: pde, dynamical-systems, numerical-analysis
- Ratings: usefulness 7/10; difficulty 5/10; novelty 7/10

## Idea description

Build a neural PDE surrogate that predicts changes in equilibrium variables rather than changes in conservative state variables. The network receives the local state and geometry, predicts an equilibrium-coordinate increment, and subtracts the network output evaluated at a reference equilibrium, forcing the reference state to have exactly zero learned residual.

## Mathematical statement

The paper rewrites the balance law as the quasi-conservative system \(\bm U_t+\bm K(\bm U)_x=\bm 0\), with \(\bm K(\bm U)=\bm F(\bm U)-\bm R(\bm U)\) and \(\bm R(\bm U)=\int_{\widehat{x}}^x B(\bm U(\xi,t))\bm U_\xi(\xi,t)\,d\xi\). Its equilibrium variables are \(\bm E^x(\bm U)=(q^x,\mathcal E^x,v,\theta,Z)^\top\) and \(\bm E^y(\bm U)=(q^y,\mathcal E^y,u,\theta,Z)^\top\), where \(q^x=hu\), \(q^y=hv\), \(h\) is depth, \(u,v\) are velocities, \(\theta\) is potential temperature, and \(Z\) is bottom topography. At the relevant steady states, the first four components are constant in the corresponding spatial direction, so \(\bm K_x=M^x\bm E^x_x\equiv0\) and \(\bm L_y=M^y\bm E^y_y\equiv0\). For a 1-D implementation use \(e(U)=(q,\mathcal E,\theta,Z)\), with \(q=hu\) and, for the standard Ripa equilibrium, \(\mathcal E=\frac12u^2+h\theta+\theta Z\). The neural residual is parameterized as \(\dot e_\phi=G_\phi(e,f)-G_\phi(e_{\rm eq},0)\), so the learned contribution vanishes exactly at the chosen equilibrium \(e_{\rm eq}\).

## Key formulas

- $$\bm U_t+\bm K(\bm U)_x=\bm 0,\qquad \bm K(\bm U)=\bm F(\bm U)-\bm R(\bm U),\qquad \bm R(\bm U)=\int_{\widehat{x}}^x B(\bm U(\xi,t))\bm U_\xi(\xi,t)\,d\xi.$$
- $$\bm E^x(\bm U)=\begin{pmatrix}q^x\\ \mathcal E^x\\ v\\ \theta\\ Z\end{pmatrix},\qquad \bm E^y(\bm U)=\begin{pmatrix}q^y\\ \mathcal E^y\\ u\\ \theta\\ Z\end{pmatrix},\qquad \bm K(\bm U)_x=M^x(\bm U)\bm E^x(\bm U)_x,\quad \bm L(\bm U)_y=M^y(\bm U)\bm E^y(\bm U)_y.$$
- $$\bm K(\bm U)_x\equiv\bm 0\quad\text{and}\quad \bm L(\bm U)_y\equiv\bm 0\quad\text{at the paper's steady states, since the first four equilibrium variables are spatially constant.}$$
- $$\dot e_\phi=G_\phi(e,f)-G_\phi(e_{\rm eq},0),\qquad e_{\rm eq}=\big(q_{\rm eq},\mathcal E_{\rm eq},\theta_{\rm eq},Z\big).$$

## Implementation notes

(1) Integration point: use a Fourier neural operator, U-Net, graph network, or ConvLSTM that advances a spatial shallow-water or Ripa grid. At every cell, convert the conservative state \(U=(h,q,h\theta,Z)\) to equilibrium coordinates \(e=(q,\mathcal E,\theta,Z)\), using \(u=q/h\) and \(\mathcal E=\frac12u^2+h\theta+\theta Z\). Feed \(e\), topography, and external forcing to the network and predict an equilibrium-coordinate increment. (2) Pseudocode: `e = encode(U); de = net(e, forcing); de_eq = net(encode(U_eq), zeros); e_next = e + dt*(de - de_eq); U_next = decode(e_next)`. Decode with `h` constrained positive, `q=e.q`, `theta=softplus(e.theta)`, and `U=(h,q,h*theta,Z)`. (3) The paper supplies the coordinate choice and the equilibrium-zero principle. Estimate `U_eq` analytically for still-water or moving-water data; network weights, spatial couplings, and any non-equilibrium forcing remain learned. Add a supervised physical-state loss and optionally `lambda_eq * ||net(e_eq,0)||^2` as a floating-point safeguard, although subtraction should enforce the property already. (4) First experiment: train a small 1-D FNO on trajectories generated by a finite-volume shallow-water solver, with random perturbations around still-water equilibria. Compare against an equal-width conservative-variable FNO. Measure zero-perturbation equilibrium drift, long-horizon rollout error, and stability near shocks. Success means at least 10x lower equilibrium drift and lower rollout error or fewer divergent trajectories at equal parameter count and timestep.

## Verification

- Status: failed_benchmark
- Mechanism evidence: yes
- Mechanism confirmed: no
- Practical verdict: inconclusive
- Verdict: Built a self-contained PyTorch MVP of the equilibrium-coordinate encoder/decoder and anchored residual G(e,f)-G(e_eq,0), with a matched unanchored MLP baseline. Exact subtraction produced zero equilibrium residual across tested output scales, reference-noise drift scaled linearly as predicted, and the penalty sweep matched 1/(1+lambda). In the toy comparison, equilibrium drift was 0.009594 for the baseline versus 0 for the idea, while non-equilibrium rollout RMSE fell from 0.005802 to 0.001137 on average and from 0.008741 to 0.001150 at the final step.

### Mechanism check

- Verdict: Built a self-contained PyTorch MVP of the equilibrium-coordinate encoder/decoder and anchored residual G(e,f)-G(e_eq,0), with a matched unanchored MLP baseline. Exact subtraction produced zero equilibrium residual across tested output scales, reference-noise drift scaled linearly as predicted, and the penalty sweep matched 1/(1+lambda). In the toy comparison, equilibrium drift was 0.009594 for the baseline versus 0 for the idea, while non-equilibrium rollout RMSE fell from 0.005802 to 0.001137 on average and from 0.008741 to 0.001150 at the final step.
- Confidence: 8/10
- Limitations: This is a pointwise toy MLP rather than a spatial FNO, U-Net, graph network, or finite-volume PDE solver. It does not test shocks, spatial coupling, conservative decoding with learned positive depth, long-horizon physical PDE rollouts, equal-FLOP scaling, or multiple random seeds.

### Practical benchmark

- Paired seeds: 8
- Baseline mean: 0
- Idea mean: 0
- p-value: 0.52655
- Paired wins: 3/8
- Benchmark verdict: no significant win

## Artifacts

- [bench_experiment.py](https://synthcore.org/code/283/bench_experiment.py)
- [bench_report.json](https://synthcore.org/code/283/bench_report.json)
- [experiment.py](https://synthcore.org/code/283/experiment.py)
- [report.md](https://synthcore.org/code/283/report.md)
- [report_bench_2026-08-31T001053.md](https://synthcore.org/code/283/report_bench_2026-08-31T001053.md)
- [results.json](https://synthcore.org/code/283/results.json)
- [Download all files as ZIP](https://synthcore.org/download/283)

## Disclaimer

AI-generated research hypothesis, automatically tested. Not peer-reviewed.
