1. External Program

An external program can be included in a workflow. The user must specify the external executable to be run, as well as any arguments. In the screenshot below, an example with Python is shown. The executable is /usr/local/bin/python and the Python-script to be run is ~/hdf5example.py.

Data from a workflow can be exported to a file as part of running an external program. Add items in the table under Export to file and input slots will appear on the External Program box. Connect the desired data to an input slot and choose a file format and a file name. Three different file formats can be chosen for file export: CSV, column-based and HDF5.

External data can be imported into a workflow as part of running an external program. Add items in the table under Import from file and output slots will appear on the External Program box. This data will be imported as signals when the external program has finished running.

A typical application of an external program is when the user wants to run some specialized post processing using for instance MATLAB or Python.

In some cases one may want to specify certain environment variables to be used during the program execution. This can be done by filling out the Environment variables field. These are specified on the form =;=. Multiple paths in each value are separated by a colon character.

image

1.1. Reporting progress

The external process may report progress by writing the following to standard.out:


@STATUS Application specific string

This example is taken from RIFLEX DYNMOD:
pre. @STATUS Time domain simulation 1 1000