Back to Blog

DoMINO: How NVIDIA's Physics Surrogate Works

Interactive architecture explorer for NVIDIA's DoMINO model. Walk through every layer of the pipeline that predicts full aerodynamic flow fields from raw STL geometry in seconds.

April 28, 2026
mlcfddeep-learningnvidiadominoarchitecturethree.js

DoMINO (Decomposable Multi-scale Iterative Neural Operator) is a point cloud-based neural operator by NVIDIA Research that predicts CFD-quality flow fields directly from surface geometry. Given an STL mesh, it outputs both volume fields (pressure, velocity, turbulent viscosity) and surface fields (pressure, wall shear stress) at real-time speed, replacing hours of RANS simulation.

I built an interactive explorer that lets you walk through every layer of the architecture in 3D. This post explains the pipeline; click any "Explore" button to open the visualizer focused on that layer.

Open Full Explorer →

Input: surface geometry

Everything starts with a triangulated surface mesh (STL) of the vehicle. The original CFD meshes contain ~10 million surface elements per case; DoMINO samples ~100K surface points from these as input. Crucially, mesh connectivity is discarded: only the raw xyz coordinates are kept. This makes the model mesh-independent. As the paper notes, predictions are validated on uniformly sampled point clouds rather than the simulation mesh, and the model is "not dependent on how these points are sampled."

Coordinates are normalized to the computational domain bounding box (12m x 4.5m x 3.3m), which extends well beyond the car into the wake region. This normalization ensures that the point convolution kernel radii have consistent physical meaning across different car placements.

Explore: STL Vertices →

The same surface mesh is also used to compute a signed distance field (SDF) on the volume grid: the shortest signed distance from every voxel center to the car surface. The SDF and its gradient components are appended to the learned geometry features to provide explicit topology information.

One of the cleverest details: the SDF gradient (∇SDF) at the surface approximates the outward-pointing normal vector, without needing normals defined in the input at all. This is a big deal in practice because surface normals can be unreliable when transferring geometry across file formats or recomputing on non-watertight meshes. The SDF sidesteps this entirely.

Explore: SDF on Grid →

Multi-scale ball queries

This is where the architecture gets interesting. DoMINO uses point convolution kernels implemented with GPU-accelerated ball query layers (via NVIDIA Warp). For each cell in a 3D volume grid, the kernel searches for surface vertices within a specified radius and operates on the resulting unstructured neighborhood.

The key insight is doing this at multiple scales, using a range of kernel sizes to capture both finer geometry features and long-range interactions:

Scale What it captures
Fine Panel edges, mirror geometry, wheel spokes
Medium Fender curvature, windshield angle
Coarse Overall body sections, wheelbase
Global Full car silhouette, aerodynamic envelope

The smallest radius creates a sparse representation: only grid cells very close to the surface find any neighbors. The largest radius means nearly every cell in the domain sees the car. Together, they give the network both fine local detail and broad context.

Explore: Ball Queries (3D, interactive) →

Learning geometry features

Each ball query scale feeds into a point convolution block that operates on the unstructured neighbor point sets and produces per-grid-cell feature representations. These learned features are then propagated through the computational domain using CNN blocks containing convolution, pooling, and unpooling layers.

Explore: Point Convolution →

This is done iteratively in a multi-resolution fashion, propagating geometry representation between the surface and computational domain grids to learn both short- and long-range dependencies. The features from all scales are combined to form a global geometry representation.

Explore: Feature Propagation →

Global geometry encoding

The multi-scale geometry features from the point convolution path are combined with the SDF-derived features (distance field + gradient components) into a unified geometry encoding on the volume grid. This encoding captures both learned implicit surface features and explicit analytical distance information.

The SDF provides smooth, globally-consistent distance and topology data that complements the point convolution features. Where the learned features capture surface detail from local neighborhoods, the SDF tells the network "how far am I from the surface, and which side am I on?"

Explore: Geometry Encoding →

From grid to query points

The geometry encoding lives on a regular 3D grid, but predictions need to be at arbitrary query points scattered through the volume (or on the surface). Two mechanisms bridge this gap:

Local geometry extraction constructs a computational stencil of neighboring points around each query location and extracts features from the global geometry representation at that local region. This is analogous to how finite volume methods operate on local stencils rather than the full domain.

Explore: Local Geometry Extraction →

Per-point geometric features (SDF value, scaled SDF, vectors to the nearest surface and to the geometry centroid) provide additional spatial context. These features give the network explicit knowledge of each query point's relationship to the car surface, independent of its absolute position in the domain.

Explore: Positional Features →

