diff --git a/gufe/protocols/protocol.py b/gufe/protocols/protocol.py index 1ec6c6eb0..3c3f531d2 100644 --- a/gufe/protocols/protocol.py +++ b/gufe/protocols/protocol.py @@ -71,10 +71,26 @@ def data(self) -> dict[str, Any]: return self._data @abc.abstractmethod - def get_estimate(self) -> Quantity: ... + def get_estimate(self) -> Quantity: + """Return the best possible estimate of the free energy difference + given the preserved data. + + """ + ... @abc.abstractmethod - def get_uncertainty(self) -> Quantity: ... + def get_uncertainty(self) -> Quantity: + """Return the uncertainty in the estimate returned by :meth:`get_estimate`. + + """ + ... + + def get_convergence(self) -> Quantity: + """Return the uncertainty in the estimate as a function of increasing + `ProtocolDAGResult` inclusion. + + """ + raise NotImplementedError class Protocol(GufeTokenizable):