neso_fame.wall.find_external_points(outermost: FrozenCoordSet[SliceCoord], connections: MutableCoordMap[SliceCoord, FrozenCoordSet[SliceCoord]], wall: Sequence[WallSegment], in_tokamak_test: Callable[[SliceCoord, Sequence[WallSegment]], bool] | None = None) tuple[FrozenCoordSet[SliceCoord], FrozenCoordSet[SliceCoord]]

Find the points in a mesh outside the wall of a tokamak.

Parameters:
outermost: FrozenCoordSet[SliceCoord]

The set of points making up the external “skin” of the mesh, which might fall outside the wall.

connections: MutableCoordMap[SliceCoord, FrozenCoordSet[SliceCoord]]

A mapping between all points in the mesh and the points they share an edge with.

wall: Sequence[WallSegment]

The line segments making up the wall of the tokamak

in_tokamak_test: Callable[[SliceCoord, Sequence[WallSegment]], bool] | None = None

Routine to determine if a node falls inside the tokamak. Default is to check only at the node itself. Custom routines can be passed to, e.g., check at multiple points along a field line.

Returns:

A tuple of sets of points. The first element is all points falling outside the tokamak. The second is the outermost skin of points still inside the tokamak.


Last update: Sep 23, 2024