Notice: The reproducibility variables underlying each score are classified using an automated LLM-based pipeline, validated against a manually labeled dataset. LLM-based classification introduces uncertainty and potential bias; scores should be interpreted as estimates. Full accuracy metrics and methodology are described in Coakley et alK. L. Coakley, T. Snelleman, H. Hoos, and O. E. Gundersen, "The embrace of open science: An analysis of a decade of AI research and 56 800 conference papers," Under Review, 2026..

EddyFormer: Accelerated Neural Simulations of Three-Dimensional Turbulence at Scale

Authors: Yiheng Du, Aditi Krishnapriyan

NeurIPS 2025 | Venue PDF | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental 4 Experiments The JAX [Bradbury et al., 2018] implementation of Eddy Former is available at https://github.com/ASK-Berkeley/Eddy Former, and a Py Torch [Paszke et al., 2019] version is provided via NVIDIA Physics Ne Mo (https://github.com/NVIDIA/physicsnemo). In 4.1 and 4.2, we consider twoand three-dimensional turbulent flows that are maintained by an artificial forcing. We evaluate the models using a set of comprehensive metrics (see B for details). Eddy Former achieves lower test errors, combined with a compact model size and competitive training speed, outperforming all other baseline models. Fig.3 shows the errors and invariant measures for both models, alongside DNS results at different resolutions.
Researcher Affiliation Academia Yiheng Du UC Berkeley EMAIL Aditi S. Krishnapriyan UC Berkeley, LBNL EMAIL
Pseudocode Yes Algorithm 1: SEMConv Implementation (1D) Input: Feature field u; Fourier convolution kernel k(x) Output: Convolved feature field SEMConv(u) S s/2 ; // Number of neighbors w Quadrature Weights() ; // Precomputed weights foreach collocation point x(n) h do y 0 ; // Output at x(n) h for h = h S to h + S do for m = 0 to M do w w(m) h ; // Quadrature weight k k(x(m) h x(n) h ) ; // Evaluate convolution kernel u u(x(m) h ) ; // Evaluate input feature y += w k u T ; SEMConv(u)(x(n) h ) y
Open Source Code Yes Code and project page are available at: https://mrlazy1708.github.io/eddyformer. The JAX [Bradbury et al., 2018] implementation of Eddy Former is available at https://github.com/ASK-Berkeley/Eddy Former, and a Py Torch [Paszke et al., 2019] version is provided via NVIDIA Physics Ne Mo (https://github.com/NVIDIA/physicsnemo).
Open Datasets Yes We create a new three-dimensional isotropic turbulence dataset and train Eddy Former to achieves DNS-level accuracy at 2563 resolution, providing a 30x speedup over DNS. The Well [Ohana et al., 2025] is a large-scale fluid simulation dataset that contains fluid flows under a diverse set of conditions.
Dataset Splits Yes The test set contains 16 longer trajectories: t = 50s for KF4 and t = 20s for Re94 .
Hardware Specification Yes When benchmarked on a single NVIDIA A100 GPU, Eddy Former is 30x faster, achieving essentially real-time simulations. Each model is trained for 15k steps on four NVIDIA A100 GPUs, taking approximately one day wall-clock time to converge.
Software Dependencies No The JAX [Bradbury et al., 2018] implementation of Eddy Former is available at https://github.com/ASK-Berkeley/Eddy Former, and a Py Torch [Paszke et al., 2019] version is provided via NVIDIA Physics Ne Mo (https://github.com/NVIDIA/physicsnemo). We acknowledge the JAX-CFD [Dresdner et al., 2022] and NSM [Du et al., 2024] codebases, which we referenced and built upon in our implementation. While JAX and PyTorch are mentioned, their specific version numbers are not provided, nor are explicit versions for JAX-CFD or NSM.
Experiment Setup Yes Hyperparameters. For 2D and 3D problems, Eddy Former uses the hyperparameters described in Tab. 6 and Tab. 7, respectively. We consider both Chebyshev and Legendre basis as the orthogonal polynomials in SEM basis for most problems, which is indicated by Eddy Former (cheb) and Eddy Former (leg), respectively. We use the Adam optimizer with a learning rate of 10 3. For homogeneous turbulence 4.1 and 4.2, we use a batch size of 16, while a batch size of 64 is used in 4.3.