We are interested in using i-Pi to perform classical-to-quantum free energy corrections. This looks like it would be quite easy using the scaled-coordinate (SC) method described by Habershon and Manolopoulos (
https://doi.org/10.1063/1.3666011). My understanding of the approach is: request the energy and gradients from the driver program using a lambda-dependent average between the bead and centroid coordinates (eq. 15), rather than sending the bead coordinates directly. On return, calculate the thermodynamic derivative (eq. 16) from the gradients. One would repeat simulations at different lambdas and integrate the curve to get a free energy (eq. 11).
Looking through the documentation, I don't believe i-Pi already has this capability. It made me wonder if there was a better approach that was already implemented? If not, I can try to implement the SC method myself, but I'm not very familiar with the layers of abstraction in the code, so I doubt it would be good enough to make a pull request.