Ticket #6760 (closed: fixed)
Instrument geometry loads incorrectly for duplicate sample log values
Reported by: | Stuart Campbell | Owned by: | Stuart Campbell |
---|---|---|---|
Priority: | blocker | Milestone: | Release 2.5 |
Component: | Mantid | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Andrei Savici |
Description
This was noticed on HYSA. The msd log value affects the incident flight path (L1), if the raw data file has more than one value of msd at exactly the same time then a zero is used for the value of msd when the geometry is loaded.
If we modify the time of one of the values by even a very small amount (e.g. 1e-6) then it all works fine.
HYSPECA runs 18497 and 18498 have this issue.
If you look at the log values from within MantidPlot then all looks ok.
Change History
comment:2 Changed 8 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:3 Changed 8 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:4 Changed 8 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:5 Changed 8 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:6 Changed 8 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:7 Changed 8 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:8 Changed 8 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:9 Changed 8 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:10 Changed 8 years ago by Stuart Campbell
- Status changed from accepted to verify
- Resolution set to fixed
comment:11 Changed 8 years ago by Stuart Campbell
The branch name is bugfix/6760_loadinst_duplicate_logs
A unit test has been added to LogParserTest that has values with duplicate times, so this should pass.
This script should also produce a spectra with a peak at Et=0 (in workspace sum).
Load(Filename='/SNS/HYSA/IPTS-8718/nexus/HYSA_18497.nxs.h5', OutputWorkspace='HYSA_18497') DgsReduction(SampleInputWorkspace='HYSA_18497',SampleInputMonitorWorkspace='HYSA_18497',OutputWorkspace='w1') SumSpectra(InputWorkspace='w1',OutputWorkspace='sum')
comment:12 Changed 8 years ago by Andrei Savici
- Status changed from verify to verifying
- Tester set to Andrei Savici
comment:13 Changed 8 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:14 Changed 8 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:15 Changed 8 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:16 Changed 8 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:18 Changed 8 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:19 Changed 8 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:20 Changed 8 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:21 Changed 8 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:22 Changed 8 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:23 Changed 8 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:24 Changed 8 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:25 Changed 8 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:26 Changed 7 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:27 Changed 7 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:28 Changed 7 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:29 Changed 7 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:30 Changed 7 years ago by Stuart Campbell
Added unit test that will fail for duplicate entries.
refs #6760
Changeset: a812efe23cc00c1b47fa59c4db871630bf82d54d
comment:31 Changed 7 years ago by Stuart Campbell
Changed test method name. refs #6760
Changeset: 84b803075b9761d6cc5fac46f6535dd93addd8b4
comment:32 Changed 7 years ago by Stuart Campbell
Remove duplicate log times before calling meanTime()
Not sure this is the best thing to do, ideally meanTime() should be able to cope itself.
refs #6760
Changeset: 80242113dac148bbf5b890cb87c953a9dc986e37
comment:33 Changed 7 years ago by Stuart Campbell
Added check for all times being the same. refs #6760
If the total duration of the differences of the log values is 0.0 then just use the first log value.
Changeset: 866f882e9bded6cbfd7b5d1b4895f0674ff19ee9
comment:34 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 7606