Workflow example#
Here is an example of a typical ewokstomo workflow:

The diagram shows a minimal “slice-from-NXtomo” chain:
External inputs (blue) are dashed into the tasks: the NXtomo file (
nx_path) feeds both tasks, whileconfig_dictandslice_indexgo directly toReconstructSlice.ReduceDarkFlatreads the NXtomo file and saves reduced dark and flat references (<scan>_darks.hdf5/<scan>_flats.hdf5) underreferences/.ReconstructSliceconsumes the NXtomo file plus the reduced darks/flats and reconstructs a single slice (configurable index) intoslices/<scan>_*under the scan root (see tasks for the exact naming pattern).
Outputs:
Reduced reference files in
references/.A reconstructed slice file in
slices/, along with the Nabu configuration and processing options returned by the task.
Each node has a set of parameters that you can find in tasks.
An ewoks workflow can be represented as a json file:
{
"directed": true,
"multigraph": false,
"graph": {
"id": "reconstruct_from_nx",
"label": "Ewoks workflow 'reconstruct_from_nx'",
"schema_version": "1.1"
},
"nodes": [
{
"id": "reduce_task",
"task_type": "class",
"task_identifier": "ewokstomo.tasks.reducedarkflat.ReduceDarkFlat"
},
{
"id": "slice_reconstruction_task",
"task_type": "class",
"task_identifier": "ewokstomo.tasks.reconstruct_slice.ReconstructSlice"
}
],
"links": [
{
"source": "reduce_task",
"target": "slice_reconstruction_task",
"data_mapping": []
}
]
}