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")
../_images/user_LHD_PFCs_6_0.jpg