diff --git a/scripts/wish/reduce.py b/scripts/wish/reduce.py index 3fc23c8f330ef6c78c3f7da7c0438ab4960d10db..bd987339c7b9556b71fecf96b91b0bf6e38a4503 100644 --- a/scripts/wish/reduce.py +++ b/scripts/wish/reduce.py @@ -48,10 +48,10 @@ class Wish: def startup(self, cycle='14_3'): user_data_directory = self.use_folder + cycle + '/' self.set_data_directory(user_data_directory) - print ("Raw Data in : ", user_data_directory) + print("Raw Data in : ", user_data_directory) user_data_processed = self.out_folder self.set_user_directory(directory=user_data_processed) - print ("Processed Data in : ", user_data_processed) + print("Processed Data in : ", user_data_processed) # Returns the calibration filename def get_cal(self): @@ -90,7 +90,7 @@ class Wish: def read(self, number, panel, ext): if type(number) is int: filename = self.datafile - print ("will be reading filename..." + filename) + print("will be reading filename...", filename) spectra_min, spectra_max = self.return_panel.get(panel) if panel != 0: output = "w{0}-{1}".format(number, panel) @@ -100,7 +100,7 @@ class Wish: if ext == "nxs_event": mantid.LoadEventNexus(Filename=filename, OutputWorkspace=output, LoadMonitors='1') self.read_event_nexus(number, output, panel) - print ("full nexus eventfile loaded") + print("full nexus eventfile loaded") if ext[:10] == "nxs_event_": label, tmin, tmax = split_string_event(ext) output = output + "_" + label @@ -114,10 +114,10 @@ class Wish: LoadMonitors='1', MonitorsAsEvents='1', FilterMonByTimeStart=tmin, FilterMonByTimeStop=tmax) self.read_event_nexus(number, output, panel) - print ("nexus event file chopped") + print("nexus event file chopped") else: num_1, num_2 = split_string(number) - output = "w" + str(num_1) + "_" + str(num_2) + "-" + str(panel) + output = "w{0}_{1}-{2}".format(num_1, num_2, panel) output1 = self.load_multi_run_part(ext, num_1, panel) output2 = self.load_multi_run_part(ext, num_2, panel) mantid.MergeRuns(output1 + "," + output2, output) @@ -127,9 +127,9 @@ class Wish: lmin, lmax = Wish.LAMBDA_RANGE mantid.CropWorkspace(InputWorkspace=output, OutputWorkspace=output, XMin=lmin, XMax=lmax) monitor = self.process_incidentmon(number, ext, spline_terms=70) - print ("first norm to be done") + print("first norm to be done") mantid.NormaliseToMonitor(InputWorkspace=output, OutputWorkspace=output + "norm1", MonitorWorkspace=monitor) - print ("second norm to be done") + print("second norm to be done") mantid.NormaliseToMonitor(InputWorkspace=output + "norm1", OutputWorkspace=output + "norm2", MonitorWorkspace=monitor, IntegrationRangeMin=0.7, IntegrationRangeMax=10.35) @@ -144,15 +144,15 @@ class Wish: def load_multi_run_part(self, ext, run, panel): filename = self.get_file_name(run, ext) - print("reading filename..." + filename) + print("reading filename...", filename) spectra_min, spectra_max = self.return_panel.get(panel) - output1 = "w" + str(run) + "-" + str(panel) + output1 = "w{0}-{1}".format(run, panel) mantid.LoadRaw(Filename=filename, OutputWorkspace=output1, SpectrumMin=str(spectra_min), SpectrumMax=str(spectra_max), LoadLogFiles="0") return output1 def read_event_nexus(self, number, output, panel): - mantid.RenameWorkspace(output + "_monitors", "w" + str(number) + "_monitors") + mantid.RenameWorkspace("{}_monitors".format(output), "w{}_monitors".format(number)) mantid.Rebin(InputWorkspace=output, OutputWorkspace=output, Params='6000,-0.00063,110000') mantid.ConvertToMatrixWorkspace(output, output) spectra_min, spectra_max = self.return_panel.get(panel) @@ -171,7 +171,7 @@ class Wish: return focus def focus(self, work, panel): - focus = work + "foc" + focus = "{}foc".format(work) if panel != 0: return self.focus_onepanel(work, focus, panel) else: @@ -181,11 +181,11 @@ class Wish: def process_run(self, number, panel, extension, cyclevana="09_4", absorb=False, number_density=0.0, scattering=0.0, attenuation=0.0, height=0.0, radius=0.0): workspace_to_focus = self.read(number, panel, extension) - print ("file read and normalized") + print("file read and normalized") if absorb: absorption_corrections(attenuation, height, number_density, radius, scattering, workspace_to_focus) wfocname = self.focus(workspace_to_focus, panel) - print ("focussing done!") + print("focussing done!") panel_crop = { 1: (0.8, 53.3), @@ -204,25 +204,25 @@ class Wish: if panel == 0: for i in range(Wish.NUM_PANELS): - wfocname = "w" + str(number) + "-" + str(i) + "foc" + wfocname = "w{0}-{1}foc".format(number, i) mantid.CropWorkspace(InputWorkspace=wfocname, OutputWorkspace=wfocname, XMin=d_min, XMax=d_max) - print ("will try to load a vanadium with the name:" + self.get_vanadium(i, cyclevana)) + print("will try to load a vanadium with the name:", self.get_vanadium(i, cyclevana)) self.apply_vanadium_corrections(cyclevana, i, wfocname) mantid.SaveGSS(InputWorkspace=wfocname, - Filename=self.user_directory + str(number) + "-" + str(i) + extension + ".gss", + Filename="{0}{1}-{2}{3}.gss".format(self.user_directory, number, i, extension), Append=False, Bank=1) - mantid.SaveFocusedXYE(wfocname, self.user_directory + str(number) + "-" + str(i) + extension + ".dat") - mantid.SaveNexusProcessed(wfocname, self.user_directory + str(number) + "-" + str(i) + extension + - ".nxs") + mantid.SaveFocusedXYE(wfocname, "{0}{1}-{2}{3}.dat".format(self.user_directory, number, i, extension)) + mantid.SaveNexusProcessed(wfocname, "{0}{1}-{2}{3}.nxs".format(self.user_directory, number, i, + extension)) else: - print ("will try to load a vanadium with the name:" + self.get_vanadium(panel, cyclevana)) + print("will try to load a vanadium with the name:", self.get_vanadium(panel, cyclevana)) self.apply_vanadium_corrections(cyclevana, panel, wfocname) mantid.SaveGSS(InputWorkspace=wfocname, - Filename=self.user_directory + str(number) + "-" + str(panel) + extension + ".gss", + Filename="{0}{1}-{2}{3}.gss".format(self.user_directory, number, panel, extension), Append=False, Bank=1) - mantid.SaveFocusedXYE(wfocname, self.user_directory + str(number) + "-" + str(panel) + extension + ".dat") - mantid.SaveNexusProcessed(wfocname, self.user_directory + str(number) + "-" + str(panel) + extension + - ".nxs") + mantid.SaveFocusedXYE(wfocname, "{0}{1}-{2}{3}.dat".format(self.user_directory, number, panel, extension)) + mantid.SaveNexusProcessed(wfocname, "{0}{1}-{2}{3}.nxs".format(self.user_directory, number, panel, + extension)) return wfocname def apply_vanadium_corrections(self, cyclevana, i, wfocname): @@ -260,10 +260,9 @@ class Wish: def monitors(self, rb, ext): monitor_file = self.get_file_name(rb, ext) - wout = "w" + str(rb) - print ("reading File..." + monitor_file) - mantid.LoadRaw(Filename=monitor_file, OutputWorkspace=wout, SpectrumMin=str(1), SpectrumMax=str(5), - LoadLogFiles="0") + wout = "w{}".format(rb) + print("reading File...", monitor_file) + mantid.LoadRaw(Filename=monitor_file, OutputWorkspace=wout, SpectrumMin=1, SpectrumMax=5, LoadLogFiles="0") mantid.NormaliseByCurrent(InputWorkspace=wout, OutputWorkspace=wout) mantid.ConvertToDistribution(wout) return wout @@ -271,22 +270,22 @@ class Wish: def process_incidentmon(self, number, extension, spline_terms=20): if type(number) is int: filename = self.get_file_name(number, extension) - works = "monitor" + str(number) + works = "monitor{}".format(number) shared_load_files(extension, filename, works, 4, 4, True) if extension[:9] == "nxs_event": - temp = "w" + str(number) + "_monitors" - works = "w" + str(number) + "_monitor4" + temp = "w{}_monitors".format(number) + works = "w{}_monitor4".format(number) mantid.Rebin(InputWorkspace=temp, OutputWorkspace=temp, Params='6000,-0.00063,110000', PreserveEvents=False) mantid.ExtractSingleSpectrum(InputWorkspace=temp, OutputWorkspace=works, WorkspaceIndex=3) else: num_1, num_2 = split_string(number) - works = "monitor" + str(num_1) + "_" + str(num_2) + works = "monitor{0}_{1}".format(num_1, num_2) filename = self.get_file_name(num_1, extension) - works1 = "monitor" + str(num_1) + works1 = "monitor{}".format(num_1) mantid.LoadRaw(Filename=filename, OutputWorkspace=works1, SpectrumMin=4, SpectrumMax=4, LoadLogFiles="0") filename = self.get_file_name(num_2, extension) - works2 = "monitor" + str(num_2) + works2 = "monitor{}".format(num_2) mantid.LoadRaw(Filename=filename, OutputWorkspace=works2, SpectrumMin=4, SpectrumMax=4, LoadLogFiles="0") mantid.MergeRuns(InputWorkspaces=works1 + "," + works2, OutputWorkspace=works) mantid.DeleteWorkspace(works1) @@ -318,7 +317,7 @@ class Wish: for panel in panels: wout = self.process_run(run, panel, "raw", "11_4", absorb=True, number_density=0.025, scattering=5.463, attenuation=2.595, height=4.0, radius=0.55) - mantid.ConvertUnits(InputWorkspace=wout, OutputWorkspace=wout + "-d", Target="dSpacing", + mantid.ConvertUnits(InputWorkspace=wout, OutputWorkspace="{}-d".format(wout), Target="dSpacing", EMode="Elastic") if 0 in panels: panels = [1, 2, 3, 4, 5] @@ -329,11 +328,11 @@ class Wish: def save_combined_panel(self, run, panel): panel_combination = { - 5: "6", - 4: "7", - 3: "8", - 2: "9", - 1: "10" + 5: 6, + 4: 7, + 3: 8, + 2: 9, + 1: 10 } input_workspace1 = "w{0}-{1}foc".format(run, panel) input_workspace2 = "w{0}-{1}foc".format(run, panel_combination.get(panel)) @@ -371,7 +370,7 @@ def absorption_corrections(attenuation, height, number_density, radius, scatteri def split(focus): for i in range(Wish.NUM_PANELS): - out = focus[0:len(focus) - 3] + "-" + str(i + 1) + "foc" + out = "{0}-{1}foc".format(focus[0:len(focus) - 3], i+1) mantid.ExtractSingleSpectrum(InputWorkspace=focus, OutputWorkspace=out, WorkspaceIndex=i) mantid.DeleteWorkspace(focus)