Loading…
Loading…
A trained Transolver neural operator from the open-source scirex library (JAX/Flax) for the Darcy flow 2D (data-driven) benchmark. The weights are the last-epoch weights of the run described below and are stored as model.safetensors.
| Metric | This model | Published reference |
|---|---|---|
| Test relative L2, mean of five seeds | 0.556% | 0.57% (Wu et al., ICML 2024, Table 2) |
| Test relative L2, this checkpoint (seed 2, lowest test error of seeds 0 to 4) | 0.532% | – |
Lower is better, except for Spearman correlations. Figures are those of the ScireX results table and benchmark pages: benchmark page and the GitHub README. This repository holds seed 2, the lowest test error of five seeds (0.600%, 0.539%, 0.532%, 0.559%, 0.549%). The 0.556% in the first row is the five-seed mean; only one seed can be archived, which is why the two rows differ. The weights are last-epoch weights; only the seed was picked on test error (there is no validation split), so 0.532% is slightly optimistic.
Input: permeability field on an 85 x 85 grid (7,225 points). Output: pressure field on the same grid. 1000 training and 200 test samples. The normalisation statistics are in config.json; the weights are unusable without them.
Trained on the Darcy flow data of Li et al. (ICLR 2021), Zenodo record 12784353, licensed under CC BY 4.0.
Transolver, 2,826,945 parameters. AdamW, cosine one-cycle LR (peak 1e-3), weight decay 1e-5, gradient-norm clip 0.1, relative L2 + 0.1 x gradient regularisation (Wu et al., Table 8), global-scalar normalisation. Batch 4, 500 epochs (125,000 steps). Training time: ~42 min.
Full setup: doc/benchmarks/darcy/results/comparative.md.
hf download zenteiq-ai/scirex-transolver-darcy --local-dir ckpt/scirex-transolver-darcy
Then run the benchmark's scripts/benchmarks/darcy/infer.py from the GitHub repository. The exact command is under Reproduce below. Check your install against sample.safetensors, which holds one test input (input) and the model's expected output (expected_output). config.json holds the model settings and the normalisation statistics.
From a checkout of the GitHub repository at tag v1.0.0:
hf download zenteiq-ai/scirex-transolver-darcy --local-dir ckpt/scirex-transolver-darcy
python scripts/benchmarks/darcy/infer.py \
--checkpoint ckpt/scirex-transolver-darcy \
--run transolver \
--data-dir $DATA_ROOT/darcy
$DATA_ROOT is the folder that holds the benchmark datasets (see reproducibility.md).
Results table for this benchmark: comparative.md.
Valid only within the trained input ranges of the benchmark data. Not for safety-critical design without separate validation. Bug reports: GitHub Issues.
Same benchmark, other models:
| Model | Repo |
|---|---|
| FNO | zenteiq-ai/scirex-fno-darcy |
| GINO | zenteiq-ai/scirex-gino-darcy |
| WNO | zenteiq-ai/scirex-wno-darcy |
Other Darcy runs of the same model:
Same model, other benchmarks:
| Benchmark | Repo |
|---|---|
| Pipe flow | zenteiq-ai/scirex-transolver-pipe |
| Navier-Stokes 2D | zenteiq-ai/scirex-transolver-navier-stokes |
| Chip cooling | zenteiq-ai/scirex-transolver-chip-cooling |
| AirfRANS | zenteiq-ai/scirex-transolver-airfrans |
| Car-Design-ShapeNetCar | zenteiq-ai/scirex-transolver-shapenetcar |
| Car-CFD | zenteiq-ai/scirex-transolver-car-cfd |
The weights are released under the Apache License 2.0 (see LICENSE; dataset credit in NOTICE). The code is LGPL-3.0. Cite the software through the CITATION.cff in the GitHub repository and the architecture paper: