Skip to content
Snippets Groups Projects
Commit dd79a45e authored by mantid-builder's avatar mantid-builder
Browse files

Merge remote-tracking branch 'origin/release-next'

parents 9156661a 40b19228
No related branches found
No related tags found
No related merge requests found
Showing
with 162 additions and 88 deletions
......@@ -85,7 +85,12 @@ class SaveGEMMAUDParamFile(PythonAlgorithm):
def create_empty_param_list(default_value="0"):
return "\n".join(default_value for _ in range(num_banks))
with open(self.getProperty(self.PROP_TEMPLATE_FILE).value) as template_file:
template_file_path = self.getProperty(self.PROP_TEMPLATE_FILE).value
if len(template_file_path) == 0:
logger.error("Could not find default diffraction directory for .maud template file: "
"you'll have to find it yourself")
with open(template_file_path) as template_file:
template = template_file.read()
output_params["function_types"] = create_empty_param_list("1")
......@@ -136,8 +141,6 @@ class SaveGEMMAUDParamFile(PythonAlgorithm):
if os.path.exists(path_to_test):
return path_to_test
logger.warning("Could not find default diffraction directory for .maud template file: "
"you'll have to find it yourself")
return ""
def _format_param_list(self, param_list):
......
......@@ -360,9 +360,6 @@ class ISISIndirectEnergyTransfer(DataProcessorAlgorithm):
self._output_ws = self.getPropertyValue('OutputWorkspace')
if self._grouping_string is not None:
self._grouping_string = self._grouping_string.replace('-', ':')
# Disable sum files if there is only one file
if len(self._data_files) == 1:
if self._sum_files:
......
......@@ -187,8 +187,8 @@ class SANSBeamCentreFinder(DataProcessorAlgorithm):
residueTB.append(self._calculate_residuals(sample_quartiles[MaskingQuadrant.Top],
sample_quartiles[MaskingQuadrant.Bottom]))
if(j == 0):
logger.notice("Itr " + str(j) + ": (" + str(self.scale_1 * centre1) + ", " + str(self.scale_2 * centre2) + ") SX="
+ str(residueLR[j]) + " SY=" + str(residueTB[j]))
logger.notice("Itr {0}: ( {1}, {2} ) SX={3:.5g} SY={4:.5g}".
format(j, self.scale_1 * centre1, self.scale_2 * centre2, residueLR[j], residueTB[j]))
if mantidplot:
self._plot_quartiles(output_workspaces, state.data.sample_scatter)
......@@ -200,8 +200,8 @@ class SANSBeamCentreFinder(DataProcessorAlgorithm):
if residueTB[j] > residueTB[j-1]:
position_2_step = - position_2_step / 2
logger.notice("Itr " + str(j) + ": (" + str(self.scale_1 * centre1) + ", " + str(self.scale_2 * centre2) + ") SX="
+ str(residueLR[j]) + " SY=" + str(residueTB[j]))
logger.notice("Itr {0}: ( {1}, {2} ) SX={3:.5g} SY={4:.5g}".
format(j, self.scale_1 * centre1, self.scale_2 * centre2, residueLR[j], residueTB[j]))
if (residueLR[j]+residueTB[j]) < (residueLR[j-1]+residueTB[j-1]) or state.compatibility.use_compatibility_mode:
centre_1_hold = centre1
......
......@@ -127,7 +127,7 @@ class SANSSave(DataProcessorAlgorithm):
# SaveNXcanSAS clashes with SaveNexusProcessed
self.add_file_format_with_appended_name_requirement(file_formats, SaveType.NXcanSAS, file_types,
[SaveType.Nexus])
[])
# SaveNISTDAT clashes with SaveRKH, both can save to .dat
self.add_file_format_with_appended_name_requirement(file_formats, SaveType.NistQxy, file_types, [SaveType.RKH])
......
......@@ -80,7 +80,7 @@ class SANSSaveTest(unittest.TestCase):
# Assert
expected_files = ["sample_sans_save_file.xml", "sample_sans_save_file.txt", "sample_sans_save_file_nistqxy.dat",
"sample_sans_save_file_nxcansas.nxs", "sample_sans_save_file.nxs",
"sample_sans_save_file.h5", "sample_sans_save_file.nxs",
"sample_sans_save_file.csv"]
expected_full_file_names = [os.path.join(mantid.config.getString('defaultsave.directory'), elem)
for elem in expected_files]
......
docs/source/images/ISIS_SANS_release313.png

112 KiB

docs/source/images/ISIS_reflectometry_release313.png

63.7 KiB

