A Graph Neural Network (GNN) surrogate model optimized for steady-state urban wind flow prediction, specifically aligned with the FNO Model Data Specification for the VIP project.
This repository takes the base GNN-RANS framework and introduces critical physical alignment fixes, robust normalization strategies, and high-fidelity 4-panel diagnostic tools.
-
Wake Deficit Targeting (
Delta_U): Instead of raw velocity magnitude, this model is trained specifically on$\Delta U = \frac{Mag_U - U_{ref}}{U_{ref}}$ , aligning it geometrically with the expected physical wake deficit mechanics. - True Resolution Colormapping: Escaped the memory-saving limitations of the original repository to reconstruct the full 504×504 dense mesh evaluations using a specialized inference pipeline.
- Z-Score Normalization Pipeline: Replaced legacy static loading with programmatic dataset-level Z-score feature and target embeddings, fixing gradient vanishing issues near mean velocities.
-
4-Panel Diagnostic Template: Generates automated, publication-ready inference plots mapping
[Domain Setup | Ground Truth | Prediction | Difference]complete with aerodynamic metrics (R², MAE, RMSE, MAPE).
The trained checkpoint file (.ckpt) from the PACE ICE cluster is hosted externally due to file-size constraints.
- Download the best model checkpoint here:
[Insert Dropbox Link Here]
Place the downloaded .ckpt file in the ./checkpoints/ directory to run inference.
This codebase is specifically tuned for SLURM job submission on the Georgia Tech PACE ICE compute nodes (H200/A100).
# 1. Clone the repository
git clone https://github.com/NishanthG05/GNN-RANS-Flow.git
cd GNN-RANS-Flow
# 2. Get the dataset and model
# Place your expanded_dataset_1000.npz into `Wind Comfort Data/`
# Place your downloaded `.ckpt` into `checkpoints/`
# 3. Clean environment and generate datasets
rm -rf output_images/ logs/
mkdir -p logs
# 4. Submit the training/inference pipeline
sbatch train.sbatchsqueue -u $USER
tail -f logs/gnn_*.outUpon completion, all diagnostic visualizations and the 4-panel template will be output in the ./output_images/ directory.