Note
This page was generated from user/LHD_PFCs.ipynb.
Plasma Facing Components#
Cherab-LHD provides Plasma Facing Components (PFC) meshes which limitate field of views of observers. The PFCs are defined by a set of raysect mesh files (.rsm), which are stored in the remote repository.
When you load PFC meshes into your scenegraph,
you can use the following function: load_pfc_mesh.
Here is an example of the use of the function:
[ ]:
from raysect.optical import World
from cherab.lhd.machine import load_pfc_mesh
world = World()
meshes = load_pfc_mesh(world, reflection=True)
And loaded PFCs are shown as follows.
[2]:
from rich import print
print(meshes)
{ 'Vacuum Vessel': [<raysect.primitive.mesh.mesh.Mesh object at 0x12d82da80>], 'First Wall': [ <raysect.primitive.mesh.mesh.Mesh object at 0x12d82d300>, <raysect.primitive.mesh.mesh.Mesh object at 0x14448c040>, <raysect.primitive.mesh.mesh.Mesh object at 0x14448c2c0>, <raysect.primitive.mesh.mesh.Mesh object at 0x14448c540>, <raysect.primitive.mesh.mesh.Mesh object at 0x14448c7c0> ], 'Divertor': [ <raysect.primitive.mesh.mesh.Mesh object at 0x14448ca40>, <raysect.primitive.mesh.mesh.Mesh object at 0x147d9fe20>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de80e0>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de8360>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de85e0>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de8860>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de8ae0>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de8d60>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de8fe0>, <raysect.primitive.mesh.mesh.Mesh object at 0x147de9260> ] }
If you want to visualize what PFCs are loaded, you can use visualize_pfc_meshes function.
[3]:
from cherab.lhd.machine.pfc_mesh import visualize_pfc_meshes
# Show only Vacuum Vessel
meshes.pop("Divertor")
meshes.pop("First Wall")
fig = visualize_pfc_meshes(meshes)
fig.show(renderer="jpg")