Ticket #1421 (closed: fixed)

Opened 10 years ago

Last modified 5 years ago

Make SANS reduction python scripts more pythonic

Reported by: Mathieu Doucet Owned by: Mathieu Doucet
Priority: major Milestone: Iteration 25
Component: Python Keywords:
Cc: Blocked By:
Blocking: Tester: Martyn Gigg

Description

In order to make the SANS reduction code more facility- and instrument-independent, we will need to refactor the current python code to make it more modular. A good way to start would be to refactor the current code to be more pythonic.

Change History

comment:1 Changed 10 years ago by Mathieu Doucet

(In [5343]) Attempt to make the SANS reduction code more pythonic. The results of the execution of example_reduction.py was checked to be the same before and after refactoring. Test to come. Re #1421.

comment:2 Changed 10 years ago by Mathieu Doucet

(In [5344]) Forgot one line to ensure backward compatibility. Re #1421

comment:3 Changed 10 years ago by Mathieu Doucet

(In [5345]) Fixed another problem. Re #1421

comment:4 Changed 10 years ago by Mathieu Doucet

(In [5346]) Minor change to accommodate python reduction script refactor. Re #1421

comment:5 Changed 10 years ago by Mathieu Doucet

(In [5371]) More SANSReduction refactoring + added python unit tests to help refactoring effort. Re #1421.

comment:6 Changed 10 years ago by Mathieu Doucet

(In [5385]) Access data directly. Re #1421.

comment:7 Changed 10 years ago by Mathieu Doucet

  • Status changed from new to accepted
  • Owner set to Mathieu Doucet

comment:8 Changed 10 years ago by Mathieu Doucet

(In [5413]) PythonAPI/scripts: First attempt to write a prototype for a general reducer in python, along with actual reduction steps for SANS. Re #1421.

comment:9 Changed 10 years ago by Mathieu Doucet

(In [5414]) PythonAPI/scripts: Added documentation. Re #1421.

comment:10 Changed 10 years ago by Mathieu Doucet

(In [5437]) Extended SANSReducer command set. Re #1421.

comment:11 Changed 10 years ago by Mathieu Doucet

(In [5497]) Moved HFIR SANS definition to SANSInsts, using XML instrument parameters. Re #1421.

comment:12 Changed 10 years ago by Mathieu Doucet

(In [5503]) Added reduction steps and options. Re #1421.

comment:13 Changed 10 years ago by Mathieu Doucet

(In [5505]) Fixed dumb error... Re #1421.

comment:14 Changed 10 years ago by Mathieu Doucet

(In [5507]) Moved all reduction tests to unit tests using the new design. HFIRSANSReduction now only kept for reference while we complete the work. Re #1421.

comment:15 Changed 10 years ago by Mathieu Doucet

(In [5508]) Added background subtraction. Re #1421.

comment:16 Changed 10 years ago by Martyn Gigg

(In [5529]) Fix file extensions in facilities test. Re #1398 Fix parameter map size test due to new BioSANS parameter file. Re #1421

comment:17 Changed 10 years ago by Steve Williams

(In [5531]) Changes to the SANS unit tests to make them easier to run on my computer re #1421

comment:18 Changed 10 years ago by Mathieu Doucet

(In [5554]) Add option to using a different loading step to accommodate other instruments Re #1421

comment:19 Changed 10 years ago by Mathieu Doucet

(In [5575]) Move the detector to its Z position as part of the load to streamline the reduction steps. Re #1421.

comment:20 Changed 10 years ago by Mathieu Doucet

(In [5585]) Fixed tests that failed because of latest changes to LoadSpice2D. Re #1421.

comment:21 Changed 10 years ago by Steve Williams

(In [5595]) Added some code to Normalize to make it compatible with ISIS and added some ISIS compatibility comments re #1421

comment:22 Changed 10 years ago by Mathieu Doucet

(In [5597]) Made a few changes to make code more compatible between ISIS and HFIR. Re #1421.

comment:23 Changed 10 years ago by Mathieu Doucet

(In [5599]) Start to move HFIR-specific code into separate modules. Re #1421.

comment:24 Changed 10 years ago by Mathieu Doucet

(In [5708]) Added functionality to deal with background transmission separately. Re #1421

comment:25 Changed 10 years ago by Mathieu Doucet

(In [5833]) Minor clean up. Re #1421

comment:26 Changed 10 years ago by Mathieu Doucet

(In [5868]) Correct minor bug from last commit. Re #1421

comment:27 Changed 10 years ago by Mathieu Doucet

  • Status changed from accepted to verify
  • Component set to Mantid
  • Resolution set to fixed

I'm closing this ticket since its main requirement has been addressed. We now have a working SANS reduction framework in python. All future modifications will have their own specific ticket.

comment:28 Changed 10 years ago by Mathieu Doucet

  • Component changed from Mantid to Python API

comment:29 Changed 10 years ago by Martyn Gigg

  • Status changed from verify to verifying
  • Tester set to Martyn Gigg

comment:30 Changed 10 years ago by Martyn Gigg

  • Status changed from verifying to closed

Confirmed that the new modules exist. They are used in the GUIs and they are indeed far a better than the original framework!

comment:31 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 2268

Note: See TracTickets for help on using tickets.