Some changes to the QM/MM kernel to improve preserving precision when using single-precision