From 8275fc389e195fc5d2f5d5ea6057eb72ea1cb8bf Mon Sep 17 00:00:00 2001
From: David Fairbrother <DavidFair@users.noreply.github.com>
Date: Fri, 20 Jan 2017 11:50:45 +0000
Subject: [PATCH] Re #18108 POLARIS better kwarg checking and output naming

---
 scripts/Diffraction/isis_powder/polaris.py            | 11 ++++++-----
 .../isis_powder/polaris_routines/polaris_algs.py      | 11 ++++++-----
 .../polaris_routines/polaris_param_mapping.py         |  3 +++
 3 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/scripts/Diffraction/isis_powder/polaris.py b/scripts/Diffraction/isis_powder/polaris.py
index b036cb080cc..613ae91ffc3 100644
--- a/scripts/Diffraction/isis_powder/polaris.py
+++ b/scripts/Diffraction/isis_powder/polaris.py
@@ -27,14 +27,14 @@ class Polaris(AbstractInst):
 
         self._ads_workaround = 0
 
-    def focus(self, run_number, input_mode, **kwargs):
+    def focus(self, **kwargs):
         self._inst_settings.update_attributes(kwargs=kwargs)
-        return self._focus(run_number=run_number, input_batching=input_mode,
+        return self._focus(run_number=self._inst_settings.run_number, input_batching=self._inst_settings.input_mode,
                            do_van_normalisation=self._inst_settings.do_van_normalisation)
 
-    def create_calibration_vanadium(self, run_in_range, **kwargs):
+    def create_calibration_vanadium(self, **kwargs):
         self._inst_settings.update_attributes(kwargs=kwargs)
-        run_details = self.get_run_details(run_number_string=int(run_in_range))
+        run_details = self.get_run_details(run_number_string=int(self._inst_settings.run_in_range))
         run_details.run_number = run_details.vanadium_run_numbers
 
         return self._create_calibration_vanadium(
@@ -88,7 +88,8 @@ class Polaris(AbstractInst):
         return polaris_algs.calculate_absorb_corrections(ws_to_correct=van_ws)
 
     def output_focused_ws(self, processed_spectra, run_details, output_mode=None):
-        d_spacing_group, tof_group = polaris_algs.split_into_tof_d_spacing_groups(processed_spectra)
+        d_spacing_group, tof_group = polaris_algs.split_into_tof_d_spacing_groups(run_details=run_details,
+                                                                                  processed_spectra=processed_spectra)
         output_paths = self.generate_out_file_paths(run_details=run_details)
 
         polaris_output.save_polaris_focused_data(d_spacing_group=d_spacing_group, tof_group=tof_group,
diff --git a/scripts/Diffraction/isis_powder/polaris_routines/polaris_algs.py b/scripts/Diffraction/isis_powder/polaris_routines/polaris_algs.py
index e6047fec305..e7cbafa029f 100644
--- a/scripts/Diffraction/isis_powder/polaris_routines/polaris_algs.py
+++ b/scripts/Diffraction/isis_powder/polaris_routines/polaris_algs.py
@@ -60,13 +60,14 @@ def get_run_details(run_number, inst_settings):
     return run_details
 
 
-def split_into_tof_d_spacing_groups(processed_spectra):
+def split_into_tof_d_spacing_groups(run_details, processed_spectra):
     name_index = 1
     d_spacing_output = []
     tof_output = []
+    run_number = str(run_details.run_number)
     for ws in processed_spectra:
-        d_spacing_out_name = "ResultD-" + str(name_index)
-        tof_out_name = "ResultTOF-" + str(name_index)
+        d_spacing_out_name = run_number + "-ResultD-" + str(name_index)
+        tof_out_name = run_number + "-ResultTOF-" + str(name_index)
         name_index += 1
 
         d_spacing_output.append(mantid.ConvertUnits(InputWorkspace=ws, OutputWorkspace=d_spacing_out_name,
@@ -74,9 +75,9 @@ def split_into_tof_d_spacing_groups(processed_spectra):
         tof_output.append(mantid.ConvertUnits(InputWorkspace=ws, OutputWorkspace=tof_out_name, Target="TOF"))
 
     # Group the outputs
-    d_spacing_group_name = "Results-D-Grp"
+    d_spacing_group_name = run_number + "-Results-D-Grp"
     d_spacing_group = mantid.GroupWorkspaces(InputWorkspaces=d_spacing_output, OutputWorkspace=d_spacing_group_name)
-    tof_group_name = "Results-TOF-Grp"
+    tof_group_name = run_number + "-Results-TOF-Grp"
     tof_group = mantid.GroupWorkspaces(InputWorkspaces=tof_output, OutputWorkspace=tof_group_name)
 
     return d_spacing_group, tof_group
diff --git a/scripts/Diffraction/isis_powder/polaris_routines/polaris_param_mapping.py b/scripts/Diffraction/isis_powder/polaris_routines/polaris_param_mapping.py
index cf5ece39fca..af24b128208 100644
--- a/scripts/Diffraction/isis_powder/polaris_routines/polaris_param_mapping.py
+++ b/scripts/Diffraction/isis_powder/polaris_routines/polaris_param_mapping.py
@@ -7,9 +7,12 @@ attr_mapping = [("calibration_directory",       "calibration_dir"),
                 ("config_file",                 "config_file"),
                 ("do_van_normalisation",        "do_van_normalisation"),
                 ("do_absorb_corrections",       "do_absorb_corrections"),
+                ("input_mode",                  "input_mode"),
                 ("masking_file_name",           "masking_file_name"),
                 ("multiple_scattering",         "multiple_scattering"),
                 ("raw_data_cropping_values",    "raw_data_crop_values"),
+                ("run_in_range",                "run_in_range"),
+                ("run_number",                  "run_number"),
                 ("spline_coefficient",          "spline_coeff"),
                 ("tof_cropping_ranges",         "tof_cropping_values"),
                 ("output_directory",            "output_dir"),
-- 
GitLab