cherab.imas.wall.load_wall_mesh¶

cherab.imas.wall.load_wall_mesh(*args, time: float = 0, occurrence: int = 0, desc_ggd_index: int = 0, subsets: list[str] | None = None, materials: dict[str, Material] | None = None, time_threshold: float = inf, parent: _NodeBase | None = None, **kwargs) dict[str, Mesh]Source¶

Load machine wall components from IMAS wall IDS and Create Raysect mesh primitives.

Parameters:
*args¶

Arguments passed to the DBEntry constructor.

time: float = 0¶

Time for the wall, by default 0.

occurrence: int = 0¶

Occurrence index of the wall IDS, by default 0.

desc_ggd_index: int = 0¶

Index of description_ggd, by default 0.

subsets: list[str] | None = None¶

List of names of specific ggd subsets to load, by default None (loads all subsets).

materials: dict[str, Material] | None = None¶

Optional dictionary with Raysect materials for each wall component, by default None. Use component names as keys. The components are split by their grid subsets and for each grid subset by materials. All elements of the grid subset that share the same material are combined into a single component. The component names are assigns as follows: "{grid_name}.{subset_name}.{material_name}" E.g.: "TokamakWall.full_main_chamber_wall.Be".

time_threshold: float = inf¶

Maximum allowed difference between the requested time and the nearest available time, by default numpy.inf.

parent: _NodeBase | None = None¶

Parent node in the Raysect scene graph, by default None. Normally, World instance.

**kwargs¶

Keyword arguments passed to the DBEntry constructor.

Returns:

Dictionary with the Raysect Mesh instances.

Return type:

dict[str, Mesh]

Examples

>>> from raysect.optical import World
>>> world = World()
>>> meshes = load_wall_mesh(
...     "imas:hdf5?path=/work/imas/shared/imasdb/ITER_MD/3/116100/1001/", "r", parent=world
... )
>>> meshes
{'FullTokamak.none.none': <raysect.primitive.mesh.mesh.Mesh at 0x1766322a0>}