windsorml#

WindsorML dataset source for mesh pipelines.

Reads the WindsorML dataset — 355 geometric variants of the Windsor body for automotive aerodynamics (Volcano Platforms GPU-native solver, ~280-300 M cells).

The dataset provides two mesh types per run:

  • boundary — surface mesh with flow fields (VTU, ~406 MB each)

  • volume — volumetric field data (VTU, ~21 GB each)

Note

WindsorML does not provide slice plane meshes (only images).

File discovery and caching are handled internally using fsspec.

Attributes#

Classes#

WindsorMLSource

Read meshes from the WindsorML dataset on HuggingFace Hub.

Module Contents#

class physicsnemo_curator.domains.mesh.sources.windsorml.WindsorMLSource(
mesh_type: MeshType = 'boundary',
url: str = _WINDSORML_HF_URL,
storage_options: dict[str, object] | None = None,
cache_storage: str | None = None,
manifold_dim: int | Literal['auto'] = 'auto',
point_source: Literal['vertices', 'cell_centroids'] = 'vertices',
warn_on_lost_data: bool = True,
)#

Bases: physicsnemo_curator.core.base.Source[physicsnemo.mesh.Mesh]

Read meshes from the WindsorML dataset on HuggingFace Hub.

Each index maps to one simulation run. The mesh_type parameter selects which mesh to load for each run:

  • "boundary" — surface mesh (VTU) with flow fields

  • "volume" — volumetric mesh (VTU)

Note

WindsorML runs are indexed starting from 0 (run_0 through run_354). Slice plane meshes are not available in this dataset (only images).

Parameters:
  • mesh_type ({"boundary", "volume"}) – Which mesh to read from each run directory.

  • url (str) – Base HuggingFace Hub URL. Override only for testing.

  • storage_options (dict[str, object] | None) – Extra fsspec keyword arguments (e.g. {"token": "hf_..."}).

  • cache_storage (str | None) – Local cache directory. None → temporary directory.

  • manifold_dim (int or {"auto"}) – Target manifold dimension for from_pyvista conversion.

  • point_source ({"vertices", "cell_centroids"}) – Point source mode for from_pyvista conversion.

  • warn_on_lost_data (bool) – Warn when data arrays are discarded during conversion.

Examples

>>> source = WindsorMLSource(mesh_type="boundary")
>>> len(source)
355
>>> mesh = next(source[0])

Note

classmethod params() list[physicsnemo_curator.core.base.Param]#

Return parameter descriptors for the WindsorML source.

Returns:

Parameter list for CLI configuration.

Return type:

list[Param]

description: ClassVar[str] = 'WindsorML dataset 355 Windsor body variants with GPU-native CFD'#
name: ClassVar[str] = 'WindsorML'#
physicsnemo_curator.domains.mesh.sources.windsorml.MeshType#