WorkflowGraph

class openff.evaluator.workflow.WorkflowGraph[source]

A hierarchical structure for storing and submitting the workflows which will estimate a set of physical properties..

__init__()[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__()

Initialize self.

add_workflows(*workflows)

Insert a set of workflows into the workflow graph.

execute([root_directory, …])

Executes the workflow graph.

Attributes

protocols

The protocols in this graph.

root_protocols

The ids of the protocols in the group which do not take input from the other grouped protocols.

property protocols

The protocols in this graph.

Type

dict of str and Protocol

property root_protocols

The ids of the protocols in the group which do not take input from the other grouped protocols.

Type

list of str

add_workflows(*workflows)[source]

Insert a set of workflows into the workflow graph.

Parameters

workflow (Workflow) – The workflow to insert.

execute(root_directory='', calculation_backend=None, compute_resources=None)[source]

Executes the workflow graph.

Parameters
  • root_directory (str) – The directory to execute the graph in.

  • calculation_backend (CalculationBackend, optional.) – The backend to execute the graph on. This parameter is mutually exclusive with compute_resources.

  • compute_resources (CalculationBackend, optional.) – The compute resources to run using. If None and no calculation_backend is specified, the workflow will be executed on a single CPU thread. This parameter is mutually exclusive with calculation_backend.

Returns

The results of executing the graph. If a calculation_backend is specified, these results will be wrapped in a Future.

Return type

list of WorkflowResult or list of Future of WorkflowResult