def test_single_period_nxs_file(self): ici.SetCentre(1,-2) loadSample = steps.LoadSample('22048') loadSample.execute(ici.ReductionSingleton(), True) self.assertEqual(loadSample.wksp_name, '22048_sans_nxs') self.assertTrue(not loadSample.entries) cur_pos = ici.ReductionSingleton().instrument.cur_detector_position(loadSample.wksp_name) self.assertAlmostEqual(cur_pos[0],1/1000.0) self.assertAlmostEqual(cur_pos[1], -2/1000.0)
def test_multiperiod_nxs_file(self): ici.SetCentre(1, -2) loadSample = steps.LoadSample('5512') loadSample.execute(ici.ReductionSingleton(), True) self.assertEqual(loadSample.wksp_name, '5512_sans_nxs_1') self.assertEqual(loadSample.entries, range(0,13)) for index in [0,5,12]: loadSample.move2ws(index) self.assertEqual(loadSample.wksp_name, '5512_sans_nxs_'+str(index+1)) cur_pos = ici.ReductionSingleton().instrument.cur_detector_position(loadSample.wksp_name) self.assertAlmostEqual(cur_pos[0], 0.001) self.assertAlmostEqual(cur_pos[1], -0.002)
def set_run(self, run, reload, period, reducer): """ Assigns and load the run @param run: the run in a number.raw|nxs format @param reload: if this sample should be reloaded before the first reduction @param period: the period within the sample to be analysed """ self.run_option = str(run) # to self-guard against keeping reference to workspace self.reload_option = reload self.period_option = period self.loader = isis_reduction_steps.LoadSample(run, reload, period) self.loader.execute(reducer, self.ISSAMPLE) if self.ISSAMPLE: self.geometry.execute(None, self.get_wksp_name())