Hi,
Thanks for getting in touch and for the kind words about Sire. Yes, you are right that Sire uses OpenMM for GPU acceleration of the molecular dynamics free energy calculations (e.g. via somd, somd-freenrg etc).
I agree that custom forces are a great feature in OpenMM, and it would be nice to be able to access them from within Sire. Unfortunately, as things stand, that isn't really possible. Currently the OpenMM molecular system is built from the Sire system assuming that the Sire system is parameterised via a standard Amber-type forcefield. This happens in the C++ part of the code (in the OpenMM- functions in the SireMove source code folder, e.g. openmmfrenergydt.cpp -
https://github.com/michellab/Sire/blob/devel/corelib/src/libs/SireMove/openmmfrenergydt.cpp).
You could edit the source code directly to add in the custom forces you wanted, but I know that isn't ideal. There isn't a mechanism to load those custom forces from Python into the parameterised molecule and to then transfer them into OpenMM without hand-coding. If you want to hand-code this, then we are happy to point you in the right direction if that helps?
Best wishes,
Christopher
p.s. Sire forms the foundation of BioSimSpace (
https://biosimspace.org), which provides interfaces and drivers to run free energy calculations in a range of packages