choderalab / feflow

Recipes and protocols for molecular free energy calculations using the openmmtools/perses and Open Free Energy toolkits
MIT License
11 stars 1 forks source link

Add `extends` support to the `NonEquilibriumCyclingProtocol` #2

Open dotsdl opened 10 months ago

dotsdl commented 10 months ago

Using the NonEquilibriumCyclingProtocol, we want to be able perform chains of continuations where the ProtocolDAGResult of a single ProtocolDAG execution can be used as the starting point for another ProtocolDAG by way of NonEquilibriumCyclingProtocol.create(..., extends=<protocoldagresult>).

This would enable more adaptive sampling of AlchemicalNetworks using engines such as exorcist or alchemiscale, where in addition to just running more independent runs of the Transformation, runs could also be extended at-will. In this way, it provides an orthogonal approach to increased sampling to what is currently possible. It may also make it easier to use pre-emptible compute resources with less waste, allowing for shorter individual ProtocolDAG executions when many can be chained together efficiently.