Ticket #10530 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

pre cut_sqw in mantid

Reported by: Owen Arnold Owned by: Owen Arnold
Priority: blocker Milestone: Release 3.3
Component: Framework Keywords:
Cc: Blocked By:
Blocking: #8160, #10693 Tester: Martyn Gigg

Description (last modified by Owen Arnold) (diff)

Changes required to the python framework to allow CutMD to be brought in. This is a separation of the high-risk changes from the low-risk ones. CutMD itself is a low risk changes.

Change History

comment:1 Changed 6 years ago by Owen Arnold

  • Status changed from new to assigned

comment:2 Changed 6 years ago by Owen Arnold

  • Status changed from assigned to inprogress

refs #10530. Start new algorithm.

Needed to expose a few more property types to get this started. All tested.

Changeset: 52acb587fd9481e076f59c63148528c56191e1b6

comment:3 Changed 6 years ago by Owen Arnold

refs #10530. Refactor and extend tests.

Changeset: 4e801c6d3a1c09b45ae663c507473bed7ac09350

comment:4 Changed 6 years ago by Owen Arnold

refs #10530. More TDD around these features.

Particular focus on projection inputs. Also started adding binning information.

Changeset: 2729b82e7cce69c567d6738d5a8ff989af665ad8

comment:5 Changed 6 years ago by Owen Arnold

refs #10530. Add extents calculation.

Changeset: 77a77b85cd6a75c106780ab5999e8a0cc592402c

comment:6 Changed 6 years ago by Owen Arnold

refs #10530. Checking basis transformations.

Changeset: 7dc05499e86382f3e6e806576e40c2f1be3884ef

comment:7 Changed 6 years ago by Owen Arnold

refs #10530. Add more tests.

Also needed to expose columnnames properly via ITableWorskpace

Changeset: 6e9019abbaaddd22748165c73dc5ab6a9186c538

comment:8 Changed 6 years ago by Owen Arnold

refs #10530. Add NoPix option.

Changeset: a1c00b15f82fd6cf40f00036d3d58278a4228c53

comment:9 Changed 6 years ago by Owen Arnold

refs #10530. Add Axes check.

Changeset: b31bf4d3fc098d75256fcbf75791e691929703f2

comment:10 Changed 6 years ago by Owen Arnold

refs #10530. More checks and tests.

Changeset: fe90ba7f90bba513d513b89724eb00d4850683b9

comment:11 Changed 6 years ago by Owen Arnold

refs #10530. Use binning boundaries as extents.

Use binning boundaries as extents if they define inner limit. Otherwise the original dimension boundaries are used as extents. In either case, the extents need to be transformed into the new basis.

Changeset: b63fca0cebded4758a22105c5acb5beaf944d832

comment:12 Changed 6 years ago by Owen Arnold

refs #10530. Fix extents calculation.

The tests are right, but the implementation is wrong. We should calculate all extents in the new basis first, then figure out the most conservative of those to use for the actual extents used in BinMD/SliceMD.

Changeset: 0b8267132126a72948bcc9b5a6582bc800f7e852

comment:13 Changed 6 years ago by Owen Arnold

refs #10530. Update according to Andrei's binning observations.

Changeset: 0056ae56bb79d781c161ddfa8f72a95d1f22a960

comment:14 Changed 6 years ago by Owen Arnold

refs #10530. Extents from binning only. Andrei's input.

Changeset: 3a328216a1f7d0a6cd0ceddb97f4d94153e71738

comment:15 Changed 6 years ago by Owen Arnold

refs #10530. Truncate extents. Andrei's suggestion.

Changeset: 058e8115c2cdad16b4084bfb8d87d770dc10a2b5

comment:16 Changed 6 years ago by Owen Arnold

refs #10530. Use Enums.

Changeset: b46f85536493cb4ebc6da65da19739b05d7407d5

comment:17 Changed 6 years ago by Owen Arnold

refs #10530. Calculate new extents before calculating bins.

Changeset: 5333fd599a9dbd85bddde0b6a9f1eaacaa383587

comment:18 Changed 6 years ago by Owen Arnold

refs #10530. Add w_matrix to outgoing workspace.

Changeset: df6eb0b9d0c786b3d2be442501305f8773920235

comment:19 Changed 6 years ago by Owen Arnold

refs #10530. Apply scaling.

This wan't right first time round.

Changeset: 9295c92b012f5211bb0ec523cabcf0526f623e92

comment:20 Changed 6 years ago by Owen Arnold

refs #10530. Fix broken test.

Changeset: a192e69d70d9e37be48f0ca885dccdab1ea8973d

comment:21 Changed 6 years ago by Owen Arnold

refs #10530. Fix for rhel6. numpy 1.3

Changeset: 1cc17a96f9dde0c25db5d2f61ac680fa42f81c4b

comment:22 Changed 6 years ago by Owen Arnold

refs #10530. Use child progress reporting.

Changeset: 687da6236e6c163c0cab40302fcc0feff3a49af2

comment:23 Changed 6 years ago by Owen Arnold

refs #10530. No need for outer reporting.

Changeset: 19e23d332fb5537e940b5608bee0390477bc6b65

comment:24 Changed 6 years ago by Owen Arnold

  • look at data (russell sent)
  • get 4d case working for sqw.
  • working out what the q axis are. and pre-transform them so that the projections work correctly.
  • offsets

comment:25 Changed 6 years ago by Owen Arnold

As answer to the offset question. Russell provided the following response

To clarify what we discussed earlier, the proj offset in Horace is defined in terms of h,k,l.
 
e.g.
proj.offset=[1,0,0,0]
proj.u=[1,1,0]
proj.v=[-1,1,0]
proj.w=[0,0,1]
proj.type=’rrr’
 
my_cut=cut_sqw(data,proj,[-1,0.05,1],[-0.1,0.1],[-0.1,0.1],[0,1,100])
 
would return a slice with axes of (1+h,h,0) and energy
 
I hope that makes sense, and sorry for the earlier confusion.
 
Russell

So the offsets are just a convenience, you could achieve the same result by modifying the projection directly.

comment:26 Changed 6 years ago by Owen Arnold

  • Priority changed from major to blocker

This work needs to be resolved. I expect to be able to get this done between the 15th and the 19th of December. Please do not move this forward to the next release.

comment:27 Changed 6 years ago by Martyn Gigg

Fix str output in usage

Python lists are printed with different spacing so things shifted slightly when using a list for getColumnNames Refs #10530

Changeset: 90ca30f198194b20b7b9bdf8a9e8e7a39aa30ccc

comment:28 Changed 6 years ago by Martyn Gigg

It turned out I was ultimately responsible for the problems with develop and it was masking a few doc tests that I fixed in the above commit. Obviously you'll need to rebase any changes you have locally.

comment:29 Changed 6 years ago by Owen Arnold

refs #10530. Start new algorithm.

Needed to expose a few more property types to get this started. All tested.

Changeset: 52acb587fd9481e076f59c63148528c56191e1b6

comment:30 Changed 6 years ago by Owen Arnold

refs #10530. Refactor and extend tests.

Changeset: 4e801c6d3a1c09b45ae663c507473bed7ac09350

comment:31 Changed 6 years ago by Owen Arnold

refs #10530. More TDD around these features.

Particular focus on projection inputs. Also started adding binning information.

Changeset: 2729b82e7cce69c567d6738d5a8ff989af665ad8

comment:32 Changed 6 years ago by Owen Arnold

refs #10530. Add extents calculation.

Changeset: 77a77b85cd6a75c106780ab5999e8a0cc592402c

comment:33 Changed 6 years ago by Owen Arnold

refs #10530. Checking basis transformations.

Changeset: 7dc05499e86382f3e6e806576e40c2f1be3884ef

comment:34 Changed 6 years ago by Owen Arnold

refs #10530. Add more tests.

Also needed to expose columnnames properly via ITableWorskpace

Changeset: 6e9019abbaaddd22748165c73dc5ab6a9186c538

comment:35 Changed 6 years ago by Owen Arnold

refs #10530. Add NoPix option.

Changeset: a1c00b15f82fd6cf40f00036d3d58278a4228c53

comment:36 Changed 6 years ago by Owen Arnold

refs #10530. Add Axes check.

Changeset: b31bf4d3fc098d75256fcbf75791e691929703f2

comment:37 Changed 6 years ago by Owen Arnold

refs #10530. More checks and tests.

Changeset: fe90ba7f90bba513d513b89724eb00d4850683b9

comment:38 Changed 6 years ago by Owen Arnold

refs #10530. Use binning boundaries as extents.

Use binning boundaries as extents if they define inner limit. Otherwise the original dimension boundaries are used as extents. In either case, the extents need to be transformed into the new basis.

Changeset: b63fca0cebded4758a22105c5acb5beaf944d832

comment:39 Changed 6 years ago by Owen Arnold

refs #10530. Fix extents calculation.

The tests are right, but the implementation is wrong. We should calculate all extents in the new basis first, then figure out the most conservative of those to use for the actual extents used in BinMD/SliceMD.

Changeset: 0b8267132126a72948bcc9b5a6582bc800f7e852

comment:40 Changed 6 years ago by Owen Arnold

refs #10530. Update according to Andrei's binning observations.

Changeset: 0056ae56bb79d781c161ddfa8f72a95d1f22a960

comment:41 Changed 6 years ago by Owen Arnold

