pyiron_workflow package
Subpackages
- pyiron_workflow.executors package
- pyiron_workflow.mixin package
- pyiron_workflow.nodes package
- Submodules
- pyiron_workflow.nodes.composite module
- pyiron_workflow.nodes.for_loop module
- pyiron_workflow.nodes.function module
- pyiron_workflow.nodes.macro module
- pyiron_workflow.nodes.multiple_distpatch module
- pyiron_workflow.nodes.standard module
AbsoluteAddAndAppendToListBoolBytesChangeDirectoryContainsDirDivideEqualsFloatFloorDivideGetAttrGetItemGreaterThanGreaterThanEqualsHashIfIntInvertLengthLessThanLessThanEqualsMatrixMultiplyModuloMultiplyNegativeNotEqualsOrPositivePowerPureCallRandomFloatRightMultiplyRoundSetAttrSleepSliceStringSubtractUserInputXOr
- pyiron_workflow.nodes.static_io module
- pyiron_workflow.nodes.transform module
- pyiron_workflow.nodes.while_loop module
- Module contents
- Submodules
Submodules
- pyiron_workflow.api module
- pyiron_workflow.channels module
AccumulatingInputSignalBadCallbackErrorCallbackChannelChannelConnectionErrorChannelErrorDataChannelDataChannel.valueDataChannel.ownerDataChannel.defaultDataChannel.type_hintDataChannel.strict_hintsDataChannel.value_receiverDataChannel.activate_strict_hints()DataChannel.deactivate_strict_hints()DataChannel.display_state()DataChannel.has_ontologically_valid_connection()DataChannel.readyDataChannel.valueDataChannel.value_receiver
FlavorChannelInputChannelInputDataInputLockedErrorInputSignalInvalidReceiverErrorOutputChannelOutputDataOutputSignalSignalChannelTooManyConnectionsError
- pyiron_workflow.create module
- pyiron_workflow.data module
- pyiron_workflow.draw module
- pyiron_workflow.find module
- pyiron_workflow.identifier module
- pyiron_workflow.io module
- pyiron_workflow.knowledge module
- pyiron_workflow.logging module
- pyiron_workflow.node module
AmbiguousOutputErrorConnectionCopyErrorNodeNode.failedNode.futureNode.labelNode.parentNode.recoveryNode.runningNode.checkpointNode.use_cacheNode.activate_strict_hints()Node.cache_hitNode.channelNode.clear_cache()Node.colorNode.connectedNode.data_input_locked()Node.deactivate_strict_hints()Node.delete_storage()Node.disconnect()Node.display_state()Node.draw()Node.emit()Node.emitting_channelsNode.execute()Node.fully_connectedNode.graph_pathNode.graph_rootNode.has_saved_content()Node.import_readiness_reportNode.import_readyNode.inputsNode.load()Node.on_run()Node.outputsNode.pull()Node.push()Node.readyNode.report_import_readiness()Node.run()Node.run_data_tree()Node.save()Node.save_checkpoint()Node.set_input_values()Node.signalsNode.use_cache
ValueCopyErrorWaitingForFutureError
- pyiron_workflow.output_parser module
- pyiron_workflow.overloading module
- pyiron_workflow.storage module
- pyiron_workflow.suggest module
- pyiron_workflow.topology module
- pyiron_workflow.type_hinting module
- pyiron_workflow.workflow module
Module contents
pyiron_workflow is a python framework for constructing computational workflows
in a graph-based format.
The intent of such a framework is to improve the reliability and shareability of
computational workflows, as well as providing supporting infrastructure for the
storage and retrieval of data, and executing computations on remote resources (with a
special emphasis on HPC environments common in academic research).
It is a key goal that writing such workflows should be as easy as possible, and simple
cases should be _almost_ as simple as writing and running plain python functions.
Key features:
Single point of import
Easy “nodeification” of regular python code
Macro nodes, so complex workflows can be built by composition
(Optional) type checking for data connections
(Optional) remote execution of individual nodes
- Both acyclic (execution flow is automated) and cyclic (execution flow must be
specified) graphs allowed
Easy extensibility by collecting nodes together in a python module for sharing/reusing
- Integration with
semantikonfor ontological hinting of data channels to provide guided workflow design
- Integration with