Model card

MeshGraphNet surrogate for AirfRANS

What the model is, what it was trained on, how it will be judged, and where it should not be trusted.

Awaiting full training run
This site currently runs in preview mode. All numbers and fields come from an in-browser placeholder: an inviscid panel method with empirical viscous and stall corrections, calibrated so its numbers sit close to the AirfRANS RANS data (see Preview physics). The interface, API contract and workflows are final; the physics engine is swapped for the trained surrogate once the items below are complete.

Inference pipeline

  1. 01

    Parameterize

    NACA 4- or 5-digit parameters, angle of attack and inflow speed define a design.

  2. 02

    Morph a mesh

    The nearest AirfRANS training mesh (~180k cells) is morphed onto the new shape and quality-checked.

  3. 03

    Predict the flow

    A MeshGraphNet passes messages across the mesh graph and predicts Ux, Uy, p and νt at every node.

  4. 04

    Integrate forces

    Surface pressure and wall shear integrate to Cl, Cd and Cm, with ensemble uncertainty.

  5. 05

    Optimize

    Evolutionary search calls the surrogate thousands of times to find better shapes.

Architecture

Architecture
MeshGraphNet (encode → process → decode), NVIDIA PhysicsNeMo 2.0
Processor
15 message-passing layers · hidden width 128 · ReLU · sum aggregation
Parameters
≈ 2.55 M (base variant)
Node inputs (14)
x, y, signed distance, wall flag, wall normal (2), inflow U∞ (2), canonical NACA (4), 5-digit flag, log wall distance
Edge inputs (6)
dx, dy, |d|, unit direction (2), log |d|
Outputs (4)
Ux, Uy, kinematic pressure p/ρ, turbulent viscosity νt at every node
Normalization
Per-case physical scaling by U∞ (p by ½U∞², νt by U∞c), then z-scoring with training-split statistics
Hard constraints
No-slip enforced exactly on the wall (u = v = νt = 0)
Uncertainty
Deep ensemble: the spread across independently seeded members

Training data

Dataset
AirfRANS: 2D incompressible steady RANS, k-ω SST, OpenFOAM
Geometries
NACA 4- and 5-digit airfoils
Split
Official full task: 720 train / 80 validation / 200 test
Mesh size
~180k nodes, ~700k edges per case
Reynolds
≈ 2 – 6 × 10⁶ (U∞ ≈ 31 – 94 m/s, c = 1 m)
Angle of attack
≈ −5° to 15°

Training setup

Optimizer
AdamW, lr 1e-4, weight decay 1e-4, gradient clip 1.0
Schedule
ReduceLROnPlateau (×0.7, patience 8), early stopping patience 20, ≤ 200 epochs
Batch
One full mesh per step, bf16 mixed precision
Loss
MSE on normalized fields; optional physics-residual fine-tune (λ = 1e-4)
Hardware
Azure NC A100 80 GB (planned full run)

Acceptance criteria

Test-split targets. Measured values are published after the full training run.

MetricTargetMeasured
Relative L2 · Ux≤ 0.05 Pending
Relative L2 · Uy≤ 0.20 Pending
Relative L2 · p≤ 0.20 Pending
Relative L2 · νt≤ 0.50 Pending
R² · Ux / Uy / p / νt≥ 0.98 / 0.95 / 0.95 / 0.80 Pending
Spearman ρ · Cl≥ 0.98 Pending
Spearman ρ · Cd≥ 0.80 Pending
MAE · Cl≤ 0.05 Pending

Limitations

Where the surrogate should not be trusted

  • NACA 4- and 5-digit families only; other shapes are outside the training distribution.
  • 2D, incompressible, steady RANS (k-ω SST): no compressibility, transition or unsteady separation.
  • Accuracy degrades past stall, where the steady RANS training data is itself less reliable.
  • New shapes rely on a morphed mesh; heavily distorted morphs are rejected by the quality gate.
  • Viscous drag depends on near-wall gradients and is harder to predict than lift.

Preview physics

How close the placeholder model is to CFD, until the surrogate's own test-split results replace it

Cl
mean absolute error 0.016
Cd
mean absolute error 1.2 %
Cm¼
mean absolute error 0.0045
Surface Cp
RMS error 0.047
Wake
centreline velocity deficit within 5 % on average (worst 24 %), νt/ν within 8 % (worst 25 %), at 0.05 c, 0.25 c and 0.5 c behind the trailing edge
Cross-checks
NACA 0012 at Re 6 × 10⁶: Cd₀ 0.0077 (NASA TMR SST 0.0081), dCl/dα 0.105 /°; Cm of NACA 2412 / 4412 within 0.005 of wind-tunnel data

Calibrated and checked on the same ten AirfRANS cases, all near Re ≈ 2 × 10⁶, so these are in-sample figures. The Reynolds-number trends, stall behaviour and the flow-field details away from those cases follow standard turbulent-flow correlations and are indicative only.

Roadmap

Status of the production system behind this interface

  1. PHASE 0
    Full training run on A100 + inference benchmark
  2. PHASE 1
    Mesh-morphing engine for new geometries
  3. PHASE 2
    FastAPI surrogate service
  4. PHASE 3
    Server-side optimizer (pymoo) with job queue
  5. PHASE 4
    Web interface (this preview)
  6. PHASE 5
    Cloud deployment, CI, monitoring
  7. PHASE 6
    Validation study against held-out CFD