Ticket #10532 (closed: fixed)
Separate Property manager from Direct inelastic reduction script
Reported by: | Alex Buts | Owned by: | Alex Buts |
---|---|---|---|
Priority: | major | Milestone: | Release 3.3 |
Component: | Framework | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | #10677, #10681, #10684 | Tester: | Ian Bush |
Description (last modified by Alex Buts) (diff)
This is the part of agreed work for unifying ISIS direct reduction scripts.
The class responsible for ISIS reduction should be separated into property managed and executive part.
This will also make it much close to SNS reduction bearing in mind possible merging them in a future.
Change History
comment:3 Changed 6 years ago by Alex Buts
- Status changed from assigned to inprogress
Re #10532 Initial separation
Changeset: 072b1f1be1660ffd62b8113f1ce88960c4dc1746
comment:4 Changed 6 years ago by Alex Buts
Re #10532 Further small steps
Changeset: 7fce5d29b646f67dce972fc89f2f32cc082a14e5
comment:5 Changed 6 years ago by Alex Buts
refs #10532 Defined generic operations over reduction parameters.
Changeset: 7782b6888550995b456220d9bb83f35ab7d8d81d
comment:6 Changed 6 years ago by Alex Buts
refs #10532 More steps in defining property manager
Changeset: 789b2ddb0faa0c35cba452d0698b9221d1066e33
comment:7 Changed 6 years ago by Alex Buts
refs #10532 Initial property manager code
Changeset: f001162c880ac336378e5f938e1c8d5cd8858329
comment:8 Changed 6 years ago by Alex Buts
refs #10532 reimplemented parts of the property manager
using descriptors
Changeset: a8663ac4f015b06014be10aa14cdfa8a41dd7e54
comment:9 Changed 6 years ago by Alex Buts
refs #10532 New class ComplexProperty and started binging
simple and complex reduction properties.
Changeset: aacd44fc6386ccbac834192760a76417d715dfd6
comment:10 Changed 6 years ago by Alex Buts
refs #10532 Main functionality moved to separate property manager
Changeset: 77f4ab6d1c3c438ca521b60ecb254117ae1074de
comment:11 Changed 6 years ago by Alex Buts
refs #10532 Old interface added for verification
necessary for transition period
Changeset: 13f365043eead1e56512b6e6e25cc4674b5c1b75
comment:12 Changed 6 years ago by Alex Buts
refs #10532 minor comments
Changeset: fac2fe30167cb5fba0a618aa074b48e07b3be136
comment:13 Changed 6 years ago by Alex Buts
Re #10532 DirectEnergyConversion modified to use DirectPropertyManager
Changeset: 6b99c42a0f34f3ae0c9edf49e34fa36efcdf1f72
comment:14 Changed 6 years ago by Alex Buts
refs #10532 further separation in DirectEnergyConversion.
Changeset: 4ee842466af2c23b03057ad4b67cec9296db5ada
comment:15 Changed 6 years ago by Alex Buts
Re #10532 minor changes related to changes in diagnose interface
Changeset: f645a8beb50d6808449e1749b12f5c550eaf74f8
comment:16 Changed 6 years ago by Alex Buts
refs #10532 Intermediate checkout
walking through DirectEnergyConversion and using PropertyManager everywhere
Replaced all in diagnostics but need to deal with wb integrals next.
Changeset: 9725d89e2d129f4f48e0dea8da8b2ef2699dcafa
comment:17 Changed 6 years ago by Alex Buts
Re #10532 Modified and briefly tested do_white and diagnose methods
in DirectEnergyConversion
Changeset: d2f44cd8dcd1bded13efc8a746d00ea2d60f36d7
comment:18 Changed 6 years ago by Alex Buts
Re #10532 Fixed diagnose system test
Changeset: 4d4352c39e0ec1c54a249264b213c2838ca53aec
comment:19 Changed 6 years ago by Alex Buts
Re #10532 Formally started to run.
system tests are still failing
Changeset: b7e120f1d5a97ac71934960d1ccdad0169e60a46
comment:20 Changed 6 years ago by Alex Buts
Re #10532 Minor changes to run separated reduction version.
Changeset: b86b9552493602351370921efdcd1160254cfba3
comment:21 Changed 6 years ago by Alex Buts
Re #10532 separated DirectReductionProperties into two
as it become too big to be convenient.
Changeset: 64fb148da3a5bc49b68c18aeed5b2ab220530801
comment:22 Changed 6 years ago by Alex Buts
Re #10532 written and tested option to write changed properties
to HDD and load them back.
Changeset: 66e5eedf6756b2cf3714b791e13ec93a2da46a17
comment:23 Changed 6 years ago by Alex Buts
Re #10532 Test version of ReductionWrapper (will be abstract and mod
later)
Changeset: 3499986aae721a4f9dc164c889dad61eb32267e9
comment:24 Changed 6 years ago by Alex Buts
Re #10532 minor bug fixes.
Changeset: 8aa5c3444ce1a6caeb8ccb37512b88df75ab7bfc
comment:25 Changed 6 years ago by Alex Buts
Re #10532 Changing in default log levels and better logging
Changeset: 1ee8235ebe22f619ee3e0fa1061d28e096903e42
comment:26 Changed 6 years ago by Alex Buts
Re #10532 fixed simple tests for MARI
and modified ReductionWrapper according to Marcus suggestions (minor)
Changeset: 0b13082d61f22aff7c9dc3834f51b1b3fc5cdf16
comment:27 Changed 6 years ago by Alex Buts
Re #10532 Fixing system test for summation
and fixing long standing error in dgreduce (thanks good nobody used internal reduction procedure)
Changeset: cea7d0fed02e813df070d79fe2677debf12190c8
comment:28 Changed 6 years ago by Alex Buts
Re #10532 Fixing system tests for summation
and amendments to other tests for Mari appearing due to WB integrals done differently.
Changeset: 71ac4c6ba347fe94cab522d7e32aa4a17f5dc683
comment:29 Changed 6 years ago by Alex Buts
Re #10532 fixed system tests for MARI
Changeset: 28985db02c0843e4aa3b2c363dd1dc0813fb8bdb
comment:30 Changed 6 years ago by Alex Buts
Re #10532 Fixed Merlin and Maps system tests
Modified property managed to allow it MonovanIntegrationRange accepting absolute energy range (used by MAPS system test)
Changeset: c573b4853895f51b657050668e9ad984839387fe
comment:31 Changed 6 years ago by Alex Buts
Re #10532 Minor modifications to fix system tests
Changeset: 98ed67351985876f50cafeab27b774a533a63252
comment:34 Changed 6 years ago by Alex Buts
Re #10532 all working, all fixed.
Changeset: bcc791341cbf8ec1e2cd639d4c582033183eed58
comment:35 Changed 6 years ago by Alex Buts
Re #10532 changes to fix ISIS system tests
Changeset: e05b8aa04e7937ecbb01f30d5fb6dca4e4122d38
comment:36 Changed 6 years ago by Alex Buts
Re #10532 updated SNS code (not if anybody uses it anyway)
Changeset: becaea1a07d4e64a112ab037771def0b1be22680
comment:38 Changed 6 years ago by Alex Buts
The changes are both in Mantid and System test branch and are python only.
Difficult ticket to test in details if you are not familiar with ISIS direct inelastic and nobody probably are well enough and the ticket deals with the re-factoring of the code not introducing any new functionality.
But not much testing is needed as doing it I have intentionally not introduced any new functionality (except fixing couple of bugs, which nobody used anyway) but just separated three years of subsequent maintenance changes to interface of ISIS direct inelastic (which caused initial file to grow from ~1K rows to ~3K) into separate classes.
The interface classes are written following the description, outlined in Lutz; Learning Python 2011, mainly chapters 37-38.
The changes are intended to made interface dependent on Instrument_Parameters.xml file only and prohibit access and creation of any properties, not described there.
Doing that I have also tried to maintain and support all functionality, introduced during number of years of maintaining these scripts -- just separated the interface from the code responsible for the reduction itself.
This is mainly successful, though number of small ticket is still necessary to polish the changes.
The proof that the changes work are system tests, verifying the reduction validity.
Tester welcome to look through PropertyManager which is mainly complete but should not bother with DirectEnergyConversion, as this one has been intentionally changed as small as possible to provide all previous functionality.
comment:39 Changed 6 years ago by Alex Buts
Re #10532 Minor comments
Changeset: 7c0908a5f8367b490821ca365c9b87b36ea4714c
comment:41 Changed 6 years ago by Alex Buts
- Status changed from inprogress to verify
- Resolution set to fixed
comment:42 Changed 6 years ago by Ian Bush
- Status changed from verify to verifying
- Tester set to Ian Bush
comment:45 Changed 6 years ago by Martyn Gigg
Fix LoadInstrument usage test
The parameter count has changed. Refs #10532
Changeset: 86331033884bb7b6d688df1db2b1c49b32edbc6f
comment:46 Changed 6 years ago by Martyn Gigg
After the mass build breakages I'm trying to get them green.
I've fixed the LoadInstrument usage test, so please update your local copy before merging to master.
comment:47 Changed 6 years ago by Martyn Gigg
- Status changed from verifying to reopened
- Resolution fixed deleted
Please don't merge this yet.
There are two usage test failures:
- GetEi
- DgsReduction
It looks to me that the parameter names for the Ei monitor spectra have been changed but GetEi2 is still looking for the old ones. It also looks like the changes to the parameter names have NOT been applied to SNS instruments so that GetEi fails there too.
Is there any need to change the parameter names?
comment:48 Changed 6 years ago by Alex Buts
This ticket does not touch anything in C++ and I do not see why it should.
Does it picks up monitor's parameters names from IDF? A unit test in C++ should verify this feature in such case.
Parameter names have changes to allow assignment from Python by the same names and python does not support minus in properties. There is way to substitute names in Python, so I am reverting change to monitor names, but separate changes are necessary to make this feature more obvious.
comment:49 Changed 6 years ago by Alex Buts
- Status changed from reopened to inprogress
Re #10532 Renamed ei monitors names to names with dashes.
Changeset: 7228c3b7000bfa83ac207fec347cfbfa8b552c81
comment:50 Changed 6 years ago by Alex Buts
Re #10532 Change to unit tests caused by changes in properties
Changeset: 4d20e6a671b31b75ddd27fe7d6579df7a911069b
comment:51 Changed 6 years ago by Alex Buts
Re #10532 Fixed conflicts with develop
Merge branch 'feature/10532_separatePropertyManager' into develop
Conflicts:
Code/Mantid/scripts/Inelastic/DirectReductionProperties.py
Changeset: ea828d464efbb1c1c91a0cefe6db8dae4736bf26
comment:52 Changed 6 years ago by Alex Buts
Re #10532 modified deltaE-mode to have dash rather then _
Changeset: 6672970d576d84f88ac48ae952a48575e0f80c77
comment:53 Changed 6 years ago by Alex Buts
- Status changed from inprogress to verify
- Resolution set to fixed
comment:54 Changed 6 years ago by Ian Bush
- Status changed from verify to closed
Merge remote-tracking branch 'origin/feature/10532_separatePropertyManager'
Full changeset: c4ada99cdce54ceba0e571bd37d14a6b48e88519
comment:55 Changed 6 years ago by Ian Bush
Merge remote-tracking branch 'origin/feature/10532_separatePropertyManager'
Full changeset: e7e67016f963645a0620d0545e19b33f82f03f9b
comment:57 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 11374