Both of these methods perform a geometry optimization of the input conformer ahead of charging the molecules, though in the OpenEye case this is a restrained geometry optimization. We used the rdkit v2024.03.2 conformer generator starting from a random seed to generate 50 conformers for each molecule. We charged each molecule 50 times, one for each conformer, with each partial charge generation method using open -toolkit v0.14.3, AmberTools v23.6, openeye-toolkits v2023.2.3, and stored the partial charges sets for each conformer for later analysis. For AmberTools AM1-BCC charges, we used the default SQM settings for geometry optimization unless otherwise stated.