
Our Voronoi PMA is inspired by Schreiber's adaptive k-means clustering algorithm used in Computational Geometry [1]}.

In step 1, we state that the merging process is carried out cell by cell. However, the algorithm can be adjusted such that the first Voronoi cell \(\mathcal {V}_0\)  contains all particles from the simulation box and starts merging from there. The rest of the algorithm is kept intact. However, it is likely that the global merging approach violates the local charge conservation. In this case, one must take into account a correction scheme in order to compensate for the error caused by merging events. Which implementation is used depends strongly on the user preference or the code framework. We adhere to the cell-by-cell implementation as it is readily parallelised.

The distance measure used here (see eq. (REF ), step 4) can be considered as a Chebyshev-like distance, since eq. REF  is not guaranteed for every particle and phase space dimension. We have chosen this measure instead of a more obvious candidate, the Euclidean measure, for the following reasons:

The simplest implementation of the Euclidean measure requires the seeding of Voronoi centroids at the beginning of the algorithm. Moreover, the number of Voronoi centroids is kept constant throughout the algorithm. This limitation not only reduces greatly the flexibility of the algorithm but also cannot fit well to the dynamic situation of a physical problem [1]}. Conversely, the Chebyshev measure requires no seeding and suits perfectly the divide-and-sort scheme, which is applied here.

In [3]}, the author states a rule of thumb that for a given dataset of \(N\)  points, the number of centroids is set to \( k \approx \sqrt{N/2}\) . Again, the number of Voronoi centroids cannot be changed once the algorithm starts. As such, we do not follow this rule.

In order to use the Euclidean measure without a fixed number of centroids, we would have to solve the problem of an unknown number of clusters in a dataset. This can be done through the Bayesian information criterion [4]} or the removing centroids method [5]}. The former approach is difficult to implement, while the latter tends to be computationally intensive.


In the momentum space, the Voronoi PMA groups particles by taking into account both the direction and the magnitude of particles' momenta. Due to the difference in the direction, it might occur that the energy is lost after a merging event. The relative error in the total energy is observed in Fig. REF  for the two-stream instability and Fig. REF  for the magnetic shower below. These graphs show that the loss in energy per merging event is extremely small. However, the merging quality can be further improved by introducing a mechanism to conserve energy perfectly and directly. One can consider the Langdon-Marder corrector-scheme [6]}[7]}[8]} or follow the proposal to merge into two particles [9]}. We also make a side remark that the Langdon-Marder scheme becomes obligatory in case users want to implement the algorithm through the global merging approach.

