FuXi-CFD-model / README.md
linchensen's picture
Update README.md
767b59e verified
# FuXi-CFD Model
## Overview
This repository accompanies the paper:
**Reconstructing fine-scale 3D wind fields with terrain-informed machine learning**
It provides the pre-trained FuXi-CFD model used in the study, exported in ONNX format, together with a complete inference example.
**Version:** v1.0
**Framework:** ONNX (runtime inference)
---
## Model Description
FuXi-CFD is a terrain-informed deep learning model designed to reconstruct fine-scale three-dimensional wind fields from coarse atmospheric inputs and high-resolution terrain information.
### Model Inputs
The model expects an `inputs.npz` file containing:
- `dem` — terrain elevation (300 × 300, float32, meters)
- `roughness` — surface roughness length (300 × 300, float32, meters)
- `u_100m` — coarse zonal wind at 100 m (9 × 9, float32, m s⁻¹)
- `v_100m` — coarse meridional wind at 100 m (9 × 9, float32, m s⁻¹)
All variables must be provided in physical units (no normalization applied by the user).
Normalization parameters used during training are included in `normalization/`.
### Model Outputs
The model produces a file `prediction.npz` containing:
- `u` — zonal wind component (27, 300, 300), m s⁻¹
- `v` — meridional wind component (27, 300, 300), m s⁻¹
- `w` — vertical wind component (27, 300, 300), m s⁻¹
- `k` — turbulent kinetic energy (27, 300, 300), m² s⁻²
The vertical levels correspond to the 27 non-uniform heights described in the associated dataset documentation.
---
## Quick Start (Inference Example)
```bash
cd inference_example
python scripts/infer.py \
--model ../model/fuxicfd_model.onnx \
--input data/inputs.npz \
--output data/prediction.npz
```
Outputs are saved as `data/prediction.npz` with keys: `u, v, w, k`.
---
## Repository Structure
- `model/` — exported ONNX weights
- `inference_example/` — complete preprocessing → inference → postprocessing pipeline
- `normalization/` — training-time normalization parameters
- `scripts/` — runnable inference scripts
- `utils/` — helper functions
---
## License
CC BY-NC 4.0
---
## Citation
If you use this model, please cite:
Lin, C., et al. *Reconstructing fine-scale 3D wind fields with terrain-informed machine learning*, Nature Communications (2026).