def runTest(self):

        # 
        propman = PropertyManager('LET')


        propman.sample_run = 6278 #event nexus file
        propman.load_monitors_with_workspace = False

        # Here we have known problem of propman loading new IDF, and
        # workspace is written using old IDF. New IDF has mon1_norm_spec =73729
        # and ei_mon1_spec=73734   (on January 2015) and old 
        # IDF -- mon1_norm_spec =40961 and 40966 (forever) 
        # Normalized by monitor-1. -- need monitor1 and ei needs ei_mon1_spec
        # This problem is hopefully fixed in reduction now, but here 
        # we have to specify these values manually to guard against 
        # changes in a future
        propman.normalise_method='monitor-1'
        propman.mon1_norm_spec=40961
        propman.ei_mon1_spec  =40966

        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue(not(mon_ws is None))
        ws = PropertyManager.sample_run.get_workspace()

        self.assertTrue(isinstance(ws,IEventWorkspace))
        self.assertEqual(ws.getNumberHistograms(),40960)
        self.assertTrue(isinstance(mon_ws,Workspace))
        # 
        self.assertEqual(mon_ws.getNumberHistograms(),9)


        self.valid = True
Exemple #2
0
    def runTest(self):
        #
        propman = PropertyManager('MER')
        propman.sample_run = 6398  # (raw file)
        propman.det_cal_file = 6399
        propman.load_monitors_with_workspace = False
        propman.mon1_norm_spec = 69633
        propman.ei_mon1_spec = [69634, 69635, 69636, 69637]
        propman.ei_mon2_spec = [69638, 69639, 69640, 69641]

        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertNotEqual(mon_ws, None)

        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws, Workspace))
        self.assertEqual(ws.getNumberHistograms(), 69632)
        self.assertEqual(mon_ws.getNumberHistograms(), 9)

        propman.sample_run = None  # (clean things up)
        propman.load_monitors_with_workspace = True
        propman.sample_run = 6398

        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertNotEqual(mon_ws, None)
        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws, Workspace))
        self.assertEqual(ws.getNumberHistograms(), 69641)
        self.assertEqual(mon_ws.getNumberHistograms(), 69641)

        propman.sample_run = 18492  # (histogram nxs file )
        propman.det_cal_file = None
        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue('SR_MER018492' in mtd)
        self.assertNotEqual(mon_ws, None)
        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws, Workspace))
        self.assertEqual(ws.getNumberHistograms(), 69641)
        self.assertEqual(mon_ws.getNumberHistograms(), 69641)
        self.assertEqual(mon_ws.getIndexFromSpectrumNumber(69638), 69637)
        det = mon_ws.getDetector(69632)
        self.assertTrue(det.isMonitor())
        det = mon_ws.getDetector(69631)
        self.assertFalse(det.isMonitor())

        #  enable when bug #10980 is fixed
        propman.sample_run = None  # delete all
        self.assertFalse('SR_MER018492' in mtd)
        propman.sample_run = 18492  # (histogram nxs file )
        propman.load_monitors_with_workspace = False
        propman.det_cal_file = None
        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertNotEqual(mon_ws, None)
        self.assertTrue('SR_MER018492_monitors' in mtd)

        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws, Workspace))
        self.assertEqual(ws.getNumberHistograms(), 69632)
        self.assertEqual(mon_ws.getNumberHistograms(), 9)
        self.assertEqual(mon_ws.getIndexFromSpectrumNumber(69633), 0)
        det = mon_ws.getDetector(0)
        self.assertTrue(det.isMonitor())

        ei_ws = GetAllEi(mon_ws, 69634, 69638, IgnoreSecondMonitor=False)
        self.assertTrue(isinstance(ei_ws, Workspace))

        en_peaks = ei_ws.readX(0)
        self.assertAlmostEqual(len(en_peaks), 1)
        self.assertAlmostEqual(en_peaks[0], 108.94, 2)

        self.valid = True
    def runTest(self):
        #
        propman = PropertyManager('MER')
        propman.sample_run = 6398 # (raw file)
        propman.det_cal_file = 6399
        propman.load_monitors_with_workspace = False
        propman.mon1_norm_spec =  69633
        propman.ei_mon1_spec = [ 69634,69635,69636,69637]
        propman.ei_mon2_spec = [ 69638,69639,69640,69641]

        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue(mon_ws is not None)

        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws,Workspace))
        self.assertEqual(ws.getNumberHistograms(),69632)
        self.assertEqual(mon_ws.getNumberHistograms(),9)

        propman.sample_run = None # (clean things up)
        propman.load_monitors_with_workspace = True
        propman.sample_run  = 6398

        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue(mon_ws is not None)
        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws,Workspace))
        self.assertEqual(ws.getNumberHistograms(),69641)
        self.assertEqual(mon_ws.getNumberHistograms(),69641)

        propman.sample_run = 18492 # (histogram nxs file )
        propman.det_cal_file = None
        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue('SR_MER018492' in mtd)
        self.assertTrue(mon_ws is not None)
        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws,Workspace))
        self.assertEqual(ws.getNumberHistograms(),69641)
        self.assertEqual(mon_ws.getNumberHistograms(),69641)
        self.assertEqual(mon_ws.getIndexFromSpectrumNumber(69638),69637)
        det = mon_ws.getDetector(69632)
        self.assertTrue(det.isMonitor())
        det = mon_ws.getDetector(69631)
        self.assertFalse(det.isMonitor())

        #  enable when bug #10980 is fixed
        propman.sample_run = None # delete all
        self.assertFalse('SR_MER018492' in mtd)
        propman.sample_run = 18492 # (histogram nxs file )
        propman.load_monitors_with_workspace = False
        propman.det_cal_file = None
        mon_ws = PropertyManager.sample_run.get_monitors_ws()
        self.assertTrue(mon_ws is not None)
        self.assertTrue('SR_MER018492_monitors' in mtd)

        ws = PropertyManager.sample_run.get_workspace()
        self.assertTrue(isinstance(ws,Workspace))
        self.assertEqual(ws.getNumberHistograms(),69632)
        self.assertEqual(mon_ws.getNumberHistograms(),9)
        self.assertEqual(mon_ws.getIndexFromSpectrumNumber(69633),0)
        det = mon_ws.getDetector(0)
        self.assertTrue(det.isMonitor())

        ei_ws = GetAllEi(mon_ws,69634,69638,IgnoreSecondMonitor=False)
        self.assertTrue(isinstance(ei_ws,Workspace))

        en_peaks = ei_ws.readX(0)
        self.assertAlmostEqual(len(en_peaks),1)
        self.assertAlmostEqual(en_peaks[0],108.94,2)

        self.valid = True