Solution prediction

The aggregation network combines the local geometry encoding with the per-point features and predicts solution vectors on each point in the computational stencil. These predictions are then averaged using an inverse-distance weighting (IDW) scheme to produce the final solution at the query point.

This stencil-based approach is what makes DoMINO "decomposable": the prediction at any point depends only on local information, so the model scales to arbitrary domain sizes without global constraints. It's directly analogous to how classical CFD methods solve on local stencils.

Importantly, the global geometry encoding is shared between surface and volume predictions, but the aggregation networks are separate. If query points are sampled on the surface, the network predicts surface fields; if sampled in the volume, it predicts volume fields.

Explore: Solution Prediction →

The output

DoMINO predicts two sets of fields:

Volume fields (at ~50K query points in the flow domain):

  • Pressure (p): positive at stagnation (front), negative at suction (roof/wake). Primary driver of aerodynamic drag.
  • Velocity (Ux, Uy, Uz): three components of the flow velocity vector. Ux dominates (streamwise direction); reversed in wake recirculation zones.
  • Turbulent viscosity (vt): high in boundary layers and wake. Indicates turbulent mixing intensity.

Surface fields (at points on the car body):

  • Pressure (p): surface pressure distribution, critical for drag and lift prediction.
  • Wall shear stress (tx, ty, tz): three components of the viscous stress at the wall. Essential for skin friction drag and flow separation analysis.

Together these constitute a full RANS solution on both the surface and in the volume.

Explore: Volume Output →

The dataset

The explorer uses the DrivAerML dataset: 500 geometrically morphed variants of the DrivAer Notchback car with full RANS CFD solutions. Each sample contains ~150 million volume mesh elements and ~10 million surface elements, with drag forces ranging from 300N to 600N across the variants. Training uses 90% of the data; the remaining 10% is held for testing, including out-of-distribution cases at the drag extremes.

The point cloud and 3D model shown in the explorer are from the baseline DrivAer configuration.

Open Full Explorer →

/ FAQ

What is DoMINO?

DoMINO (Decomposable Multi-scale Iterative Neural Operator) is a point cloud-based neural operator by NVIDIA Research that predicts CFD-quality flow fields directly from surface geometry. Given a car's STL mesh, it outputs pressure, velocity, turbulent viscosity on the volume and pressure plus wall shear stress on the surface, replacing hours of traditional RANS simulation with real-time inference.

What does DoMINO predict?

DoMINO predicts both volume and surface fields. Volume predictions include pressure, velocity (3 components), and turbulent viscosity at arbitrary query points in the flow domain. Surface predictions include pressure and wall shear stress (3 components) at points on the car body. The same global geometry encoding is shared between both, with separate aggregation networks for surface vs. volume decoding.

What is the DrivAer model used in this demo?

DrivAer is an open-source, realistic automotive reference geometry developed by TU Munich. NVIDIA's DrivAerML dataset contains 500 geometrically morphed DrivAer Notchback variants with corresponding RANS CFD simulations (each with ~150M volume elements and ~10M surface elements). The dataset spans drag forces from 300N to 600N. DoMINO trains on 90% and tests on 10%, including out-of-distribution cases at the extremes.

What are ball queries and why does DoMINO use them?

Ball queries are spatial neighborhood searches: for each point on a regular 3D grid, find all surface vertices within a given radius. DoMINO uses multiple scales of ball queries to capture geometry at different levels of detail, from fine panel edges to the overall car silhouette. This multi-scale approach is key to learning both local surface features and long-range geometric dependencies.

What makes DoMINO 'decomposable'?

The 'decomposable' in DoMINO refers to its local stencil-based prediction strategy, analogous to finite volume methods in classical CFD. Rather than predicting the entire flow field globally, DoMINO constructs a local computational stencil of neighboring points around each query point and predicts within that stencil. This decomposition means the model can scale to arbitrary domain sizes without being constrained by a fixed global grid.

Is DoMINO limited to automotive aerodynamics?

No. DoMINO operates on raw point clouds and signed distance fields, which are geometry-independent representations. The architecture is mesh-independent and has been designed to generalize across different geometries. The DrivAerML automotive dataset is used for benchmarking, but the approach extends to other external aerodynamics problems.

What is an SDF and why does DoMINO need one?

A signed distance field (SDF) is a scalar function that returns the distance from any point in space to the nearest surface, with a sign indicating inside vs. outside. DoMINO computes the SDF and its gradient on the computational domain grid and appends them to the learned geometry features. This provides explicit distance and topology information that complements the features learned through point convolution kernels.