......@@ -136,7 +136,11 @@ Grouping
The following options are available for grouping output data:
Custom
A comma separated list can be entered to specify the groups, e.g. 1, 3-5, 6-8, 10.
Follows the same grouping patterns used in the :ref:`GroupDetectors <algm-GroupDetectors>` algorithm.
An example of the syntax is 1,2+3,4-6,7-10
This would produce spectra for: spectra 1, the sum of spectra 2 and 3, the sum of spectra 4-6 (4+5+6)
and individual spectra from 7 to 10 (7,8,9,10)
Individual
All detectors will remain on individual spectra.
......
......@@ -7,6 +7,9 @@ Reflectometry Changes
ISIS Reflectometry Interface
----------------------------
.. image:: ../../images/ISIS_reflectometry_release313.png
:align: right
:width: 800px
New
###
......
......@@ -9,6 +9,7 @@ ILL
---
* :ref:`LoadILLSANS <algm-LoadILLSANS>` is upgraded to load the modern nexus files from instruments D11, D22 and D33 at the ILL.
* :ref:`SANSMask <algm-SANSMask>` is extended to have a `MaskedWorkspace` property, to copy the mask from.
SNS
---
......@@ -17,10 +18,13 @@ SNS
ISIS SANS Interface
-------------------
.. image:: ../../images/ISIS_SANS_release313.png
:align: right
:width: 800px
New
###
* A string of wavelength ranges can now be specified. A reduction is then done for each wavelength range.
* :ref:`SANSMask <algm-SANSMask>` is extended to have a `MaskedWorkspace` property, to copy the mask from.
Improvements
############
......@@ -33,6 +37,7 @@ Improvements
* Improved error messages in the new GUI to be more obvious and clearer.
* Updated the naming of workspace groups in a sliced reduction.
* Updated old backend to mask by detector ID rather than spectrum number, improving reliability.
* NXcanSAS is now saved out with a .h5 extension so it can be read into SASView.
Bugfixes
########
......@@ -43,10 +48,12 @@ Bugfixes
* Fixed a bug where save_format was not being specified if a user file was entered for a row.
* Use gravity now defaulting to false.
* MASK/TIME and TIME/MASK now both work in new backend.
* SET Centre/HAB command is now correctly parsed into a seperate variable to SET Centre.
Features Removed
################
* Removed SaveNist as an option from both GUI's
* The Q range option on the beam centre tab was producing erroneous results so has been removed until it can be improved and fixed.
:ref:`Release 3.13.0 <v3.13.0>`
......@@ -48,7 +48,7 @@ ISISEnergyTransfer::ISISEnergyTransfer(IndirectDataReduction *idrUI,
mappingOptionSelected(m_uiForm.cbGroupingOptions->currentText());
// Add validation to custom detector grouping
QRegExp re("([0-9]+[-]?[0-9]*,[ ]?)*[0-9]+[-]?[0-9]*");
QRegExp re("([0-9]+[-:+]?[0-9]*,[ ]?)*[0-9]+[-:+]?[0-9]*");
m_uiForm.leCustomGroups->setValidator(new QRegExpValidator(re, this));
// Validate to remove invalid markers
......
......@@ -313,6 +313,13 @@
<property name="enabled">
<bool>true</bool>
</property>
<property name="toolTip">
<string>, allows you to specify additional indices. 1,2,4 will keep indices 1, 2 and 4 only.
: indicates a continuous range of indices. For example, 1:5 is the same as 1,2,3,4,5.
+ sums two spectra together. 7+9 will produce a single spectra listing the sum of 7 and 9, ignoring any others.
- sums a range of spectra together. For example, 3-8 is the same as 3+4+5+6+7+8.
</string>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
......
......@@ -586,13 +586,11 @@ const QString MWRunFiles::findFilesGetSearchText(QString &searchText) {
* @param searchText :: text to create search parameters from
*/
void MWRunFiles::runFindFiles(const QString &searchText) {
if (!searchText.isEmpty()) {
emit findingFiles();
emit findingFiles();
const auto parameters =
createFindFilesSearchParameters(searchText.toStdString());
m_pool.createWorker(this, parameters);
}
const auto parameters =
createFindFilesSearchParameters(searchText.toStdString());
m_pool.createWorker(this, parameters);
}
/** Calls cancel on a running instance of MonitorLiveData.
......
......@@ -6,7 +6,7 @@ set ( _mslice_external_root ${CMAKE_CURRENT_BINARY_DIR}/mslice )
ExternalProject_Add ( mslice
PREFIX ${_mslice_external_root}
GIT_REPOSITORY "https://github.com/mantidproject/mslice.git"
GIT_TAG 3c6eadfe38ea9d57dcacf57f5df2c150639a2779
GIT_TAG 82c4fae1356f770d5f8ad59edea4bd5f58206190
EXCLUDE_FROM_ALL 1
CONFIGURE_COMMAND ""
......
......@@ -31,7 +31,7 @@ class EQSANSInterface(InstrumentInterface):
"""
Defines the widgets for EQSANS reduction
"""
data_type = "Data files *.nxs *.dat (*.nxs *.dat)"
data_type = "Data files *.nxs *.dat *.h5 (*.nxs *.dat *.h5)"
def __init__(self, name, settings):
super(EQSANSInterface, self).__init__(name, settings)
......
......@@ -38,6 +38,13 @@ class BeamCentre(QtGui.QWidget, ui_beam_centre.Ui_BeamCentre):
# Attach validators
self._attach_validators()
# This feature is currently broken and not strictly needed so I am hiding this part of the GUI.
self.Q_limits.hide()
self.Q_from.hide()
self.q_min_line_edit.hide()
self.q_max_line_edit.hide()
self.Q_to.hide()
def _setup_log_widget(self):
self.log_widget = MantidQt.MantidWidgets.MessageDisplay(self.groupBox_2)
self.log_widget.setMinimumSize(QtCore.QSize(491, 371))
......
......@@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>1015</width>
<height>649</height>
<height>709</height>
</rect>
</property>
<property name="windowTitle">
......@@ -130,7 +130,7 @@
</widget>
</item>
<item row="5" column="3">
<widget class="QLabel" name="label">
<widget class="QLabel" name="Q_to">
<property name="text">
<string>to</string>
</property>
......@@ -151,7 +151,7 @@
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="label_3">
<widget class="QLabel" name="Q_from">
<property name="text">
<string>from</string>
</property>
......@@ -161,7 +161,7 @@
<widget class="QLineEdit" name="r_max_line_edit"/>
</item>
<item row="3" column="2">
<widget class="QLabel" name="label_2">
<widget class="QLabel" name="Q_limits">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The Q range which will be considered when finding the beam centre.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
......@@ -310,6 +310,26 @@
</item>
</layout>
</widget>
<tabstops>
<tabstop>lab_pos_1_line_edit</tabstop>
<tabstop>lab_pos_2_line_edit</tabstop>
<tabstop>hab_pos_1_line_edit</tabstop>
<tabstop>hab_pos_2_line_edit</tabstop>
<tabstop>component_combo_box</tabstop>
<tabstop>update_lab_check_box</tabstop>
<tabstop>update_hab_check_box</tabstop>
<tabstop>r_min_line_edit</tabstop>
<tabstop>r_max_line_edit</tabstop>
<tabstop>q_min_line_edit</tabstop>
<tabstop>q_max_line_edit</tabstop>
<tabstop>max_iterations_line_edit</tabstop>
<tabstop>tolerance_line_edit</tabstop>
<tabstop>verbose_check_box</tabstop>
<tabstop>COM_check_box</tabstop>
<tabstop>left_right_check_box</tabstop>
<tabstop>up_down_check_box</tabstop>
<tabstop>run_button</tabstop>
</tabstops>
<resources/>
<connections/>
</ui>
......@@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>695</width>
<height>252</height>
<height>297</height>
</rect>
</property>
<property name="windowTitle">
......@@ -58,6 +58,9 @@
</item>
<item row="0" column="2">
<widget class="QPushButton" name="browse_button">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string>Browse</string>
</property>
......@@ -133,6 +136,9 @@
</item>
<item row="2" column="0">
<widget class="QPushButton" name="time_button">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string>Time Integral</string>
</property>
......@@ -146,6 +152,9 @@
</item>
<item row="0" column="0">
<widget class="QPushButton" name="horizontal_button">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string>Horizontal Integral</string>
</property>
......@@ -160,6 +169,9 @@
</item>
<item row="1" column="0">
<widget class="QPushButton" name="vertical_button">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string>Vertical Integral</string>
</property>
......@@ -239,6 +251,21 @@
</item>
</layout>
</widget>
<tabstops>
<tabstop>run_input_line_edit</tabstop>
<tabstop>browse_button</tabstop>
<tabstop>detector_combo_box</tabstop>
<tabstop>period_line_edit</tabstop>
<tabstop>horizontal_button</tabstop>
<tabstop>horizontal_range_line_edit</tabstop>
<tabstop>horizontal_mask_check_box</tabstop>
<tabstop>vertical_button</tabstop>
<tabstop>vertical_range_line_edit</tabstop>
<tabstop>vertical_mask_check_box</tabstop>
<tabstop>time_button</tabstop>
<tabstop>time_range_line_edit</tabstop>
<tabstop>time_mask_checkbox</tabstop>
</tabstops>
<resources/>
<connections/>
</ui>
......@@ -43,7 +43,7 @@ def get_save_strategy(file_format_bundle, file_name, save_options):
file_name = get_file_name(file_format_bundle, file_name, "", ".xml")
save_name = "SaveCanSAS1D"
elif file_format is SaveType.NXcanSAS:
file_name = get_file_name(file_format_bundle, file_name, "_nxcansas", ".nxs")
file_name = get_file_name(file_format_bundle, file_name, "_nxcansas", ".h5")
save_name = "SaveNXcanSAS"
elif file_format is SaveType.NistQxy:
file_name = get_file_name(file_format_bundle, file_name, "_nistqxy", ".dat")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment