Table of Contents
Name | Direction | Type | Default | Description |
---|---|---|---|---|
InputWorkspace | Input | Workspace | An input workspace that the python code will modify.The workspace will be in the python variable named ‘input’. | |
Code | Input | string | Python code (can be on multiple lines). | |
Filename | Input | string | A File containing a python script. Allowed values: [‘py’] | |
OutputWorkspace | Output | Workspace | An output workspace to be produced by the python code.The workspace will be in the python variable named ‘output’. |
Algorithm that will run a snippet of python code. This is meant to be used by LoadLiveData v1 to perform some processing.
The input & output workspaces can be accessed from the Python code using the variable names input and output respectively.
Within your code input is an actual reference to the input workspace, while output is a string of the output workspace name. You are expected to create the output workspace yourself.
Because of boilerplate code added to the python script being run, stack-traces for errors will be five (5) lines greater than where the error occured in the supplied python code.
Example - Summing all the counts in a workspace
ws = CreateSampleWorkspace("Histogram","Multiple Peaks")
script = """
logger.notice('Logging from within the python script!')
wsOut = Integration(input,OutputWorkspace=output)
wsOut = SumSpectra(wsOut)
"""
RunPythonScript(InputWorkspace=ws,Code=script,OutputWorkspace="wsOut")
wsOut = mtd["wsOut"]
print("The workspace contained a total of {:d} counts".format(int(wsOut.readY(0)[0])))
Output:
The workspace contained a total of 9599 counts
The same script could be saved to a file and specified using the Filename property instead of the Code property.
Categories: Algorithms | DataHandling\LiveData\Support
C++ source: RunPythonScript.cpp (last modified: 2016-10-26)
C++ header: RunPythonScript.h (last modified: 2016-08-31)