refs #10530. Extents from binning only. Andrei's input.

Changeset: 3a328216a1f7d0a6cd0ceddb97f4d94153e71738

comment:42 Changed 6 years ago by Owen Arnold

refs #10530. Truncate extents. Andrei's suggestion.

Changeset: 058e8115c2cdad16b4084bfb8d87d770dc10a2b5

comment:43 Changed 6 years ago by Owen Arnold

refs #10530. Use Enums.

Changeset: b46f85536493cb4ebc6da65da19739b05d7407d5

comment:44 Changed 6 years ago by Owen Arnold

refs #10530. Calculate new extents before calculating bins.

Changeset: 5333fd599a9dbd85bddde0b6a9f1eaacaa383587

comment:45 Changed 6 years ago by Owen Arnold

refs #10530. Add w_matrix to outgoing workspace.

Changeset: df6eb0b9d0c786b3d2be442501305f8773920235

comment:46 Changed 6 years ago by Owen Arnold

refs #10530. Apply scaling.

This wan't right first time round.

Changeset: 9295c92b012f5211bb0ec523cabcf0526f623e92

comment:47 Changed 6 years ago by Owen Arnold

refs #10530. Fix broken test.

Changeset: a192e69d70d9e37be48f0ca885dccdab1ea8973d

comment:48 Changed 6 years ago by Owen Arnold

refs #10530. Fix for rhel6. numpy 1.3

Changeset: 1cc17a96f9dde0c25db5d2f61ac680fa42f81c4b

comment:49 Changed 6 years ago by Owen Arnold

refs #10530. Use child progress reporting.

Changeset: 687da6236e6c163c0cab40302fcc0feff3a49af2

comment:50 Changed 6 years ago by Owen Arnold

refs #10530. No need for outer reporting.

Changeset: 19e23d332fb5537e940b5608bee0390477bc6b65

comment:51 Changed 6 years ago by Owen Arnold

refs #10530. Start working on 4D cases.

Changeset: 7dc4cb15a6b7a20601127fab45a9f98a0ee4c486

comment:52 Changed 6 years ago by Owen Arnold

  • Blocking 10693 added

comment:53 Changed 6 years ago by Owen Arnold

  • Description modified (diff)
  • Summary changed from cut_sqw in mantid to pre cut_sqw in mantid

comment:54 Changed 6 years ago by Owen Arnold

refs #10530. Remove the algorithm parts

I want to get the key parts of this in. The python algorithm can relatively safely be added later.

Changeset: b66348fe693bc17ac1c1f36709a2db0f94f0f4f3

comment:55 Changed 6 years ago by Owen Arnold

  • Status changed from inprogress to verify
  • Resolution set to fixed

This is being verified as pull request #85.

comment:56 Changed 6 years ago by Owen Arnold

  • Description modified (diff)

comment:57 Changed 6 years ago by Owen Arnold

  • Description modified (diff)

comment:58 Changed 6 years ago by Owen Arnold

Tester: Have a look at the code changes. Unit tests have been modified, and should all be passing. That's pretty much it for testing.

comment:59 Changed 6 years ago by Owen Arnold

test this please

comment:60 Changed 6 years ago by Martyn Gigg

Fix str output in usage

Python lists are printed with different spacing so things shifted slightly when using a list for getColumnNames Refs #10530

Changeset: cb1a3c1be06eecb09166c7f1c4158ce3d1f3e671

comment:61 Changed 6 years ago by Owen Arnold

Revert "refs #10530. Remove the algorithm parts"

This reverts commit b66348fe693bc17ac1c1f36709a2db0f94f0f4f3.

Changeset: a1d2cb4e26680a511596c1ac7bd1e33e8c4a2567

comment:62 Changed 6 years ago by Martyn Gigg

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

comment:63 Changed 6 years ago by Martyn Gigg

It looks as if the final commit has not been pushed to the branch on github. Trac sees a commit that has made it to develop but is not on this branch. A simple git push origin feature/10530_pre_cut_md should do

comment:64 Changed 6 years ago by Owen Arnold

This branch is fine. I added a few more commits to this branch in preparation to adding the actual algorithm so that I could rebase onto Master when these changes go through.

comment:65 Changed 6 years ago by Martyn Gigg

  • Status changed from verifying to closed

Merge pull request #85 from mantidproject/feature/10530_pre_cut_md

Full changeset: c0e341433ae8a5d868a8a0f04087f795b8811f1a

comment:66 Changed 6 years ago by Owen Arnold

Revert "refs #10530. Remove the algorithm parts"

This reverts commit b66348fe693bc17ac1c1f36709a2db0f94f0f4f3.

Changeset: d7a0d7d7fb1cac2ef6d853725a516e83dd602029

comment:67 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 11372

Note: See TracTickets for help on using tickets.