openradioss#

OpenRadioss VTK data source for drop test mesh pipelines.

Reads per-timestep VTK files produced by OpenRadioss anim_to_vtk converter and yields Mesh objects for use in curator pipelines.

Each source index maps to one simulation run directory containing multiple VTK files (one per timestep). The resulting mesh carries:

  • points(N, 3) reference coordinates at t=0

  • cells(E, nodes_per_cell) element connectivity

  • point_datathickness (N,) (zeros for solid elements) plus displacement_t{idx:03d} (N, 3) for each timestep

  • cell_data (optional) — stress_vm_t{idx:03d} (E,) and other per-element fields for each timestep

  • global_datanum_timesteps scalar

Examples

>>> source = OpenRadiossSource(input_dir="/data/drop_test_runs")
>>> len(source)
50
>>> mesh = next(source[0])

Attributes#

Classes#

OpenRadiossSource

Read drop test simulation meshes from OpenRadioss VTK files.

Module Contents#

class physicsnemo_curator.domains.mesh.sources.openradioss.OpenRadiossSource(
input_dir: str,
vtk_glob: str = '*.vtk',
read_stress: bool = False,
read_velocity: bool = False,
read_acceleration: bool = False,
read_temperature: bool = False,
cell_type: str = 'tet',
)#

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

Read drop test simulation meshes from OpenRadioss VTK files.

Scans input_dir for subdirectories containing VTK files matching vtk_glob. Each subdirectory is one simulation run. The source reads node coordinates from each timestep file, computes displacements relative to t=0, and optionally extracts stress/strain fields.

Parameters:
  • input_dir (str) – Root directory containing run subdirectories, each with VTK files.

  • vtk_glob (str) – Glob pattern for VTK files within each run directory. Default is "*.vtk" which matches all VTK files.

  • read_stress (bool) – If True, read nodal stress from point data (GPS_SIGXX, etc.) and compute Von Mises stress. Default is False.

  • read_velocity (bool) – If True, read velocity fields from point data. Default is False.

  • read_acceleration (bool) – If True, read acceleration fields from point data. Default is False.

  • read_temperature (bool) – If True, read temperature fields from point data. Default is False.

Examples

>>> source = OpenRadiossSource(
...     input_dir="/data/drop_test_runs",
...     vtk_glob="Cell_Phone_Drop*.vtk",
...     read_stress=True,
... )
>>> len(source)
50

Initialize the OpenRadioss source.

Parameters:
  • input_dir (str) – Root directory containing run subdirectories.

  • vtk_glob (str) – Glob pattern for VTK files.

  • read_stress (bool) – Read von Mises stress from element data.

  • read_velocity (bool) – Read velocity fields from point data.

  • read_acceleration (bool) – Read acceleration fields from point data.

  • read_temperature (bool) – Read temperature fields from point data.

  • cell_type (str) – VTK cell type to extract: ‘tet’, ‘tri’, ‘all’, or ‘mixed’.

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

Return parameter descriptors for the OpenRadioss source.

Returns:

Parameter list for CLI configuration.

Return type:

list[Param]

run_id(index: int) str#

Return the run identifier for a given index.

Parameters:

index (int) – Source index.

Returns:

Run directory name.

Return type:

str

description: ClassVar[str] = 'OpenRadioss per-timestep VTK reader --- solid/shell meshes with multi-timestep displacement and...#

Short description shown in the interactive CLI.

name: ClassVar[str] = 'OpenRadioss VTK'#

Human-readable display name for the interactive CLI.

physicsnemo_curator.domains.mesh.sources.openradioss.logger#