windtunnel#
WindTunnel-20k dataset source for mesh pipelines.
Reads the WindTunnel-20k dataset — 19,812 OpenFOAM simulations of 1,000 unique automobile-like objects in a virtual wind tunnel.
The dataset provides one VTK mesh type per simulation:
pressure_field — pressure field interpolated onto the input mesh (VTK, surface data with point-data scalars)
Simulations are organised by data split (train, validation,
test) and identified by unique alphanumeric simulation IDs.
File discovery and caching are handled internally using fsspec.
Attributes#
Classes#
Read pressure-field meshes from the WindTunnel-20k dataset. |
Module Contents#
- class physicsnemo_curator.domains.mesh.sources.windtunnel.WindTunnelSource(
- split: Split = 'train',
- url: str = _WINDTUNNEL_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 pressure-field meshes from the WindTunnel-20k dataset.
Each index maps to one simulation. The split parameter selects which data partition to use (
"train","validation","test", or"all"for the combined set).Only the
pressure_field_mesh.vtkfiles are supported (OBJ and PLY files in the dataset are not VTK-compatible).- Parameters:
split ({"train", "validation", "test", "all"}) – Data split to use.
"all"combines all three splits.url (str) – Base HuggingFace Hub URL. Override only for testing.
storage_options (dict[str, object] | None) – Extra
fsspeckeyword arguments.cache_storage (str | None) – Local cache directory.
None→ temporary directory.manifold_dim (int or {"auto"}) – Target manifold dimension for
from_pyvistaconversion.point_source ({"vertices", "cell_centroids"}) – Point source mode for
from_pyvistaconversion.warn_on_lost_data (bool) – Warn when data arrays are discarded during conversion.
Examples
>>> source = WindTunnelSource(split="train") >>> len(source) 13900 >>> mesh = next(source[0])
>>> source = WindTunnelSource(split="all") >>> len(source) 19812
Note
Dataset: inductiva/windtunnel-20k
License: CC-BY-4.0
- classmethod params() list[physicsnemo_curator.core.base.Param]#
Return parameter descriptors for the WindTunnel source.
- physicsnemo_curator.domains.mesh.sources.windtunnel.Split#