Turn analysis reduction algorithm into a Mantid algorithm.
Required changing several files since Mantid algorithms are limited to the public methods defined by setProperty().
This means that whilst before the ncp profiles could be passed in as a list of Python objects, in Mantid algorithms they need to be passed in as a TableWorkspace.
I had to change the calculation of H ratios to work from this TableWorkspace.
I also introduced a new library called dill which has the only purpose of passing Scipy constraints (a tuple of dictionaries containing lambdas) into a byte string so it can be passed to the Mantid algorithm as a string.
Added a few unit tests for the new functions I introduced.
To test:
Code review and check that analysis system and unit tests passed.
Description of work:
Turn analysis reduction algorithm into a Mantid algorithm. Required changing several files since Mantid algorithms are limited to the public methods defined by
setProperty()
. This means that whilst before the ncp profiles could be passed in as a list of Python objects, in Mantid algorithms they need to be passed in as aTableWorkspace
. I had to change the calculation of H ratios to work from thisTableWorkspace
.I also introduced a new library called
dill
which has the only purpose of passing Scipy constraints (a tuple of dictionaries containing lambdas) into a byte string so it can be passed to the Mantid algorithm as a string.Added a few unit tests for the new functions I introduced.
To test: Code review and check that analysis system and unit tests passed.
Fixes #129 .