- class openfe.ProtocolDAGResult(*, protocol_units: list[ProtocolUnit], protocol_unit_results: list[ProtocolUnitResult], transformation_key: GufeKey | None, extends_key: GufeKey | None = None, name: str | None = None)#
Result for a single execution of an entire
ProtocolDAG.There may be many of these for a given Transformation. Data elements from these objects are combined by Protocol.gather into a ProtocolResult.
- property result_graph: DiGraph#
DAG of
ProtocolUnitResultnodes with edges denoting dependencies.Each edge is directed from a task towards its dependencies; for example, an edge between a production run and its equilibration would point towards the equilibration unit.
- property protocol_unit_results: list[ProtocolUnitResult]#
ProtocolUnitResults for each ProtocolUnit used to compute this object.
Results are given in DAG-dependency order. In this order, tasks are always listed after their dependencies.
- property protocol_unit_failures: list[ProtocolUnitFailure]#
A list of all failed
ProtocolUnits.Note
These are returned in DAG order, with tasks listed after their dependencies.
- property protocol_unit_successes: list[ProtocolUnitResult]#
A list of only successful ProtocolUnit results.
Note
These are returned in DAG order, with tasks listed after their dependencies.
- unit_to_result(protocol_unit: ProtocolUnit) ProtocolUnitResult#
Return the successful
ProtocolUnitResultfor a givenProtocolUnit, if it exists.- Returns:
success – the successful
ProtocolUnitResultfor thisProtocolUnit- Return type:
- Raises:
MissingUnitResultError: – if there are no results for that
ProtocolUnitProtocolUnitFailureError: – if there are only failures for that
ProtocolUnit
- unit_to_all_results(protocol_unit: ProtocolUnit) list[ProtocolUnitResult]#
Return all
ProtocolUnitResults (success and failure) for a givenProtocolUnit.- Returns:
results –
ProtocolUnitResults for the givenProtocolUnit- Return type:
- Raises:
MissingUnitResultError – if no
ProtocolUnitResults present for the givenProtocolUnit
- result_to_unit(protocol_unit_result: ProtocolUnitResult) ProtocolUnit#
Return the
ProtocolUnitcorresponding to the givenProtocolUnitResult.- Returns:
the
ProtocolUnitcorresponding to the givenProtocolUnitResult- Return type:
- Raises:
MissingUnitResultError – if the given
ProtocolUnitResultisn’t present
- ok() bool#
Check if this
ProtocolDAGResultsucceeded or failed.Returns
Trueif there is at least one successfulProtocolUnitResultfor eachProtocolUnit, andFalseotherwise.
- property terminal_protocol_unit_results: list[ProtocolUnitResult]#
Get
ProtocolUnitResults that terminate the DAG.- Returns:
All
ProtocolUnitResults which do not have aProtocolUnitResultthat follows on (depends) on them.- Return type: