choderalab / perses

Experiments with expanded ensembles to explore chemical space
http://perses.readthedocs.io
MIT License
178 stars 50 forks source link

Move non-alchemical REST system code to openmmtools #1187

Open zhang-ivy opened 1 year ago

zhang-ivy commented 1 year ago

I just wrote the following tutorial for creating non-alchemical REST systems using OpenMM: https://github.com/openmm/openmm-cookbook/pull/17

The tutorial was written based off of RESTCapableHybridTopologyFactory (builds a REST-capable alchemical system) and RESTTopologyFactory (builds a REST-capable vanilla, non-alchemical system), pulling in the best parts of both. I did not write the tutorial solely based on RESTTopologyFactory because there are some parts of it that could be improved upon (based on lessons learned from writing RESTCapableHybridTopologyFactory).

I think eventually we'd want to remove RESTTopologyFactory (and related objects: RESTState, RESTProtocol) from perses, and introduce the objects defined in the openmm cookbook tutorial to openmmtools. The rationale for removing the code from perses and introducing it to openmmtools is because the code does not involve any alchemy and it is general enough to not rely on anything else in perses.

Note that we'd also have to remove the tests for RESTTopologyFactory from perses and introduce modified versions of the tests in openmmtools.