To gauge the computational cost of inserting solvent molecules via a k-d tree, we ran a benchmark in which water molecules were randomly placed inside cubic boxes, ensuring a target density of 998 kg/m 3 (close to the experimental density of liquid water). Specifically, a single water molecule was treated both as the solute (to define the initial coordinates) and the solvent (to be inserted). The box size was gradually increased, controlling the free volume into which solvent molecules were packed. This was done by specifying linearly spaced padding values from 1 to 4 Å. The two insertion strategies were tested: Rebuilding the KDTree every time a new molecule was placed and with dynamic batch insertion, where molecules are inserted in groups (batches) before the k-d tree is rebuilt, thereby amortizing the tree-building overhead over many placements. The total run time for each packing scheme was recorded, along with the resulting number of molecules inserted (determined by the target density and the final box volume).