Skip to content
Projects

tree_d_3d.kernels.quadtree_moments.quadtree_moments_metal

The Metal version (Apple-silicon GPU, float32) of the quadtree_moments kernel.

quadtree_moments_pyccel.py next to this file is the CPU version with the same arguments. One thread per node, each summing its own particles; only the first node_count rows of the outputs are written. See :mod:tree_d_3d.kernels._metal.

Functions

NameDescription
quadtree_momentsSigned moments of every node about its centre; node_s is xx, xy, yy.

quadtree_momentsfunction#

def quadtree_moments(pos: Array, charge: Array, perm: Array, node_count: int, node_center: Array, node_start: Array, node_end: Array, node_q: Array, node_qabs: Array, node_p: Array, node_s: Array) -> None

Signed moments of every node about its centre; node_s is xx, xy, yy.