Skip to content
Projects

tree_d_3d.kernels.quadtree_scatter.quadtree_scatter_metal

The Metal version (Apple-silicon GPU) of the quadtree_scatter kernel.

quadtree_scatter_pyccel.py next to this file is the CPU version with the same arguments. One thread per sorted slot, each writing its own target slot (the targets are a permutation); integer only, so exact. See :mod:tree_d_3d.kernels._metal.

Functions

NameDescription
quadtree_scatterMove every particle of a split node into its child, stably.

quadtree_scatterfunction#

def quadtree_scatter(perm: Array, slot_node: Array, quadrant: Array, below: Array, node_start: Array, node_child: Array, new_perm: Array, new_slot_node: Array) -> None

Move every particle of a split node into its child, stably.