{26} Tickets fixed by Developer per milestone (copy) (11881 matches)

Tickets fixed are those resolved as fixed, duplicate invalid and wontfix are not included. This only count tickets that have been tested and closed.

Results (1 - 500 of 11881)

1 2 3 4 5 6 7 8 9 10 11
Id Type Created Modified Component Severity Priority Owner Reporter Cc Version Milestone Status Resolution Summary Description Keywords
#1 defect 14:47:26 1433364094081244 major Freddie Akeroyd Freddie Akeroyd closed fixed Create initial subversion directories
#6338 enhancement 15:35:43 1433376585180751 Framework major Vickie Lynch Peter Peterson Release 3.4 closed fixed Statistics of a peaks workspace

As told to me at a Dec 5, 2012 meeting with the Mandi instrument scientist, Leighton Coates, implement a new algorithm to calculate characteristics of a peaks workspace according to the attached document.

#5 enhancement 14:40:22 1433364096025053 major Dickon Champion Nick Draper Pilot closed fixed GAUDI: Raw file data object

Create a DataObject for storing a Raw file of histograms and errors into the TDS.

GAUDI, dataobject
#10 task 12:22:01 1433364098516427 major Nick Draper Nick Draper closed fixed User Requirements
#3 enhancement 14:37:01 1433364095037191 major Matt Clarke Nick Draper Pilot closed fixed GAUDI: Simple Text File Converter

Create a simple converter class to read a text file into an object in the TDS.

The EvtCols example in GAUDI appears to perform both read and write functionality. Although this may not be too helpful.

GAUDI, Converter
#4 enhancement 14:39:00 1433364095521332 major Matt Clarke Nick Draper Pilot closed fixed GAUDI: Raw File Converter

Create a converter capable of reading a RAW file and entering the file into an object in the TDS.

GAUDI, Converter
#6 enhancement 14:44:05 1433364096548948 major Dickon Champion Nick Draper Pilot closed fixed GAUDI: Integration Algrorithm

Create an integration algorithm for the GAUDI framework,

This should produce a single count number for each detector.

The result will need to be stored in a suitable DataObject in the TDS.

Talk to Anders to ensure that your algorithms are comparable.

GAUDI, Algorithm
#7 enhancement 14:46:48 1433364097034007 major Anders Markvardsen Nick Draper Pilot closed fixed LOQ: Integration Algorithm

Create an integration algorithm for the LOQ framework,

This should produce a single count number for each detector.

The result will need to be outputted into a text file, I suggest a simple tab separated text format.

Detector No \t Counts

Talk to Dickon to ensure that your algorithms are comparable.

#8 enhancement 14:49:19 1433364097550539 major Matt Clarke Nick Draper Pilot closed wontfix GAUDI: Derived Results Converter

Create a converter capable of saving the results of the Integration algorithm to disk.

I suggest a simple tab separated text file format.

Detector No \t Count

You will need to speak to Dickon to get info about the DataObject

GAUDI, Converter
#11 task 12:24:29 1433364604634328 major Nick Draper Nick Draper closed fixed Software Requirements Document
#12 enhancement 18:34:04 1433364605171481 major Freddie Akeroyd Freddie Akeroyd Pilot closed fixed GAUDI: Add ISIS Converter Code

Add in the code used to build an ISIS converter for Gaudi

#14 task 15:19:56 1433364606198374 major Freddie Akeroyd Nick Draper closed fixed Investigate continuous integration tools

Please take a look at CruiseControl and LuntBuild to see how well they will integrate into building C++.

#15 task 11:58:16 1433364606804500 major Dickon Champion Nick Draper closed wontfix Investigate Fortran usage within GAUDI

Investigate the use of FORTAN within the GAUDI framework. Look at wrapping fortran code within a GAUDI algoritm. Investigate issues such as accessing the data stores, creating and using data objects and passing these over to the TDS. Also look at any issues about accessing the other services.

#16 task 12:00:34 1433364607353760 major Anders Markvardsen Nick Draper Pilot closed fixed Investigate the Python - GAUDI integration

Look into how python code can be used with GAUDI. Investigate the options for using python to run the GAUDI framework interactively.

Create a python algorithm, look into using services creating and storing dataobjects on the TDS. Extracting data objects from the TDS both during and lagorithms and after.

#17 task 15:09:30 1433364607883134 major Nick Draper Nick Draper closed fixed Architectural Design Document
#18 enhancement 15:17:41 1433364608442900 major Russell Taylor Nick Draper Iteration 1 closed fixed Create initial code directories

As dicussed in the design meeting 10/09/2007

Code -Mantid --Kernel ---(repeated under each directory at this level) ---doc ---inc ---src ---test --Services --Algorithms --DataHandling --DataObjects

#19 enhancement 15:27:56 1433364608919469 major Russell Taylor Nick Draper Iteration 1 closed fixed Create the Algorithm Factory and Algorithm Base Class

Import as required from Gaudi

On the algorithm base class we will have to consider the interface as in GAUDI the execution was never public. For Mantid it will be.

Gaudi had sysInitialise calls Initialise sysExecute calls Execute etc.

We will probably need Initialise calls a private init Execute calls a private exec etc

#20 enhancement 11:04:02 1433364609409262 minor Russell Taylor Nick Draper Iteration 4 closed wontfix Create the Service Factory class

This should be an implementation of the DynamicFactory base factory class.

Talk to Russell and use his examples for file and method header comments and style.

#21 enhancement 11:07:45 1433364609951322 major Nick Draper Nick Draper Iteration 2 closed fixed Implement the Message Service

The message service should not be imported straight from GAUDI. It should be reimplmented using the C++ port of Log4J (the most common logging component around). Log4Cxx is hosted by apache and there is some documentation on their site, also most of the Java documentation will apply.

There may be a need to change the messageService interface and we will have to discuss this.

#22 enhancement 14:39:51 1433364610446993 major Laurent Chapon Nick Draper Iteration 1 closed fixed Create a base workspace object

This will need to provide an abstract iterator for accessing the data in the workspace (which will be provided in the concrete implementation).

Also stub properties for accessing

Detector

Sample

History

and SampleEnvironment data will be required.

#23 enhancement 14:41:54 1433364610922423 major Laurent Chapon Nick Draper Iteration 1 closed fixed create a Workspace2D Implementation

Create a concrete implmentation for a 2D workspace, inheriting from the Workspace class.

This will need to store Neutron counts (double) against time bins and detector number Also the values of the time bins will need to be recorded

Error information will need to be stored in another array.

#6348 enhancement 19:27:41 1433376610030655 Mantid minor Wenduo Zhou Peter Peterson campbellsi@… Release 2.4 closed fixed Event filtering items

These tasks were discovered when using SEQ_31276.

For FilterEventsHighFrequency

  • Have it inherit from DeprecatedAlgorithm rather than just having a comment in the algorithm description

For GenerateEventsFilter:

  • The TimeType variable is unclear in its usage/meaning
  • When splitting using SampleTemp from 276 to 288 in steps of 1, the tables generated start at 275.5 degrees rather than 276.
  • Change the name of the parameter SplittersInformationWorkspace to InformationWorkspace
  • Both the OutputWorkspace and the SplittersInformationWorkspace should agree on the common column heading of WorkspaceGroup and the values should match rather than be one off (information starts from zero, output starts from one)
  • For the run being used, there are several rows in the OutputWorkspace that have zero time between the start and stop (rows 3 through 7 in my test). They should not appear.

For FilterEvents

  • Events that are not filtered should go into a workspace named OutputWorkspaceBaseName_unfiltered
  • Similar to GenerateEventsFilter, change the name of SplittersInformationWorkspace
  • Change InputSplittersWorkspace to SplitterWorkspace
#11124 10:38:17 1433388263386488 Framework major Federico M Pouzols Federico M Pouzols Release 3.4 closed fixed Add class RemoteJobManagerFactory

And/or clarify the role of FacilityInfo::getRemoteJobManager. EDIT: Conclusion about this is: at some point it will be removed (#11373, after or with #11392). It is being replaced with the RemoteJobManagerFactory.

In the remote algorithms, RemoteJobManager objects are being created via ConfigService::Instance().getFacility().getRemoteJobManager(name)

Follow the design/diagram on slide 19 of https://github.com/mantidproject/documents/blob/master/Presentations/SOS18/Mantid%20HPC%20Challenges.pptx

This new factory should behave like other factories in Mantid. It provides a Create(name) method that returns an IRemoteJobManager object (as a shared pointer).

#25 enhancement 14:46:48 1433364611921643 major Russell Taylor Nick Draper Iteration 1 closed fixed LoadRaw data handling command

Create a Data handling command to load a specified RAW file and populate a 2D workspace.

Look at how this was done in the ISIS converter we wrote for GAUDI.

#26 enhancement 14:48:50 1433364612417163 major Anders Markvardsen Nick Draper Iteration 3 closed fixed Create a SaveCSV data handling command

Create a data handling command capable of saving to a (comman, tab, user specified) seperated file the contents for a workspace.

#27 enhancement 14:51:57 1433364612954365 major Russell Taylor Nick Draper Iteration 1 closed fixed Create a SimpleIntegration algorithm

The same algorithm as was created for the GAUDI pilot, but this time reading a 2D workspace from the Analysis Data Service, recoring the result in a 1D workspace.

#28 enhancement 14:05:44 1433364613435448 major Russell Taylor Russell Taylor Iteration 1 closed fixed Add a makefile

Add the Eclipse-generated makefile structure to the repository, along with a script to run the unit tests.

#29 task 13:38:44 1433364613934185 minor Russell Taylor Russell Taylor Iteration 1 closed fixed Add eclipse project settings files to repository
#31 task 11:24:11 1433364615021312 major Matt Clarke Nick Draper closed fixed Create an automated build and test environment

There is an available PC by my desk that should be suitable for this.

We should use LINUX (fedora or enterprise) for now.

We should install a continuous integration environment eg. cruisecontrol or luntbuild.

This will spot checkings to subversion and initiate a build.

The underlying compiler shoud be gcc, but the choice of build tools is flexible at the momnet, but we should aim for the same build mechanism to the available for the developers to use locally as well.

At the end of the build the unit tests need to be performed.

Should we consider SCons?

#32 enhancement 14:14:02 1433364615502995 major Russell Taylor Nick Draper Iteration 2 closed fixed Refactor an ObjectFactory out from the various factories

We currently have several Factories within Mantid (and this may grow further).

  • AlgorithmFactory (serves instances)
  • WorkspaceFactory (serves instances)
  • ServiceFactory (serves singletons)

The common factors of these algorithms should be refactored out to an object factory that the specific factories inherit from.

#33 enhancement 14:17:41 1433364616013327 major Dickon Champion Nick Draper Iteration 2 closed fixed Add an AlgorithmManager class to control the Algorithm instances

Add an AlgorithmManager class that inherits from AlgorithmFactory. The job of this class is to

  • provide a facade for the factory (code should not call the Factory Direct)
  • To maintain a list of all the algorithms that have been served out of the factory to allow the proper finilization and destruction.
  • You may want to implement this as an instance of a DataService
#34 enhancement 16:29:52 1433364616485350 major Matt Clarke Nick Draper Iteration 4 closed fixed Create the PluginManager and allow run time addition of libraries

Create a PluginManager to allow the loading of shared libraries at run time. This will require conditional comiplation as the required calls are OS specific.

Look at the following in GAUDI for inspiration DLLClassManager (in GAUDIsvc) and System (in GAUDIKernel) where the real code calls are hidden.

The ADD explains how I want the plug in to work http://svn.mantidproject.org/mantid/trunk/Documents/Design/Architecture%20Design%20Document.doc

#35 enhancement 11:09:26 1433364616963827 major Laurent Chapon Nick Draper Iteration 3 closed fixed Develop basic Geometry objects and framework

Develop geometry objects sufficient to support the definition of an instrument and suffiecient operation to allow the distances and angles to be calculated between any two objects.

It will need to be able to search for a detector by detector number.

#36 enhancement 11:12:31 1433364617472852 major Matt Clarke Nick Draper Iteration 4 closed fixed Develop the Python interface for Mantid

This will use BOOST.Python (and possibly the py++ code generatot to make things simpler).

The primary objects that will be exposed through the interface are

  • The FrameworkManager
  • The base Aglorithm Class
  • The base worksspace
  • Probably the workspace implementations.
#38 enhancement 09:47:12 1433364618510455 major Russell Taylor Russell Taylor Iteration 1 closed fixed Add getHistogramNumber to Workspace 2D

Add a method to Workspace2D to retriece the number of Histogram1D's stored in it.

#39 task 14:41:22 1433364619050004 major Russell Taylor Russell Taylor Iteration 1 closed fixed Add libget fortran library to the Third_Party directory
#40 enhancement 08:59:16 1433364619552189 major Russell Taylor Russell Taylor Iteration 1 closed fixed Have Workspace1D/2D getters return by reference
#64 enhancement 15:00:29 1433364631303150 blocker Russell Taylor Nick Draper Iteration 10 closed fixed Intergrate geometry surfaces into Geometry objects

This should be used to cover the implementation of the ObjComponent class, and the intergation there of the location and shape geometries

#50 enhancement 15:46:40 1433364624506304 major Anders Markvardsen Nick Draper Iteration 3 closed fixed Update DOxygen format for Mantid.DataHandling

As agreed and defined here http://www.mantidproject.org/Coding_Standards

#41 enhancement 10:19:45 1433364620064624 major Russell Taylor Nick Draper Iteration 3 closed fixed Create a convert To Wavelength algorithm

The algorithm converts all of the tof axes in a 2D workspace to there wavelength values.

The algorithm is wavelength = mn * (d1+d2)/tof

where mn is the mass of a neutron (this should be in a constants class d1 is the distance from the source to the sample d2 is the distance from the sample to the detector tof is the time of flight value.

We should use the std::franform function for efficiency

#42 enhancement 16:13:08 1433364620546278 major Nick Draper Nick Draper Iteration 2 closed fixed Add a visual studio solution file
#43 defect 16:22:59 1433364621085793 major Russell Taylor Russell Taylor Iteration 2 closed fixed Fix problems running Kernel unit tests under Windows.
#44 enhancement 15:58:02 1433364621582758 minor Russell Taylor Russell Taylor Iteration 2 closed fixed Turn the Algorithm base class into a virtual class
#45 enhancement 15:41:16 1433364622121948 blocker Russell Taylor Nick Draper Iteration 3 closed fixed Change to two part namspaces

Chane all of the classes to use two part Namespaces

  • Mantid::Kernel
  • Mantid::Algorithm
  • Mantid::DataHandling
  • etc

At the same time alter the DEF symbols for each .h file to include the namespace eg.

#ifndef MANTID_KERNEL_FRAMEWORKMANAGER_H_
#define MANTID_KERNEL_FRAMEWORKMANAGER_H_

#46 enhancement 15:43:42 1433364622604835 major Matt Clarke Nick Draper Iteration 5 closed fixed Get the windows build working with scons

This will include getting some of the required parts of Boost.python and python itself brought into ThirdParty.

#47 enhancement 15:44:52 1433364623087467 major Russell Taylor Nick Draper Iteration 3 closed fixed Update DOxygen format for Mantid.Kernel

As agreed and defined here http://www.mantidproject.org/Coding_Standards

#48 enhancement 15:45:29 1433364623560209 major Russell Taylor Nick Draper Iteration 3 closed fixed Update DOxygen format for Mantid.Algorithms

As agreed and defined here http://www.mantidproject.org/Coding_Standards

#49 enhancement 15:45:59 1433364624025920 major Laurent Chapon Nick Draper Iteration 20 closed wontfix Update DOxygen format for Mantid.Geometry

As agreed and defined here http://www.mantidproject.org/Coding_Standards

#51 enhancement 15:47:28 1433364624991861 major Matt Clarke Nick Draper Iteration 4 closed fixed Update DOxygen format for Mantid.DataObjects

As agreed and defined here http://www.mantidproject.org/Coding_Standards

#52 enhancement 15:48:30 1433364625464064 critical Freddie Akeroyd Nick Draper Iteration 3 closed fixed Reimplment LoadRaw using C++ components

Remove the usage of the fortran library.

#53 enhancement 15:53:45 1433364625973174 blocker Laurent Chapon Nick Draper Iteration 9 closed fixed Implement a Mapping table in the Geometry to allow grouping of detectors to spectra

Use a mapping table to allow algorithms to select which dectectors contribute to a spectra. This should allow

  • 1-1
  • 1-many
  • many dectectors to many sectra

We need the detector groupd returned from a call to be able to support the same geometry operations (length angles etc).

#56 enhancement 16:17:57 1433364627436136 major Anders Markvardsen Nick Draper Iteration 4 closed fixed Create a LoadLog algorthim (as a child to the LoadRaw algrothim)

Create a LoadLog algorthim (as a child to the LoadRaw algrothim).

This is to load the log files associated with a raw file. This will need to use a lookup table and best guesses to fill sample properties based on the log file name.

#57 enhancement 16:20:00 1433364627915155 major Stuart Ansell Nick Draper Iteration 4 closed fixed Iterators for workspaces

Implement STL iterators for workspace objects.

Ideally these should be able to operate as well as possible on the base workspace to generically iterate over the specific workspaces.

Also look at the BOOST range Iterator to see if we can allow the user to define there own pattern of iteration.

#58 enhancement 16:23:35 1433364628401399 minor Dickon Champion Nick Draper Iteration 5 closed fixed Workspace history

Create a History set of objects for a workspace (I have a uml diagram for ideas on the objects required).

You will have to extend the workspace factory to require a parent workspace to be provided when creating a new workspace (the data loading algorithms should pass null). This can be used to take references to the same sample and instrument objects and duplicate the History.

The end of the Execute party of an algorithm should append details of the Algorithm being run (not child algorithms) to the History.

#59 enhancement 16:26:52 1433364628895633 critical Dickon Champion Nick Draper Iteration 4 closed fixed Implement simple workspace operations (+,-,*,/, maybe ^)

These should be implmented as operator overloads that simply call algorithms to do the job.

We need to define a chart of what operations between which workspaces are actually valid and enforce this.

Then it is possible that the use of STL iterators and function pointers may allow this to be done in a generic manner.

#60 enhancement 10:43:26 1433364629376438 major Nick Draper Nick Draper Iteration 3 closed fixed Implement an exception hierarchy
#61 enhancement 16:39:54 1433364629848257 major Nick Draper Nick Draper Iteration 3 closed fixed Add a main project
#62 task 11:32:45 1433364630317047 blocker Nick Draper Nick Draper Iteration 3 closed fixed Seperate Mantid API classes from Kernel classes

several classes should not be in the kernel move these into an PI library

#63 enhancement 10:37:04 1433364630789000 major Nick Draper Nick Draper Iteration 3 closed fixed Provide a stream interface to the logging class

This will simplify use of the logging class.

#3458 enhancement 21:39:43 1433368745658566 Mantid major Andrei Savici Stuart Campbell Release 2.2 closed duplicate Add option in XML grouping file to specify target spectrum ID for a group in GroupDetectors

Allow the user (via the XML group file) to specify what spectrum ID they want a given group to be - overriding the default of using the first spectrum number in the grouped spetra/detectors.

#3621 defect 17:02:53 1433368826160381 MantidPlot major Stuart Campbell Stuart Campbell Iteration 30 closed worksforme Graphically grouping a large number of detectors is slow

If you graphically select a large number of spectra to group together, then it seems to take a long time.

I will keep this ticket until I add a use case.

#3910 task 22:33:04 1433370543163579 Mantid critical Russell Taylor Russell Taylor Release 2.0 closed fixed Eliminate the use of CNCS_7860 in unit tests

By this I mean CNCS_7860.nxs & CNCS_7860_event.nxs - the neutron_event file can stay.

Ahead of the move to git for revision control, it would be good to prune the size of the AutoTestData directory and these 2 files are among the largest in there.

Ticket #1914 has some relevant information.

#65 enhancement 10:50:36 1433364631792868 major Russell Taylor Nick Draper Iteration 4 closed fixed Correct Doxygen warning backlog
#6362 enhancement 10:44:34 1433376644922771 VATES major Alex Buts Alex Buts Release 2.4 closed fixed Move workspace file based operations to ISaveable class and simplify file-based operations

Current structure of fileBased event workspace is very complex. The file based/ not-file based operations are controlled by five boolean parameters, and user has to set all of them in correct order to get working file-based algorithm.

The Kernel::DiskBuffer tests introduces some algorithm to work with file based workspaces and these algorithms are repeated within different MDAlgorithms.

There are two independent modes of working with file based workspaces and it is unclear which one to use.

The purpose of this ticket is to simplify the construction of file-based MDWorkspaces, move main file-related functionality into ISaveAble DiskBuffer couple of objects and simplify MDBoxes/MDGridBoxes removing this functionality from them.

#6459 enhancement 17:15:41 1433376885326956 Framework critical Martyn Gigg Alex Buts Release 2.6 closed invalid LiveData listener lives progress bar to rot, and other algortims display on this bar not closing it either

when liveDataListener is cancelled, it progress bar remains on its place telling a user that it is still collecting the data.

All following algorithms are then display their progress on this bar not indicating their completion correctly.

Checked on Windows 7 To reproduce:

Start StartLiveData set up reasonable update time and see how the progress goes Open algorithm details through Details near the bar and cancel the algorithm. The progress bar remains frozen despite message "Cancelled by User" appears

Other algorithms do not seems have this annoying feature.

Maintenance
#66 enhancement 16:03:51 1433364632255830 major Russell Taylor Nick Draper Iteration 4 closed fixed Remove unnecesary GAUDI interface classes

Specifically Iinterface should go.

Also consider IAlgorithm (and use the base clas instead)

#67 enhancement 08:52:40 1433364632754937 major Freddie Akeroyd Freddie Akeroyd Iteration 4 closed fixed Tidy up LoadRaw
#8401 enhancement 16:20:54 1433381714628588 Framework major Jay Rainey Jay Rainey Release 3.1 closed fixed [ICAT] Update query language used for searching

In order to implement paging I will need to update the querying language used for searching to use the ICAT 4.3 JPQL syntax.

ICAT, ICAT4
#68 enhancement 08:56:48 1433364633252322 major Nick Draper Nick Draper Iteration 4 closed fixed Improve memory management using smart pointers

Look at every bare pointer we are using and consider if it can be replaced by a scoped_ptr, shared_ptr of a refControl pointer (This may get renamed cow_ptr).

#9130 defect 12:09:07 1433383524915234 SANS major Peter Parker Gesner Passos Backlog assigned SANS Diagnostic does not work with SANS2D
  • Open SANS Interface
  • Click Browse and find the file: systemtests/Data/SANS2D/SANS2D00002500.nxs. Obs, you can not only write 2500 #6043
  • click under front-detector Horizontal Integral and you get exception.
#69 enhancement 10:58:33 1433364633724047 major Dickon Champion Nick Draper Iteration 4 closed fixed Remove the useage of StatusCode

This is a hangover from GAUDI code and should be removed and replaced by throwing exceptions.

#70 enhancement 10:23:02 1433364634195282 major Nick Draper Nick Draper Iteration 4 closed fixed Remane RefControl to cow_ptr

Copy on Write pointer was agreed was more descriptive name than RefControl. The pointer has also been moved from Mantid to Mantid::Kernel Nameespace

#71 enhancement 14:07:05 1433364634664069 major Russell Taylor Nick Draper Iteration 4 closed fixed Handle the differences between parent and child algorithms

Ensure that child algorithms are created, run, results are available to the parent, and are destroyed correctly.

#73 defect 08:53:42 1433364635657379 trivial Russell Taylor Russell Taylor Iteration 4 closed fixed Clear compilation warnings for tests

SimpleIntegrationTest & TOFtoWavelengthTest produce warnings about a "comparison between signed and unsigned integer expressions" when -Wall is enabled during compilation.

#77 enhancement 11:48:27 1433364637588158 major Anders Markvardsen Nick Draper Iteration 6 closed fixed Create a data storage format for instrument data

We need a defined format as to how we will save and load the geometry and status information of the instrument.

This will need input from Stuart and Laurent - for knowledge of the geometry tree and required properties Freddie - For how nexus stores this data

#78 enhancement 11:49:46 1433364638072206 major Anders Markvardsen Nick Draper Iteration 6 closed fixed Rework the LoadInstrument Data Handling Command

This will need rewriting in light of the format defined for #77.

#79 enhancement 11:51:20 1433364638547906 major Roman Tolchenov Nick Draper Iteration 8 closed fixed Get QTIPlot compiling under Linux and Windows

This may need the purchase of academic licenses for QT (to get the VS builds of QT).

#80 enhancement 11:52:17 1433364639012574 major Matt Clarke Nick Draper Iteration 5 closed fixed Extend QTIPlot to be able to act as a front end to our framework

This could be though either the C++ or Python interface.

#81 enhancement 11:53:02 1433364639570389 major Matt Clarke Nick Draper Iteration 7 closed fixed Extend QTIPlot to be able to us our workspaces as a data source for 1D and 2D histograms
#82 enhancement 11:58:43 1433364640044419 major Dickon Champion Nick Draper Iteration 5 closed fixed Remove the Final() concept from algorithms

The Final overload in algorithms is not required and is therefore confusing. This should be removed.

At the same time the vector of sub algorithms held within and algorithm itself is not required as they can be allowed to drop out of scope at the end of the exec block.

#83 enhancement 12:04:49 1433364640540760 major Laurent Chapon Nick Draper Iteration 7 closed wontfix Geometry - Separation of Item location from Item description

as discussed

#84 enhancement 10:14:16 1433364641032398 critical Russell Taylor Dickon Champion Iteration 5 closed fixed Benchmark and improve performance of + operation
#85 enhancement 18:19:36 1433364641517001 major Freddie Akeroyd Freddie Akeroyd Iteration 5 closed fixed Return additional information from LoadRaw
#86 defect 12:09:14 1433364641984220 minor Russell Taylor Russell Taylor Iteration 5 closed fixed Rework triple_iterator to be const correct

When using the current triple_iterator as a const_iterator it does not use const iterators underneath to access the workspace data. Thus the const versions of dataX. dataY etc. in the workspaces and in Histogram1D are never actually called.

#6392 enhancement 11:09:33 1433376719177024 VATES major Owen Arnold Owen Arnold Release 2.5 closed fixed Review Rebinning Controls on Slice Viewer

Inconsistent, and hard to understand controls in the SliceViewer

  • The Rebin button rebins only the current slice point within the viewing extents.
  • The refresh button has to be invoked every time the view is panned or zoomed.
  • The auto rebin button automatically applies the refresh.
  • The lock button when unlock auto rebins to the current slice point (as sliders are moved)

The point of this ticket is to get agreement of what the new behaviour should be like. I'm going to generate some mockups and share them with a few selected people from both sites. Work can then commence (probably under a separate ticket) once a specification has been agreed upon.

#6409 task 11:32:28 1433376761472877 GUI blocker Roman Tolchenov Nick Draper Release 3.4 closed worksforme Unscripted testing DAE loading ISIS

See the items at the bottom of this page http://www.mantidproject.org/Unscripted_Manual_Testing

Record in the comments what environment was used

#88 enhancement 14:25:06 1433364642924588 major Nick Draper Nick Draper Iteration 6 closed fixed Allow the option of using different error calculation models

Look at the WorkspaceValueData diagram in MagicDraw.

This will need to be able to support GaussianErrors PoissonErrors BayesianErrors

But GaussianErrors will be the only one implmented for now.

Gaussian, Poisson, Bayesian, errors
#89 task 11:13:23 1433364643395390 major Nick Draper Dickon Champion Iteration 6 closed fixed binary operation output workspace problem

If i have two input workspace2D objects which contain data of dimension (X,Y)

the binary operation will create an output workspace2D of dimension (X-1,Y)

while the operation will fill data for the output workspace, the output is the wrong shape, and somewhere data will be lost

a unit test would have to be incorporated to test for the size of the output workspace to spot it

#90 enhancement 14:02:12 1433364643863230 major Freddie Akeroyd Freddie Akeroyd Iteration 5 closed fixed Use MinGW for Windows build
#91 enhancement 14:02:38 1433364644371071 major Nick Draper Nick Draper Iteration 5 closed fixed create windows build server
#92 defect 13:55:02 1433364644865536 major Freddie Akeroyd Freddie Akeroyd Iteration 5 closed fixed Missing template instantiation in Vec3D class

Only shows up with gcc -finline-limit=5000

#93 enhancement 14:30:15 1433364645319623 major Dickon Champion Nick Draper Iteration 6 closed fixed Implement a Rebin Algorithm

Look to the implmentations within LibISIS and opengenie for inspiration

#95 enhancement 12:02:55 1433364646257473 major Matt Clarke Nick Draper Iteration 6 closed fixed Organize the inclusion of .Properties files

At the moment we have properties files that are all over the place, and a build system that copies every properties file from each directory into the build\tests directory in a random order with each overwriting the last (see the tests\sconscript)

This needs to be rationalised so that we have 1 directory with a properties file and all build and test running mechanisms copy the file from that location.

Theis should include the scons build and tests, the runtests.sh and runtests.bat files.

#96 enhancement 18:43:51 1433364646742103 major Nick Draper Freddie Akeroyd Iteration 6 closed fixed Singleton problems

It looks like you can create more than one instance of a singleton on Windows in Mandid, but not on linux. I believe this is due to all classes and data being marked DLLExport and none DLLImport so they all create a separate instance variable for the singleton.

#97 enhancement 08:57:41 1433364647253076 major Freddie Akeroyd Freddie Akeroyd Iteration 6 closed fixed Allow option of building Mantid as a single shared library
#98 task 10:41:05 1433364647751317 major Freddie Akeroyd Freddie Akeroyd Iteration 6 closed fixed Scons is out of date
#99 enhancement 10:56:21 1433364648237416 major Russell Taylor Nick Draper Iteration 6 closed fixed Implement a ArrayProperty class

This should be a templates class to accept doubles, ints and maybe strings (not if it causes extra trouble).

The property should parse string input seperating on commas to create the seperate elements. These then need to be cast and stored in an internal vector.

Once this is completed let Dickon know as he wnats to use this in his Rebin algorithm.

#100 enhancement 16:11:21 1433364648754508 Mantid trivial Nick Draper Iteration 27 closed fixed General tidying up of doxygen comments and lots of other stuff.

Just a generic ticket for checking in tidied up doxygen comments.

doxygen
#102 defect 15:50:56 1433364649728046 major Nick Draper Nick Draper Iteration 6 closed fixed TOF2Wavelength reporting incorrect distances for HET detectors

It is reporting 6m ish where they should all be about 4m.

#103 enhancement 14:08:29 1433364650371280 major Russell Taylor Nick Draper Iteration 7 closed fixed Create a virtual (or effective) detector class

This should inherit from and exhibit all behaviour of a Detector, but should also allow you to add one or more detectors that this is being the effective detector for.

These sub detectors should be used to work out average positions etc.

You should also be able to mark an effective detector with a boolean isDead flag.

#104 enhancement 14:12:52 1433364650873224 major Russell Taylor Nick Draper Iteration 7 closed fixed Create an Algorithm to mark a detector or range of detectors as dead

This needs to create a dead effective detector record in the detector lookup table, and also it should zero the data of the affected spectra.

Properties This should use an inout workspace property. An ArrayProperty - Distinct spectra numbers to blank. (optional) MinSpectraNo and MaxSpectraNo (optional)

The algorith should add together the array and the range specfied and mark those spectra as dead.

#105 enhancement 14:16:11 1433364651351737 major Russell Taylor Nick Draper Iteration 7 closed fixed Create an algorithm to Group detectors together into a single virtual detector

The algorithm needs to combine the data and error values under a new spectrum number. A virtual detector needs to be created and linked to all of the real detectors involved.

Parameters

  • An InOut workspace property
  • An array of spectra to group
#106 enhancement 14:18:07 1433364651816037 minor Laurent Chapon Nick Draper Iteration 11 closed fixed Model a full instrument in xml and load it into Mantid

Choose a full instrument to model as accuratly as is reasonably possible. Create the model in xml and ensure that it can bbe loaded into Mantid.

I suggest you choose one that we have a sample data file for.

#6421 task 15:18:41 1433376791340292 Mantid critical Russell Taylor Russell Taylor rgmiller@… Release 2.4 closed fixed Guard against the absence of the run_start property

The LogManager::startTime() method throws an (undocumented) exception if the run_start (and the start_time) property is missing. With a 'normally' loaded file it's always (I think) there, but it's conceivable that it isn't with a live data stream.

This mainly shows up as a problem when trying to view the sample logs, if there are any time series property logs there. The relevant method is MantidUI::importNumSeriesLog.

#6429 enhancement 16:17:30 1433376811130452 VATES major Alex Buts Alex Buts Release 2.5 closed duplicate Modify disk buffer size calculations to evaluate deleted objects size correctly and estimate the speed of the deletion

Current DiskBuffer implementation not uses the size of the object which was inserted in the buffer to estimate the free space changes when the object was deleted.

The size of the new object is used instead.

In addition to that (it looks like) the object deletion uses search in the cache to remove object from the cache. Despite search is logarithmic vrt the buffer, constant search would be more appropriate for this situation.

These things request investigation and improvement.

#108 enhancement 14:54:33 1433364652776817 minor Nick Draper Nick Draper Iteration 8 closed fixed Create a WorkspaceSingleValue class

The binary operations will need to be checked/extended to handle this

#109 task 16:27:42 1433364653241989 major Dickon Champion Iteration 6 closed fixed array input to define selective population of raw file
#111 enhancement 16:36:44 1433364654196633 major Matt Clarke Nick Draper Iteration 7 closed fixed Can we bind through python and C++ to the same instance of the same DLL?

This would be really good if we could!

The current interface through python will work for running algorithms and extracting data for plotting.

However we also have a requirement to display the internal geometry of the instrument in an OpenGL 3D view. This would require access to the geometry objects of the instrument. while we could add these to the Python API it would be quite a lot of classes, and performance extracting the data might be a problem.

If we could have a C++ and Python binding to the same in memory instance of Mantid then we could issue commands through Python and extract the data through C++. I think this would ive us the best of both worlds, I'm just not sure if it is possible.

#112 enhancement 15:29:57 1433364654670883 minor Russell Taylor Russell Taylor Iteration 6 closed fixed Add support for a PropertyWithValue of type boolean

Involves adding the template specialisation to PropertyManager.

#113 defect 15:40:36 1433364655136087 minor Russell Taylor Russell Taylor Iteration 7 closed fixed Fix ConfigService test failure on Windows build server

The method ConfigService::getHomeDir() has suddenly started failing on the Windows build server for some reason. Seems like it will most likely never be needed anyway, so remove it.

#115 enhancement 15:32:21 1433364656129011 major Lakshmi Sastry Nick Draper Iteration 8 closed fixed Geometry - Removed Deprecated code

Go through the classes in the deprecated directory one by one. If it is really necessary integrate it into the normal mantid code (ask if not usre where). If it can be removed then delete it and fix the remaining code.

The XML classes should be removed.

Geometry, Deprecated
#116 enhancement 15:33:54 1433364656611063 critical Sri Nagella Nick Draper Iteration 9 closed fixed Geometry - Complete unit tests

Complete the unit tests for each class in the Geometry project. TestSphere and TestV3D and TestCylinder give examples of the coverage expected.

The following classes remain requiring tests

  • Acomp.h
  • BnId.h
  • MapSupport.h
  • Material.h
  • mathSupport.h
  • RegexSupport.h
  • RotCounter.h
  • Rules.h
  • SurfaceFactory.h
#117 enhancement 11:24:50 1433364657085262 major Roman Tolchenov Nick Draper Iteration 8 closed fixed Extend UserAlgorithms project to include more examples

Provide a seperate build.bat and sconstruct that will build just UserAlgorithms Additional example Algorithms

  1. Parameters - Accessing input and out parameters
  2. Iterating over a workspace values
  3. Creating a new workspace after some manipulation
  4. Using a sub algorithm
#118 enhancement 11:25:52 1433364657581723 major Sri Nagella Nick Draper Iteration 12 closed fixed Develop a 3D visualization qt widget for the instrument geometry.
#119 enhancement 11:29:58 1433364658078218 major Anders Markvardsen Nick Draper Iteration 8 closed fixed Attempt to load a default geometry from the RAW file if no xml definition available

LoadRaw should

  • Extract the intrument name from the file
  • Attempt to load the file from the instrument definition directory (should be defined in the config file)
  • If not present then ti should use the L2 and 2theta values available in the RAW file to place detectors in a best guess position. This will allow the units change code to work without an instrument definition.
#120 enhancement 11:33:14 1433364658561289 major Matt Clarke Nick Draper Iteration 8 closed fixed Extend the C++ integration of QTIPLOT and Mantid

Create an Execute Algorithm dialog that lists all available algorithms. After selection the app should query the required parameters and display a custom dialog with suitable controls for each parameter that needs data. Then the execution should be either run or cancelled.

#121 enhancement 11:36:45 1433364659049254 major Dickon Champion Nick Draper Iteration 8 closed fixed Adjust FrameworkManager exec and create to accept parameter strings using ordinal locations

Currently the Framework Manager accepts a parameter string into execute and create algorithm. This is formatted like this

Param1=34;Param2=Thiry;Param3=bob

This should be altered so the following is ALSO possible "34;Thirty;bob"

i.e. If the Param name is not specified it uses the ordinal position in the string and matches it to the ordinal position of the parameter.

#122 enhancement 11:41:40 1433364659515068 major Dickon Champion Nick Draper Iteration 8 closed fixed Alter Algorthim to Produce Useful logging before and after exec

The Algorithm base class should log at INFO level the following:

  • Algorithm Name and version
  • Parameters names and values (and if the values is the default)

just prior to execution.

and it should also log

  • Completion status (successfull, failed etc.)
  • Execution duration

just after execution.

Much of this data is already compiled for the AlgorithmHistory records, so you may be able to use some of that.

#123 enhancement 11:32:31 1433364659996360 minor Matt Clarke Iteration 8 closed fixed Reduce header dependencies

Mantid takes ~15 minutes to build from scratch. Small changes to .h files can lead to lots of recompiling = quite painful.

#6431 enhancement 21:59:37 1433376816061570 Mantid major Vickie Lynch Dennis Mikkelson petersonpf@…, lynchve@… Release 2.4 closed duplicate ConvertToMD segfaults when run through NX

This is a peculiar problem. If the following simple script is run through an NX session on the SNS analysis cluster, ConvertToMD will seg fault. If the same script is run through an SSH session instead, it works correctly. The script is:

import sys

sys.path.append("/opt/mantidnightly/bin")

from mantidsimple import *

file_name = "/SNS/TOPAZ/IPTS-4822/0/3857/NeXus/TOPAZ_3857_event.nxs"

LoadEventNexus( Filename=file_name, OutputWorkspace='TOPAZ_events', FilterByTofMin='500', FilterByTofMax='16000' )

ConvertToMD( InputWorkspace='TOPAZ_events', OutputWorkspace='TOPAZ_MD', QDimensions="Q3D",

dEAnalysisMode="Elastic", QConversionScales="Q in A-1", LorentzCorrection='1', MinValues="-50,-50,-50", MaxValues="50,50,50", SplitInto='2', SplitThreshold='50',MaxRecursionDepth='12')

sys.exit()

#7638 enhancement 10:51:23 1433379814477310 SANS major Gesner Passos Gesner Passos Release 3.0 closed invalid Workaround for log nperiods for SANS2D

Loading SANS2D event files there is no nperiods log information. This cause the reduction to fail when it asks to :

ws.getRun().getLogData('nperiods').value

Make these calls dependend on the existence of nperiods, if it does not exists, assume 1 as default.

#125 enhancement 11:56:12 1433364660944315 major Nick Draper Nick Draper Iteration 8 closed fixed Add Categories to Algorithms

This is to allow sensible categorization of algorithms.

Categorization strings look like

  • "Gengeral"
  • "Misc"
  • "DataHandling\Logs"

At the moment this is set for an algorithm at Compile time.

#10285 14:19:20 1433386370067289 Framework major Anders Markvardsen Karl Palmen Release 3.3 closed wontfix Unit test for LoadANSTOHelper maintenance
#126 enhancement 13:36:05 1433364661420633 minor Sri Nagella Nick Draper Iteration 12 closed fixed Allow coloured overlays of simple data on the 3D geomtery visualization widget
SRD Reference Description Necessity
S5.2.2 The tool will be able to provide colour overlays of simple data onto the detectors in the 3D graphical view. D

The data would be from workspaces ans would be provided as a single value per detector.

#127 enhancement 16:06:00 1433364661887428 critical Nick Draper Nick Draper Iteration 10 closed fixed Extend the MantidPythonAPI for Python use

We need to add

  • the ability to create any algorithm
  • The ability to set parameters on algorithms
  • the ability to execute algorithms
  • The ability to extract 2D workspaces (prefereable any workspace)
  • Access to the data on 2D workspaces

This should be avaivable through providing a python interface to the following classes FrameworkManager Parameter IAlgorithm Algorithm Instrument Sample WorkspaceHistory AlgorithmHistory AlgorithmParameter

#128 defect 15:14:09 1433364662354326 major Russell Taylor Russell Taylor Iteration 8 closed fixed Fix ManagedWorkspace2D

ManagedWorkspace2D is broken! LoadRaw & a number of other algorithms fail if a ManagedWorkspace is being used for the underlying data storage. This problem also manifests itself in qtiplot if an attempt is made to load a large dataset.

#130 enhancement 13:25:40 1433364663301293 blocker Laurent Chapon Nick Draper Iteration 9 closed fixed Populate the Spectra Detector map during LoadRaw
#131 enhancement 12:28:01 1433364663758927 major Russell Taylor Russell Taylor Iteration 8 closed fixed Update GroupDetectors and MarkDeadDetectors to use SpectraDetectorMap
#132 enhancement 09:49:51 1433364664272913 major Roman Tolchenov Nick Draper Iteration 8 closed fixed Integrate building of QTIPlot and installer into the windows build server
#133 enhancement 12:16:31 1433364664734461 major Nick Draper Nick Draper Iteration 8 closed fixed Add the ability to filter individual logging channels by priority level

Added a FilterChannel

#134 enhancement 12:10:49 1433364665257122 minor Russell Taylor Russell Taylor Iteration 10 closed fixed Sort out the copying of Workspace members (Instrument etc.) to algorithms' output workspaces

At the moment, the copying of workspace members (Instrument, SpectraDetectorMap, Sample, History, Unit) from input to output workspaces within algorithms is very random. Indeed, in most cases the information is lost when it probably shouldn't be. We need to develop tools (probably within the Algorithm Factory) to make it simple for an algorithm developer to get his output workspace holding the correct information.

Related to this is the issue of what happens when Input and Output workspace names are the same (or more generally if the output workspace is set to a name that already exists in the ADS). Should it just be completely overwritten (what currently happens unless an algorithm happens to checks the ADS itself) or just have its data changed?

#135 enhancement 14:35:34 1433364665740116 major Russell Taylor Russell Taylor Iteration 9 closed fixed Introduce more flexibility to the axes of a 2D workspace

At present, a Workspace2D has a spectra number attached to its Y axis and only the X axis can have a unit. We want to make things more flexible, so that it's possible to have a workspace with units attached to both axes.

#136 enhancement 17:41:02 1433364666216373 critical Roman Tolchenov Nick Draper Iteration 11 closed fixed Allow data to be loaded from the DAE

Talk to Freddie about this

#137 enhancement 17:49:45 1433364666729129 minor Nick Draper Pilot closed wontfix Poisson statistics

We need to enable poisson statistics for at least +,-,*,/

Requested by Francis Pratt - Muons

Further investigation suggests that we do not need an E2 value for Poisson statistics.

#138 enhancement 17:50:29 1433364667239761 major Matt Clarke Nick Draper Iteration 14 closed fixed FB Asymmetry algorithm

Poperties input workspace output workspace Forward Spectrum (index) Backward Spectrum (index) Alpha

The algorithm will then perform the following and output the result as a workspace2D containing a single spectrum.

For each bin

F-aB/F+aB

Where

  • F=forward value
  • B=Backward value
  • a=alpha
#140 enhancement 17:53:53 1433364668192635 critical Roman Tolchenov Nick Draper Iteration 10 closed fixed More flexible rebinning

Allow the input of all of the real bins boundaries as an array.

Also look into rebunching and regrouping (Toby Perring)

Update: Rebunching has been completed. Just need to do ReGrouping - Once Dickon has left, Toby Perring will be able to explain ReGrouping

#141 enhancement 17:54:33 1433364668667648 critical Russell Taylor Nick Draper Iteration 9 closed fixed Allow the reading of multiperiod data

For now split multiperiod data into multiple workspaces

#744 enhancement 17:28:04 1433364966147590 major Martyn Gigg Martyn Gigg Iteration 18 closed fixed Add help button to LoadDAE dialog
#6462 enhancement 19:20:57 1433376893031988 Mantid critical Wenduo Zhou Wenduo Zhou Release 2.5 closed fixed Enable GenerateEventsFilter to handle integer-type logs

Some sample logs are of integer-type. Enable GenerateEventsFilter to handle this type of logs, because FilterByLogValue() has been enabled to do so (ticket #6267) and thus TimeSeriesProperty.

Test Information

Find an event file containing and integer typed time-series log and try filtering based on the value of that log. Such files/logs are hard to find, but LET00006278.nxs in the systemtests/Data directory is one (integer logs in there include total_counts). ADARA HYSPEC files (HYSA) also have some integer logs.

Previously, GenerateEventsFilter will quit immediately as it detects the specified log is not of double-type.

#8847 task 15:06:40 1433382820664964 SANS critical Peter Parker Gesner Passos peter.parker@… Backlog assigned SANS2D Tube Detectors - Masking Umbrella Ticket

Umbrella ticket used to cover all work to support masking the new SANS2D tube detectors.

Child of #8921, which covers all work necessary for the new layout of the instrument.

#145 enhancement 10:52:19 1433364670704822 major Roman Tolchenov Nick Draper Iteration 9 closed fixed Extract error values into qtiplot tables when converting matrix rows to tables

We should add extra columns to the tables for the error values

#150 enhancement 11:44:08 1433364673168220 major Russell Taylor Nick Draper Iteration 9 closed fixed List Parameters

We seem to need the concept of a List Parameter where the user needs to specify which of a defined list of possibilities he sets as the parameter.

The best example at the moment is the selection of the Target Unit in the Unit Conversion Algorithm. The list is defined (the current contents of the AlgorithmFactory), and the user needs to select one member of the list. Also etype may well fint into this type of paramter. From the user interface side we would need enough information to be able to use a drop down list box.

Therefore we would need to:

  1. Set and Extract all of the possible values
  2. Validate that the selected value is one of the values
  3. Set and extract the seleected value (in the same way all other parameters do)
  4. Extract a default initial value.

Could this be done with a Validator?

#146 enhancement 10:53:14 1433364671202337 major Roman Tolchenov Nick Draper Iteration 9 closed fixed QTIplot crashes when attempting to perform a Gaussian fit of 1D data

Reproduction steps

  1. open QTIplot (Mantid build)
  2. In Table1, Column 1, right click “Set column values”
  3. In box reading col(“1”)= (i-1)/29-0.5 -> Apply
  4. Click on arrow to get col(“2”)= and type exp(-col("1")^2/0.1^2) ->Apply
  5. Close dialog.
  6. Right-click on col(“2”) and Plot->Scatter
  7. Click on Graph window
  8. Analysis-FitGaussian
#148 enhancement 10:56:49 1433364672207715 minor Nick Draper Iteration 20 closed duplicate Algorithms for incident beam correction

Need to talk to Paolo Radaelli for a better definition of this

#149 enhancement 11:26:14 1433364672685187 major Laurent Chapon Nick Draper Iteration 9 closed fixed Create an Instrument Data Service (IDS)

Instruments should be 'Owned' by a data service (IDS) in a similar way to Workspaces.

The Load Instrument Algorithm should check that a suitable intstrument has not already been loaded with the data service before loading it fresh.

Also we need to add a fuinction to an Intrument (or workspace) to create an unique copy of the instrument for this workspace. This would:

  • Copy the existing instrument to a new one (all the way down the tree)
  • Register the new instrument into the IDS
  • Clear the IDS when the framework manager clear command occurs
  • Check that all new workspace creations in all algorithms pass on the reference to the instrument as appropriate.
#151 enhancement 12:10:34 1433364673655007 major Roman Tolchenov Nick Draper Iteration 9 closed fixed Capture and display log information in QTIPlot

This may require the writing of a new log Channel, but this can be done easily see FilterChannel in MantidKernel for Reference.

Unless you have a better suggestion I suggest we pass the messages up through publishing them as a BOOST Signal.

This can be subscribed to a QT slot within QTIPlot. The slot code should then handle displaying the message. I suggest a scolling textbox similar to the display you get when performing a curve fit in QTIPlot.

#152 enhancement 12:36:39 1433364674128604 minor Freddie Akeroyd Freddie Akeroyd Iteration 12 closed fixed Add Matlab Bindings to MANTID

Mantid need MATLAB bindings to provide high quality graphics for users who require it and who are already familiar with MATLAB

#153 enhancement 13:51:55 1433364674602856 minor Russell Taylor Russell Taylor Iteration 9 closed fixed Turn the concrete Unit classes into singletons

With the introduction of the axis class, Unit (and it's subclasses) do not hold any member data. We should not, therefore, be creating multiple instances of concrete units to attach to the various axes of various workspaces. Instead, the Unit Factory should just hand out a pointer to the same instance every time a unit is created. Despite the title of this ticket, this should probably be achieved by modifying the factory to simply hand out the address of a concrete unit if it's previously been created, rather than by modifying the unit classes themselves.

#154 enhancement 11:56:25 1433364675126310 major Matt Clarke Nick Draper Iteration 10 closed fixed Use specific controls for different Parameter types

In the Algorithm Parameter setting dialog inspect they type of the parameter to select an appropriate control type for entering the data.

Suggestions

Parameter typedirectionControl type
WorkspaceIN or INOUTA drop down list containing the workspaces in the ADS
WorkspaceOUTA text box
int-A text box that only accepts [0..9,-]
double-A text box that accepts [0..9,-,e,+,.]
vector<int>-A text box that accepts the int values plus ,
vector<double>-A text box that accepts the double values plus ,
Anything else-A text box
#155 enhancement 13:38:42 1433364675621161 major Roman Tolchenov Nick Draper Iteration 9 closed fixed Update QTIPlot repository with windows build changes

We have been given access to the home repository of QTIPLOT in order to make our changes so that their code and future versions will compile with visual studio.

Details of how to access the QTIPLOT SVN are here: https://developer.berlios.de/svn/?group_id=6626

The account that has been given developer access is

UserName: njd
Passwords: access 

I suggest you make the changes just for compiling under VS for now and then we will seek permission to make further changes.

#251 enhancement 13:51:11 1433364722454088 major Roman Tolchenov Roman Tolchenov Iteration 13 closed fixed Allow copying individual values from MantidMatrix
#10861 15:46:35 1433387657337370 Indirect Inelastic major Dan Nixon Owen Arnold Release 3.4 closed duplicate Issue with Indirect Data Reduction Interface
  • Change your default facility to SNS
  • Change your default instrument to REF_L
  • Open the indirect Data Reduction interface -> Unhandled Exception
#11146 14:40:06 1433388315287938 Python major Dan Nixon Dan Nixon Release 3.4 closed fixed Declare Python member variables in the class - workflow algorithms

Declare Python member variables in the class for Python files in the plugins/algorithms/WorkflowAlgorithms directory.

#11185 09:51:27 1433388412628355 Tools major Owen Arnold Owen Arnold Release 3.4 closed fixed Linux build scripts should package

The build scripts are not currently packaging the master incremental builds. This would be quite useful, especially for running other downstream jobs such as the squish tests.

#159 defect 11:15:56 1433364677621469 critical Matt Clarke Nick Draper Iteration 9 closed worksforme QTIPlot crashes after using LOADRAW algorithm a second time

Steps to reproduce

I put the data on
olympic\babylon5\Scratch\Paolo G. Radaelli\Mantid_test, and they are for the SXD instrument.

Execute the LOADRAW algorithm with the file name you have there and the parameters:

Spectrum_min=8201 Spectrum_max=12296 Spectrum_list=12296

Import the workspace (all spectra) and plot as 3D Wire Frame (first button on the bottom left side of the window). It takes exactly 1 min on my computer to generate the 3D plot, but then in can be manipulated very fast. The spikes you see are Bragg peaks from a single crystal of YBaCo4O7. If you zoom in you can see their shape in the TOF dimension.

BTW, if I try to run LOADRAW again the program falls over even when I cleared the memory completely.

#11398 20:08:43 1433388889532127 Framework blocker Alex Buts Alex Buts Release 3.4 closed fixed Set up correct multirep spectra numbers, corresponding to wiring table for cycle 2014_3, LET drs2-12

As described above, just change spectra numbers to correct values for LET

#157 enhancement 17:46:09 1433364676600378 critical Anders Markvardsen Nick Draper Iteration 9 closed fixed Create a fuller definition of HET

The previous definition of HET already had detectors merged 10 to 1. This was good before but now we have a populated spectra-detector map we need it to define each individual pixel seperately.

Please ask for the details from the HET scientists and create a more accurate xml depiction. I'm not so worrired about the xml structure (i.e. banks etc, but we need the indiviual detector locations).

#11620 19:09:45 1433389409463474 GUI major Jose Borreguero Jose Borreguero Release 3.5 new Fit Wizard of MantidPlot shows incorrect value for parameter Scaling of TabulatedFunction

In MantidPlot, if one tries to fit a spectrum with a TabulatedFunction using a workspace of type Histogram, the value of parameter Scaling shown in the Fit Wizard corresponds to the actual value of parameter Scaling divided by the spacing in the X-axis. This division should not take place. On the other hand, if TabulatedFunction uses a workspace of type 'Distribution', then the value of parameter Scaling is not divided by the spacing in the X-axis, as it should be.

If one uses a python script for the fitting, instead of the Fit Wizard, then the reported optimized value of parameter Scaling is the correct one, irrespective of the type of the workspace used in TabulatedFunction. Thus the problem seems to be of the Fit Wizard.

#158 defect 11:14:33 1433364677067971 critical Matt Clarke Nick Draper Iteration 9 closed fixed Memory is not released after Removing workspaces in QTIPlot

If you use the Remove Wrokspace button in QTIPlot the memory utilisation does not decrease.

Something must be holding a reference to the workspace and keeping the shared pointer alive.

#162 enhancement 17:08:57 1433364679163080 minor Roman Tolchenov Nick Draper Iteration 9 closed fixed Correct axis displayed for 3D plots

Similar problem to that already fixed for 2D plots

#163 enhancement 17:10:13 1433364679665024 major Roman Tolchenov Nick Draper Iteration 9 closed fixed Correct axis label in 1D and 2D plots

At the moment the axis label is hard coded to be 'Time of Flight'. This needs to be read from the Axis object of the workspace. Talk to Russell to get more details.

#165 defect 16:34:53 1433364680636486 major Nick Draper paolo.radaelli@… Iteration 9 closed fixed QTIPLOT: Zooming issues

When I plot directly from the matrix (a very nice feature), I still need to do “rescale to show all” before the zoom works properly This seems to be a problem in “plot data only”, not with the error bars. I managed to crash the program several times while zooming in this mode.

#166 defect 16:37:05 1433364681100159 major Roman Tolchenov Nick Draper paolo.radaelli@… Iteration 9 closed fixed QTIPLOT: Curve fits do not work with error bars plotted

The fits do not work as they should when error bars are plotted. I think the program is getting confused about what exactly it should fit and how it should use the errors. Without errors, it seems to work fine.

#167 enhancement 16:00:17 1433364681590429 major Roman Tolchenov Nick Draper Iteration 10 closed wontfix Replace PythonAPI use in QTIPLOT with API
#168 enhancement 16:05:18 1433364682058575 major Roman Tolchenov Nick Draper Iteration 10 closed fixed Create new dockable window for displaying and interacting with Workspaces in QTIPLOT

This is number 1 on the diagrams as we discussed it. The window (rather similar to the solution explorer and properties windows in Visual studio) should list all loaded workspaces and should allow the following options.

  • Load workspace from file
  • Display Workspace Matrix
  • Delete Workspace
  • Rename workspace? (Probably need to be implemented through an algorithm)
  • Display workspace Properties
#169 defect 10:06:47 1433364682532616 major Roman Tolchenov Roman Tolchenov Iteration 10 closed fixed Completeness of the Mantid installation

Make sure the installation is complete and Mantid can be installed on any windows machine with the only requirement Python 2.5 installed

#170 enhancement 15:37:54 1433364682996884 major Sri Nagella Sri Nagella Iteration 10 closed fixed Creating bounding box for the geometry objects

To create methods that will be able to return bounding box for the geometry objects.

#6473 task 11:47:27 1433376920340488 Muon critical Arturs Bekasovs Anders Markvardsen devashibhai.adroja@…, adrian.hillier@…, stephen.cottrell@… Release 3.1 closed fixed [Muon] Sequential fitting

Chat with Adroja this morning.

Take MUSR run 43001 - etc

Would like to improve the automation of sequential fit of such data.

There is a least two options for this

1A) Allow hundreds of files to be specified in the Home tab, where each of these are processed independently. This will generate hundreds of Workspaces, one for each run, and one or many plots depending on how the settings is in the Settings tab

1B) Select the Data Analysis tab. Enable a version of 'sequential fit' which allow user to select any number of workspaces generated in 1B for sequentially fittting

Another implementation option is

2A) In data analysis tab through a 'sequential fit' implementation directly allow user to select files, which are then processed according to GUI setttings before fitting.

First task is to agree on the user experience of this

#6490 defect 22:00:28 1433376962578898 MantidPlot major Russell Taylor Russell Taylor Release 2.4 closed fixed Catalog menu/features are unusable if facility is not set to ISIS

I don't think this is new, but if your facility not ISIS none of this can be used as it's only set up for ICAT3. No matter what you put in the login box, you will get back an error without explanation. Surely we should do better in case someone does try to use it. Short-term possibilities might be one or more of the following:

  • Remove the menu item entirely (or grey it out) if the facility is not set to SNS.
  • Insert a check that pops up a dialog box explaining that this only works for ISIS.
  • Add a statement to CatalogLogin's setOptionalMessage that this only works for ISIS.
  • Add a property to CatalogLogin called 'Facility' (which will only have the option of ISIS for now).
#6521 enhancement 15:35:27 1433377039275750 VATES major Owen Arnold Owen Arnold Release 2.5 closed fixed PeaksViewer compatible workspaces

Whether a given MDWorkspace plotted in the SliceViewer is compatible with the PeaksViewer functionality is currently the subject of a Regular expression on the Workspaces' axes.

It is currently possible to 'fool' the PeaksViewer into enabling itself when it shouldn't simply by creating a dummy mdworkspace, via CreateMDWorkspace (i.e. with dimensions named H, K, L).

The following rules for enabling/using the PeaksViewer would be better:

  • Inspect getSpecialCoordinates() on the mdworkspace. If the workspace doesn't have this set, keep going but create a log warning about the fact we are guessing what special coordinates the workspace is in.
  • If the workspace does have a known value for getSpecialCoordinates, try to match the dimension names according to the current regex scheme. If these are incompatible, give up and log an error. For example if getSpecialCoordinates are HKL and the Dimensions are Q_lab_x, Q_lab_y, Q_lab_z.

We should also check the compatibility of the specialcoordinates that were set when the PW was integrated and the current special coordinates of the viewing MDWorkspace, but this will be the subject of another ticket.

#178 defect 14:38:40 1433364686904052 minor Russell Taylor Russell Taylor Iteration 10 closed fixed Qtiplot crashes when SimpleRebin is run with an empty 'params' ArrayProperty

Since there are no validators for ArrayProperties, it's possible to set SimpleRebin off without setting the 'params' property at all (i.e. it doesn't fail the property validation). This can be bad news, since you end up trying to access the first element of an empty vector.

#171 enhancement 10:57:15 1433364683475513 minor Russell Taylor Nick Draper Iteration 12 closed fixed Binary Operation - Validation tests

Some validation test are probably missing # Units # IsDistribtuition

#174 enhancement 14:38:00 1433364684900266 major Russell Taylor Nick Draper Iteration 12 closed fixed Write documentation to help users write their first few algorithms

This will need to explain the algorithm lifecycle, and describe all of the object provided within an algorithm and how to use them.

We need to aim this at people with minimal programming knowledge and include plenty of examples.

It should be written assuming that people are using the installed version of Mantid and building using the Build.bat available from the UserAlgorithms directory.

#175 enhancement 14:41:12 1433364685406700 major Nick Draper Iteration 10 closed fixed Adjust the windows install to allow an option to include an algorithm developer kit

This should include all of the code and libraries necessary to build an add on dll. We will need a simple build.bat build mechanism as well.

#176 enhancement 14:42:53 1433364685929033 trivial Nick Draper Iteration 20 closed wontfix Wavelength centric unit conversions

tof was an unfortunate choice of a central unit for our unit change as it is too instrument dependent. The conversions should be changed to go through wavelength instead.

#179 defect 13:59:00 1433364687376596 major Russell Taylor Nick Draper Iteration 10 closed fixed Sort out the Workspace data access methods

Boost-Python cannot distinguish methds that only differ in overloads be const-ness. Therefore additional mthods have been added to the workspace class to allow read only access to data from python.

We need to rationalise the methods based on this. Something like

  • ReadX, ReadY etc for getting a read access to the data.
  • DataX, DataY etc for getting writable access to the data.

Feel free to consider better method names. The methods need to be well documented and consistent changes made to all of the workspaces.

#180 enhancement 14:44:13 1433364687844549 major Nick Draper Nick Draper Iteration 10 closed fixed Separate Nexus dataHandling routines into a seperate library

The nexus routines will not always be needed and bring along a lot of other dependencies. Separate then into a different library to allow them to be optionally included as plug-ins.

#181 enhancement 09:14:03 1433364688331661 major Roman Tolchenov Nick Draper Iteration 10 closed fixed Diffraction focussing

Implement diffraction focussing as an algorithm

Steps

  • Convert units to d-spacing
  • Rebin to common bins without loosing data
  • Group detectors as specified in the .cal file
#182 enhancement 11:50:55 1433364688861469 major Ronald Fowler Nick Draper Iteration 11 closed fixed Create a LoadNexus for Muon files

You will need to talk to Freddie about how to read these. The algorithm should go in the Nexus project.

Two files have been added to Mantid\test\Nexus as test examples.

#183 enhancement 11:10:20 1433364689358158 major Nick Draper Nick Draper Iteration 10 closed fixed Create a script to allow Diffraction Focussing to run on larger workspaces
#6480 enhancement 15:35:08 1433376937834913 Framework major Dan Nixon Alex Buts Release 3.3 closed worksforme Sort table by column option does not work

If one opens a table workspace in MantidPlot and select a column, an option allowing to sort the table according a column appears and menu with sorting option (descending/ascending, col number) pops up. This menu currently does nothing and clicking sort just blinks but does not brings any changes.

It should either:

a) Do what is says (preferable) namely sort by column.

b) Should not appear at all

#6597 enhancement 16:50:33 1433377227581153 Infrastructure trivial Jose Borreguero Jose Borreguero Release 2.5 closed fixed reconciliate header in ExtractFFTSpectrum with wiki page for the algorithm

The WIKI page contains an extended and improved explanation of the algorithm. Port it into the header of ExtractFFTSpectrum.cpp

#186 enhancement 09:57:07 1433364690773887 major Russell Taylor Nick Draper Iteration 11 closed fixed Use of Offset values associated with unit conversion

Some instruments have specified offsets for use in unit conversions (or perhaps just after). Unfortunately the information used to derive the offset is not enough to correct the geometry as the offset is specified as a compound correction to LsinTheta. This could be applied as a post conversion fix within the conversion algorithms or perhaps more usefully a separate algorithm.

For now you should assume the file structure is that of the .cal files available in the TEST\Data directory. DiffractionFocussing reads the same files and may be of some use.

Once this is in place DiffractionFocussing should be altered to make use of this new functionality.

Units
#187 enhancement 10:38:57 1433364691274698 major Matt Clarke Nick Draper Iteration 11 closed fixed Integrate Linux QTIPLOT build into Linux build server

We need to get the Linux QTIplot build automated. This has been done for for windows build server and Roman will be able to explain it.

Important points:

  • The QTIplot build should report in a separate email, that is only sent on FAILURE.
  • It may be possible to reconfigure things to work the same way as they have been done on windows and this allows the cruisecontrol web pages to work ( e.g. http://ndw161:8080/dashboard/dashboard)
#188 enhancement 10:42:54 1433364691853316 major Matt Clarke Nick Draper Iteration 11 closed fixed Investigate instalation options for Mantid for Linux

Roman will be able to explain the structure of the install we use for windows and we will want a common file structure for both.

The Linux Distros we should target are Ubuntu and Fedora. If it happened to also be compatible with Mac OS X that would be a bonus.

#189 enhancement 11:03:19 1433364692326935 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Create an overall MemoryManager class

This class will be a central point of organization for our memory management efforts.

It will need to be able to

  • Determine the amount of memory available for both windows and linux
  • Determine the amount of memory used by Mantid data stores (primarily the analysis data service)
  • It will be used by the WorkspaceFactory to determine whether to issue a memory reduced version of an algorithm.
  • It may (later on) inform less recently used workspaces to save themselves to disk to reduce memory.
#190 enhancement 11:23:03 1433364692810216 major Roman Tolchenov Nick Draper Iteration 13 closed fixed Create a WorkspaceRawFile workspace type and alter LoadRaw to use it.

At the moment the first workspace created from a LoadRaw is an exact memory copy of the data in the file. The idea here is to save memory by only creating a workspace type facade that loads the data from the file as it is required.

Things to consider

  • Instrument and spectra-detector table etc - this associated information should be loaded in full as normal
  • Loading data on demand - It will probably be necessary to load the data in 'chunks' of n spectra
  • What if an algorithm tries to modify this workspace? - This workspacetype should be read only. If someone tries to modify it it should copy all of it's data into a normal Workspace2D (or ManagedWorkspace2D) to continue.
#192 enhancement 11:26:04 1433364693839322 major Matt Clarke Nick Draper Iteration 11 closed worksforme Solve scripting crash issues

At the moment a crash occurs when exiting python. We need to solve and prevent this.

If this has already been solved by the policy fix than feel free to close this one.

#193 enhancement 11:32:01 1433364694325466 major Anders Markvardsen Nick Draper Iteration 13 closed fixed Separate the curve fitting algorithms into a CurveFitting library

We need to split the curve fitting algorithms into a separate curve fitting library.

This entails the following:

  • Create a new CurveFitting project in the mantid visual studio solution
  • Copy all of the settings (for debug and release) from the algorithms project
  • Remove any settings from algorithms that no longer apply (eg. GSL link lines)
  • Move the cpp and h files over and alter any namespaces etc
  • Edit the sconstruct file to add your project to the list (about 1/2 way down).
  • Add a sconscript file (copy and edit from algorithms.
  • Check it all build in VS and scons.
curve fitting
#194 enhancement 13:44:36 1433364694804428 critical Anders Markvardsen Nick Draper Iteration 12 closed fixed Add definition of shape to intrument definition

This needs to be done in partnership with Sri.

We need to add xml to the instrument files to define the shape of the base level types.

This needs to start with a discussion between Sri, Anders and Nick.

I suggest that we hide the fact that we are using infinite surfaces in our definitions, and provide user friendly tags for common objects.

 <Cylinder id="Bertie" radius=2 cap1="4,5,6" cap2="1,1,1"/>
 <Cuboid id="Harry" point1="0,0,0" point2="2,0,0" point3="2,2,2"/>
 <CSG algrebra="Bertie -Harry"/>
#210 enhancement 15:53:03 1433364702609872 major Russell Taylor Nick Draper Iteration 11 closed fixed Document Algorithms

Please document the following algorithms on the wiki in a manner similar to http://www.mantidproject.org/Plus

  • Integration
  • LoadRaw
  • Unwrap
  • ConvertUnits
  • GroupDetectors
  • MarkDeadDetectors
  • LoadMappingTable
  • Any others that you have been involved in
#211 enhancement 15:55:49 1433364703081633 major Ronald Fowler Nick Draper Iteration 11 closed fixed Document Algorithms

Please document the following algorithms on the wiki in a manner similar to http://www.mantidproject.org/Plus

  • All of the Nexus Algorithms
#196 enhancement 15:32:56 1433364695795923 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Rename qtiplot MantidPlot

Should we rename QtiPlot MantidPlot?

Otherwise it can be hard to mentally link out user interface with our project.

There are some images and icons in Mantid\images

Also this will need to update the install script to change the name of the shortcuts etc. While you are there you should add the contents of another directory to the install. QTIPLOT\colourmaps contains a selection of 3DPlot colourmap files. These should be added to the install.

#198 enhancement 15:59:39 1433364696750944 major Matt Clarke Nick Draper Iteration 11 closed fixed Remove the need to specify the version number of an algorithm

At the moment to execute an algorithm in the Python API you have to specify a version number. This should be optional. At the moment this works

mtd.execute("LoadRaw","C:/Mantid/Test/Data/MAR11060.RAW;test",-1)

But this should work as well

mtd.execute("LoadRaw","C:/Mantid/Test/Data/MAR11060.RAW;test")

#199 enhancement 10:51:14 1433364697230820 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Create a DAEStub windows Service

This should operate as a windows service and respond to calls by LoadDAE with simple generated data responses.

At the moment this involves responding to the GETDAT request that returns the data from a single spectrum.

The data returned should alter over time to pretend to be accumulating neutron counts.

It may be worth using Paolo equation to generate the data (or a simpler one if required)

I*(exp(a/2*(a*s2+2*(x-c)))*erfc((a*s2+(x-c))/sqrt(2*s2))+exp(b/2*(b*s2-2*(x-c)))*erfc((b*s2-(x-c))/sqrt(s*s2)))+bk

I fitted the peak near 79400 usec in spectrum 4 of the file HRP38692.RAW

The initial guesses for this peak are:

I=297 a=2. b=0.03 c=79400 s=8 bk=8

#200 defect 10:53:00 1433364697724107 minor Roman Tolchenov Roman Tolchenov Iteration 11 closed fixed DiffractionFocussing does not copy the errors

DiffractionFocussing does not copy the errors

#201 defect 11:15:36 1433364698185352 major Russell Taylor Russell Taylor Iteration 11 closed fixed Correct error calculation in GroupDetectors

When GroupDetectors was first written it only allowed data that had raw counts, and assumed that in the calculation of the error. This calculation wasn't updated when GroupDetectors was changed to accept any workspace with common bins.

#202 enhancement 09:48:18 1433364698651496 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Correct QTIPLOT plotting for Histogram data

Data in a workspace can be a histogram (one more bin boundary than data point) or point data.

In the case of histogram data we should be plotting in the center of the two relevant bin boundaries, not at the first bin boundary.

#203 enhancement 09:51:14 1433364699123892 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Extend Algorithm base class to allow algorithms to execute asynchronously

The base class should be extended to add an ExecuteAsync method. This should run the Exec method in a separate thread and communicate the result back through some callback mechanism (Boost.Signals?).

Once this works the QTIPLOT interface should be altered to use this as the primary method of running algorithms.

#204 enhancement 09:56:10 1433364699595058 major Roman Tolchenov Nick Draper Iteration 11 closed fixed QTIPlot to allow repeated monitoring of a DAE

QTIplot (probably through a specific button) should allow a workspace to be repeatedly loaded with data from a DAE. This should refresh the data every n (specified by the user default:5?) seconds.

If a refresh is scheduled and the previous refresh has not been completed then the scheduled refresh should be missed.

This refreshed data needs to be updated in all data structures to allow a single spectrum graph to be updated (2d graphs would be a bonus).

The idea here is that a user can create a graph of a monitor or detector during an experiment and watch the counts grow over time.

#205 enhancement 09:57:42 1433364700075800 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Document Algorithms

Please document DiffractionFocussing and the three rebins on the wiki in a manner similar to http://www.mantidproject.org/Plus

#206 enhancement 13:44:03 1433364700666232 major Roman Tolchenov Nick Draper Iteration 11 closed fixed Update WorkspaceFactory to use the MemoryManager

Currently the Workspace Manager uses the requested size of a workspace to decide wether to create a ManagedWorkspace or not. This is done by comparing HistogramCount*TimeBins to a value in the .properties file.

This should be updated to use the information that can be provided by the MemoryManager. I suggest that we change it so it reads a value from the .properties file that gives a percentage of the available memory that may be used for the workspace. Therefore if they have the value set to 50% then if a full workspace would take less than 50% of the available memory then that would be returned, otherwise a managed workspace would be used.

You will need to do a bit of benchmarking to investigate what a sensible default value should be.

#207 enhancement 14:37:43 1433364701135313 minor Matt Clarke Nick Draper Iteration 13 closed fixed Allow Python Algorithms to be created and deomnstrate with a script

Extend the python API to include a class that inherits from Algorithm called PyAlgorithm. This should overload the init and exec methods, but in each they should only call new public abstract methods pyInit() and pyExec().

Then when you add a python wrapper for this class you should be able to inherit from this class in python.

It will probably not be possible to insert the new algorithm into the factory, but it should be able to be used directly in python.

python
#208 enhancement 15:47:04 1433364701608596 critical Anders Markvardsen Nick Draper Iteration 16 closed fixed Document Algorithms

Please document the following algorithms on the wiki in a manner similar to http://www.mantidproject.org/Plus

  • LoadInstrument
  • LoadLog
  • All of the CurveFitting Algorithms
  • SaveCSV
  • LoadInstrumentFromRaw
  • Any others that you have been involved in
#209 enhancement 15:48:12 1433364702080185 major Roman Tolchenov Nick Draper Iteration 12 closed fixed Document Algorithms

Please document the following algorithms on the wiki in a manner similar to http://www.mantidproject.org/Plus

  • LoadDAE
#249 enhancement 12:30:25 1433364721515491 major Freddie Akeroyd Freddie Akeroyd Iteration 13 closed fixed Matlab bindings further development
#6494 enhancement 10:30:26 1433376972424494 Framework minor Russell Taylor Alex Buts Release 3.0 closed fixed SumEventsByLogValue does not do what I expect it to do (and hangs when I try to do what I expectedfrom it)

from brief glance on the algorithm description and my understanding of the rocking curve technique (which may be well incomplete) I was thinking that SumEventsByLogValue is used to generate parametric plots (workspaces) E.g:

If I have a log value, which describes a scanning within some angle, the angle changed as sin(W*t) with time, and the source workspace, as usual, contains events against detectors, the algorithm would sort events according to time bins, for which each angle value was recorded. The result would be the function Events_of_(rotation angle) or (more physically meaningful after re-binning and coordinate transformation) Energy transfer_of_(rotation angle). This function may be non-unique if some particular energy transfers corresponds to different angles.

The re-binning option available in the algorithm works in similar way, but allows one to work with homogeneous functions only.

Following my expectations, I was trying to rebin LET event workspace LET00006278.nxs against log value total_counts which has 230 recoded integer values in the range from 0 to 106.

This operation hangs up Mantid.

Reading the algorithm description carefully I have found explicit warning against doing what I did, but attempt to do that should not hang Mantid and give better estimate of the time, left to complete the operation.

Needed: 1) Attempt to rebin data against integer logs with big number of measurements should give good estimate of the job ahead. Should be a possibility to cancel the wrong intended job

Desirable: 2) Rebinning against time intervals, associated with the log. (described above)

This is questionable ticket as I am not sure if many people think the similarly to myself as above.

#6531 enhancement 10:56:41 1433377064047003 Mantid critical Gesner Passos Anders Markvardsen Release 2.5 closed duplicate SANS: allow gui to load time sliced event data directly

This ticket follows #6530.

The details of this ticket of may change with further feedback from instrument scientists.

Add the right of the the Multi-period tick box a input text box for a user to specify time slicing.

If this input text box is filled, and a user has specified an event data set, time-slice the event data

#7692 task 15:22:25 1433379948937715 Framework minor Russell Taylor Russell Taylor Release 3.0 closed fixed Add comments to the TestHelpers headers stating where they can and can't be used

This is to try and help avoid illegal dependencies (e.g. using WorkspaceCreationHelper in API when it depends on DataObjects).

Maintenance
#8379 defect 11:43:07 1433381660110527 Indirect Inelastic major Samuel Jackson Samuel Jackson Release 3.1 closed fixed [IDA] Running a sequential ConvFit with one spectrum causes an error.

It looks like it can't group the single output workspace.

#212 enhancement 13:12:05 1433364703549631 major Russell Taylor Russell Taylor Iteration 11 closed fixed Write a tool to convert Ariel instrument definition files to Mantid's XML format
#213 enhancement 09:54:12 1433364704038713 major Roman Tolchenov Roman Tolchenov Iteration 11 closed fixed Fix Windows Installer
#215 enhancement 16:47:05 1433364704983456 major Ronald Fowler Ronald Fowler Iteration 14 closed fixed Create a SaveNexus for storing workspace data

Allow saving of workspace data in Nexus file format.

One way might be to allow writing (and reading) of the Nexus "Processed" NXentry which assumes that the data has been reduced to a standard for such as S(Q) and no longer requires the instrument definition.

Nexus
#7697 enhancement 15:30:30 1433379961311066 Python critical Wenduo Zhou Gesner Passos Release 3.0 closed invalid Move ConjoinGSASFiles.py to new API

Move also the file to PythonInterface/plugins/algorithms/

I assumed the last person to touch the code is the owner.

#217 enhancement 14:25:10 1433364705935034 minor Russell Taylor Russell Taylor Iteration 13 closed fixed Create further instrument definitions from Ariel files

Requires getting the list of UDETS from Paolo or Laurent.

#218 enhancement 14:09:17 1433364706410637 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed Update Windows Installer
#219 enhancement 10:51:58 1433364706886941 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed Display Mantid version information in MantidPlot
#220 defect 13:32:58 1433364707418236 major Ronald Fowler Nick Draper Iteration 12 closed fixed LoadNexus will not load multiperiod data

If you do LoadNexus with the multiperiod nexus file only one workspace is produced. If you use LoadMuonNexus then it all works normally.

#221 defect 14:36:26 1433364707934395 major Roman Tolchenov Nick Draper Iteration 12 closed fixed Minus Bad error text

try to minus a workspace from another with different numbers of time bins

Excerpt from the log messages

Logic Error in Execution of algorithm Minus

The size of the two workspaces are not compatible for algorithm plus

#222 defect 14:51:43 1433364708429829 major Freddie Akeroyd Freddie Akeroyd Iteration 12 closed fixed Mantid fails to build on 64bit machine

It is unable to find glibconfig.h

#11150 15:01:25 1433388325956475 Indirect Inelastic major Dan Nixon Dan Nixon Backlog assigned Investigate why OSIRIS fury fit test fails on OSX

This test fails as the Tau spectrum has an artefact in it that is far enough out of the comparison tolerance to fail the test.

#223 defect 16:25:56 1433364708902074 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed LoadDAE fails to connect inconsistently
#225 enhancement 16:44:36 1433364709844632 major Russell Taylor Nick Draper Iteration 12 closed fixed MERGE_RUNS algorithm

This is straightforward for runs collected with the same setting, but becomes more complex when dealing with data collected over different frames (e.g., OSIRIS). The simplest solution is to rebin all the runs on a common wavelength scale, add them together and normalise them by the new “reconstructed” monitor. I think this could work, but it requires knowing very accurately where the monitor is relative to the detectors, and I could never do it using the engineering parameters. It would require a procedure to calibrate the monitor position exactly. It is a specific problem with OSIRIS, but we may need it on WISH on Day 1 if we have only detectors in backscattering. I suggest we implement the straightforward part (merging 2 runs with the same chopper setting) and have a separate project on the more complex version.

#250 defect 11:31:49 1433364721975486 major Roman Tolchenov Roman Tolchenov Iteration 13 closed fixed MantidPlot crashes trying to import a data points workspace.
#6502 enhancement 13:13:58 1433376992207532 Mantid major Nick Draper Martyn Gigg taylorrj@…, campbellsi@… Release 2.5 closed worksforme Move all platforms to Qt 4.8

It is required for ParaView and it may solve a problem on the Mac: #6497

Stuart has already built the RHEL 6 libraries, Ubuntu is already there and the Mac can just use those directly from Qt (just needing to rebuild PyQt4 & qscintilla and maybe sip if we are moving PyQt4 versions too). That just leaves Windows.

We are planning on move to VS 2012 this release so it would be good to coincide it with that.

#227 enhancement 16:51:08 1433364710817726 major Russell Taylor Nick Draper Iteration 14 closed fixed VAN_STRIP_BRAGG_PEAKS algorithm

After a vanadium run is processed, we need to “strip” the Bragg peaks off and interpolate the gaps. We know exactly where these peaks are in d-spacing so it should be easy.

#228 enhancement 16:51:39 1433364711304717 major Russell Taylor Nick Draper Iteration 14 closed fixed CORRECT_FOR_ATTENUATION algorithm

This correction depends on sample geometry, angle and wavelength, and should be ultimately done point by point. It is common to essentially all ISIS instruments dealing with bulk samples, and should be the subject of a common project. For the purpose of this exercise, we can use the ARIEL approach which is that of calculating a polynomial approximation for each group (the variable is wavelength). Then you apply it to the focussed data (in d-spacing) by using the average 2theta of the bank for the conversion. I can initially supply the pre-calculated polynomials just for test, and I have fairly simple routines to calculate them that can be easily ported.

#229 enhancement 16:52:16 1433364711805486 major Russell Taylor Nick Draper Iteration 12 closed wontfix FINAL_NORMALISATION algorithm

This entails subtracting and dividing several sets of runs (sample, empty, vanadium…), all corrected as appropriate. It does not involve any rebinning and should be simple.

#230 enhancement 16:55:55 1433364712285058 major Russell Taylor Nick Draper Iteration 12 closed fixed Merge Workspaces algorithm

This should allow two partial and non overlapping workspaces to be merged into one. For example you have processed a raw file in to halves, and then want to merge the results into a single workspace.

Pre-requisites

  • workspaces come from the same instrument
  • No detectors that contribute to spectra should overlap
  • x units and bins must match
#231 enhancement 14:20:52 1433364712764714 major Roman Tolchenov Nick Draper Iteration 12 closed duplicate Windows Installer picking strange install drive on multi drive machines

The installer appears to choose the last physical drive to install to.

We either need to ask for every install, or change the default somehow to be perhaps the drive containing windows.

#232 enhancement 14:33:14 1433364713237446 major Roman Tolchenov Nick Draper Iteration 12 closed fixed Improve Installer plugin directroy use

As discussed on 16/09/2008

#233 enhancement 14:34:17 1433364713713633 major Roman Tolchenov Nick Draper Iteration 12 closed fixed Allow Matrix windows repsond to the underlying workspace being replaced in the ADS

As discussed on 17/09/2008

#234 enhancement 15:45:58 1433364714174869 major Russell Taylor Russell Taylor Iteration 12 closed fixed Add custom validators for workspace properties

Currently, the validation for a WorkspaceProperty is hard-coded. It then often turns out that you have to go checking the input workspace before you do anything else in the exec() part of an algorithm.

#235 enhancement 13:01:32 1433364714648714 major Russell Taylor Russell Taylor Iteration 12 closed fixed Create a 'Divide by current' algorithm

Basically a very simple algorithm that normalises a workspace according to the integrated current of the beam - so it's just a divide by a single number. Just need to extract this number from the raw file and store it somewhere.

#236 enhancement 17:18:30 1433364715128788 major Ronald Fowler Ronald Fowler Iteration 13 closed fixed Document how Nexus format can save workspace data and geometry

Document on how Nexus can store Mantid workspace and geometry information.

Nexus
#237 enhancement 11:28:01 1433364715611314 major Nick Draper Nick Draper Iteration 12 closed fixed Adjust scripts for new build server
#238 defect 13:41:02 1433364716129659 major Russell Taylor Russell Taylor Iteration 12 closed fixed LoadInstrument isn't using the InstrumentDataService

Which it should because we want to share the Instrument objects if they're loaded from the same XML file.

#239 enhancement 10:23:21 1433364716625197 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed Allow windows installer overwrite old installations
#240 enhancement 13:19:02 1433364717108165 major Russell Taylor Russell Taylor Iteration 12 closed fixed Add Documentation

Document the following in the wiki:

  • MergeRuns
  • NormaliseToMonitor
  • NormaliseByCurrent
  • ConjoinWorkspaces
  • Workspace Validators
#241 defect 12:05:35 1433364717606257 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed MantidPlot crashes again
#242 enhancement 09:08:57 1433364718088287 major Roman Tolchenov Roman Tolchenov Iteration 12 closed fixed Show a splash screen at MantidPlot startup.
#243 enhancement 14:51:22 1433364718572270 major Freddie Akeroyd Freddie Akeroyd Iteration 12 closed fixed Unable to set properties array in algorithm object

This can only be set via the framework manager and not via the algorithm interface

#244 enhancement 15:21:58 1433364719094197 major Nick Draper Nick Draper Iteration 12 closed fixed Create a FindDeadDetectors algorithm

Mark detectors with zero counts

#245 enhancement 12:05:22 1433364719574078 major Matt Clarke Nick Draper Iteration 14 closed fixed Single Assymetry algorithm

Performs the following

Ynew=Y.et/tu

where tu is the lifetime of a muon.

#246 enhancement 12:08:39 1433364720043135 major Matt Clarke Nick Draper Iteration 14 closed fixed Correct bin offset

Moves the bin boundaries by a user supplied offset

parameters

  • Workspace (input/output)
  • Bin offset (double) - can be negative

This will then add that offset to each bin.

Care should be taken not to end up with duplicate X vectors caused by simple adding through the cow_ptr. Perhaps you could check that the current X array is the same as the last one and then have them point to the same new vector.

#247 enhancement 12:10:40 1433364720516341 major Matt Clarke Nick Draper Iteration 16 closed fixed Group from file algorithm

Create an algorithm that will read a grouping file and apply that grouping to data.

There is similar code as part of the diffraction focussing algorithm.

#248 enhancement 12:13:02 1433364721027798 major Roman Tolchenov Nick Draper Iteration 13 closed fixed QTIPlot should remember the last values entered for parameters

QTIplot should keep a track of the last values entered for each algorithm and parameter. These should then be offered as deflauts when running the same algorithm again.

These should be maintained between user sessions.

Should they be unique per user?

#8549 enhancement 12:14:46 1433382080838159 Reflectometry minor Keith Brown Keith Brown Release 3.1 closed invalid Refl_gui Improvements - Remove Cycle selection

It seems the users have asked for the cycle selection to be removed as they're only interested in the latest cycle.

Remove this functionality as it's not being used

#253 enhancement 10:03:34 1433364723464684 major Roman Tolchenov Nick Draper Iteration 13 closed fixed Instrument display: Show 1D plot

Once a detector (or group of detectors) add an optin to the context menu to display the line plot of the data for that detector.

#256 enhancement 10:10:08 1433364724940046 major Russell Taylor Nick Draper Iteration 13 closed fixed Diagnostics: Extend dead detectors to output report

The FindDeadDetectors algorithm needs to output a list of the dead detectors it finds. This should be added as an optional parameter for a filename, if no filename is found then we should log at debug level the full list of dead detectors. We should also log at info level the number of dead detectors found.

#257 enhancement 10:10:56 1433364725417012 major Matt Clarke Nick Draper Iteration 13 closed fixed Linux: RPM including MantidPlot

We need to allow users to install Mantidplot using the linux RPM

#258 enhancement 10:11:54 1433364725951233 major Matt Clarke Nick Draper Iteration 13 closed fixed Linux: 64 bit build

Several users have 64bit linux installs, particularly in the instrument cabins. We neeed a version of the RPM for 64bit linux.

#259 enhancement 10:12:41 1433364726433881 major Martyn Gigg Nick Draper Iteration 14 closed fixed Build: include Matlab bindings in installers

We need to understand how to include the matlab API in the installers and build process.

#260 enhancement 10:30:42 1433364726919681 major Roman Tolchenov Roman Tolchenov Iteration 13 closed fixed Restore selection in MantidMatrx after workspace update.
#261 enhancement 11:36:40 1433364727400364 major Anders Markvardsen Nick Draper Iteration 15 closed fixed instrument definitions: tosca

Create instrument definitions for the following instruments:

  • Crisp
  • Tosca (talk to Timmy Ramirez-Cuesta)
  • Sandals (talk to Alan Soper)
#262 enhancement 15:13:40 1433364727875695 Mantid minor Janik Zikovsky Russell Taylor Iteration 30 closed fixed Create dynamic property validators

At present, the NormaliseToMonitor algorithm requires that you enter the spectrum number relating to the monitor you wish to use. It would be much nicer, particularly when using MantidPlot, to give the name of the monitor instead. But this isn't known until the input workspace has been set, so we would need to find a way in which the setting of the input workspace fired an event that the monitor property could catch and update itself.

#263 enhancement 15:24:09 1433364728351893 major Russell Taylor Russell Taylor Iteration 13 closed fixed Adapt MergeRuns so that it can combine runs with different chopper settings

The 'level 1' implementation of MergeRuns restricts the input workspaces to having common binning - it's really nothing more than a wrapper around the Plus algorithm, with some extra validation. To take this to level 2, it needs to be able to combine runs with different chopper settings - meaning that they cover different wavelength ranges (with some overlap). So there'll need to be some rebinning in there.

#264 enhancement 15:29:39 1433364728816192 minor Russell Taylor Russell Taylor Iteration 13 closed fixed Change Integration to take values rather than bin indexes

Replace the StartBin and EndBin properties of Integration so that the user can provide a range (of e.g. TOF) over which to integrate instead of just bin index numbers. If the value provided doesn't fall exactly on a bin boundary, take the first boundary that's within the range.

#265 defect 16:13:02 1433364729317080 minor Ronald Fowler Ronald Fowler Iteration 18 closed wontfix Fix LoadMuonNexus to return bin centred workspace

Change LoadMuonNexus so that it returns bin centred workspace data if this is the content of the NeXus file. Currently converts it to use bin boundaries.

#266 defect 13:12:58 1433364729849679 major Russell Taylor Russell Taylor Iteration 13 closed fixed Modify ConvertUnits to do the right thing for monitor spectra

ConvertUnits doesn't treat monitor spectra correctly. In the conversion, it uses L1+L2 (as for a regular detector) whereas it should just use the source-monitor distance.

#267 enhancement 14:15:21 1433364730351856 major Martyn Gigg Nick Draper Iteration 13 closed fixed Create a MantidPythonSimpleAPI

As discussed.

  • Create a method on the PthyonAPI that creates a MantidPythonSimpleAPI.py library
  • This should contain a method for every algorithm available in the Factory
  • Each method should allow for a simple method signature based on it's parameters.
  • Also include a help method help() should list all algorithms (and any other commands we add later) help("command") should provide details about that command.
#268 enhancement 14:16:53 1433364730833292 major Martyn Gigg Nick Draper Iteration 13 closed fixed Automatically load MantidPythonAPI into the Mantidplot Python window

As the title says.

It may make sense to look into adding this to the python scripting language initiation.

#292 enhancement 14:26:19 1433364742625032 major Sri Nagella Nick Draper Iteration 14 closed fixed Allow browing by the intrument tree in the instrument window

Provide a tab showing a tree view of the instrument and allowing people to zoom to sections of the instrument by selecting from the tree.

The view should be placed in between the sample position and the selected item (could be a whole bank) such that the whole of the selected item takes up most of the screen.

Obviously you will have exceptions for this for the sample itself and the whole instrument.

#293 enhancement 14:28:08 1433364743095398 major Roman Tolchenov Nick Draper Iteration 14 closed fixed Allow !d graphs to be created from integrated data

At the moment you cannot graph data with a single time bin.

#294 enhancement 14:29:17 1433364743564515 major Nick Draper Iteration 14 closed duplicate Make it easy for uses to execute common python scripts

We need to discuss how we might do this in the user interface.

#295 enhancement 15:40:23 1433364744046841 major Anders Markvardsen Anders Markvardsen nick.draper@… Iteration 14 closed fixed Accurate shape description backscattering banks

Describe the shape of the backscattering detector banks of HRPD and GEM using curved geometric objects (none box-shaped objects).

#270 enhancement 10:39:08 1433364731799690 minor Russell Taylor Russell Taylor Iteration 13 closed fixed Create a CropWorkspace algorithm

The options of NormaliseToMonitor can require that bins are lopped off the start and end of a workspace. Right now, this is done via the Regroup algorithm, passing in arguments to make sure you lose the bins you don't want and keep the boundaries of the remaining bins unchanged. But this is very inefficient and could be done much better by a dedicated algorithm. Integration could also use this algorithm.

#271 enhancement 14:07:04 1433364732293940 major Roman Tolchenov Roman Tolchenov Iteration 13 closed fixed Add progress reporting to the existing algorithms.
#272 enhancement 16:31:35 1433364732766287 major Roman Tolchenov Roman Tolchenov Iteration 13 closed fixed Improve MantidMatrix performance.
#273 defect 17:17:23 1433364733251053 minor Martyn Gigg Iteration 13 closed fixed LoadDAE is currently allowed to have a blank DAEname

The DAEname property is not assigned a validator even though it needs to be specified by a user of the algorithm

#274 enhancement 11:40:17 1433364733725057 major Russell Taylor Laurent Chapon Iteration 15 closed fixed Peak finding algorithm

Algortihm to find peaks in a 1D spectra

#275 defect 11:59:23 1433364734217136 major Sri Nagella Sri Nagella Iteration 14 closed fixed Test Non-Cuboid Detector geometry display

Non-Cuboid shaped dectors are not displayed in the geometry viewer widget.

#276 enhancement 12:02:23 1433364734694923 major Sri Nagella Sri Nagella Iteration 14 closed fixed Geometry viewer enchancements

1) Change the mouse sensitivity for operations on geometry viewer widget. 2) keyboard operation for transformations. 3) Fast picking using image with in geometry viewer widget.

#278 enhancement 12:12:50 1433364735829829 major Sri Nagella Sri Nagella Iteration 14 closed duplicate Add Geometry names Tree widget to geometry viewer

A Tree widget of Gemoetry names with hierarchy added geometry viewer. When a node is selected in tree widget, The view in OpenGL window is navigated to selected named bank/dectector. This bank/dectector should occupy atleast 90% of the opengl window.

#279 defect 12:47:01 1433364736309602 minor Russell Taylor Iteration 14 closed fixed Fix reporting of test crashes in buildserver email header

When a test crashes (as opposed to 'just' failing), the linux buildserver reports this as a failure of the test build. The Windows buildserver doesn't pick up the failure at all. This should be rectified - apparently the place where the test output is parsed is in sendEmail.py.

#280 defect 14:14:24 1433364736778862 minor Russell Taylor Russell Taylor Iteration 13 closed fixed CropWorkspaceTest is crashing on Windows

Have only just noticed that this test has been failing from the beginning on Windows.

#281 defect 14:35:37 1433364737271156 minor Martyn Gigg Iteration 13 closed fixed Linux: Problem with workspace and table colours in Mantidplot

If MantidPlot is opened, a raw file loaded then closed down and reopened again, the colour assignments for the backgrounds are messed up

#283 enhancement 17:41:57 1433364738261147 major Martyn Gigg Martyn Gigg Iteration 14 closed fixed Importing Mantid data into Paraview

Investigate and create methods to export data from Mantid workspaces to a format readable by the Paraview visualization program.

#284 enhancement 15:17:11 1433364738760369 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed Create TableWorkspace
#285 enhancement 15:29:13 1433364739236569 minor Russell Taylor Russell Taylor Iteration 13 closed fixed Remove vector holding pointers to child algorithms from Algorithm base class

It isn't used (except for passing through a cancel notification, which we can probably live without).

#286 enhancement 16:08:43 1433364739710157 major Roman Tolchenov Nick Draper Iteration 14 closed fixed Add colourmaps to installer package

the files are in qtiplot\colourmaps

#287 enhancement 16:40:38 1433364740260095 major Anders Markvardsen Anders Markvardsen Iteration 13 closed fixed Load instrument definition file without raw data

Purpose: Be able to visualise an instrument defintion file without needing to have a raw data file for that instrument.

Name this algorithm LoadEmptyInstrument.

#288 defect 17:00:05 1433364740720873 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed Singletons get deleted twice in MantidPlot
#289 enhancement 18:17:48 1433364741207132 major Martyn Gigg Martyn Gigg Iteration 14 closed fixed Extend python scripting functionality in Mantidplot

Add interaction with qti objects(graphs etc) from within python script

#290 enhancement 10:35:39 1433364741673079 major Anders Markvardsen Nick Draper Iteration 14 closed fixed Merlin instruument definition
#291 enhancement 14:22:45 1433364742146222 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed Add MantidCurveFitting.dll to Windows installer
#420 enhancement 14:14:08 1433364804258003 major Martyn Gigg Martyn Gigg Iteration 15 closed fixed Allow Python to interact with the instrument window in MantidPlot
#5451 enhancement 19:24:16 1433374380662328 Reflectometry major Jean Bilheux Jean Bilheux Release 3.0 closed fixed Create a NeXus viewer for the REF_L team

Instead of getting the full list of metadata from the DAS LOGS table, the REF_L team wants an application that will only display a list of their choice (ttheta, tho, the.....etc)

#5470 defect 16:35:46 1433374427719725 Framework critical Michael Reuter Martyn Gigg Release 2.6 closed worksforme Random crash when changing default save directory

From Spencer,

M
There is an intermitent fault (on Win7 64bit anyway) when trying to change Default Save Directory (this I use quite a lot) - it crashes Mantid.
At first I thought it was only when doing it from an Interface, but I think it also does it from the Main window icon.
And it's not just me - while demonstrating Mantid to the group's new member yesterday it crashed her Win7 64bit laptop.
Sp
#5531 enhancement 15:47:43 1433374581860212 Mantid blocker Peter Peterson Nick Draper Release 2.3 closed fixed Load System test

Create a generic Load system test that will attempt to load all of the suitable files in a directory one at a time.

Important points:

  • Each workspace should be checked in the ADS after loading.
  • Any falures should identify the file, and Loader used (an output property of load) as well as any failure information.
  • A possible extension is to allow .expected files (matching the data file name) to include further facts for verification. I would suggest a simple fixed vocab:
    • Number of Spectra, bins, events, detectors, logs
    • Instrument name, workspace title
#297 enhancement 16:22:51 1433364745039319 minor Russell Taylor Russell Taylor Iteration 13 closed fixed Have DiffractionFocussing discard ungrouped spectra

Instead of grouping all the spectra that don't feature in the grouping file into a spectrum at the end of the output workspace, just discard them (and print a warning message giving the number discarded).

#298 defect 14:04:40 1433364745509068 major Martyn Gigg Martyn Gigg Iteration 14 closed fixed Fix problems with python scripting crashes in Mantidplot
#299 enhancement 17:21:38 1433364745970711 major Russell Taylor Nick Draper Iteration 14 closed fixed Correct validation for binary operation with 1D data

Currently you cannot

  • load a ws1
  • integrate to ws2
  • divide ws1/ws2

but you should be able to

#300 defect 15:18:07 1433364746442259 major Roman Tolchenov Nick Draper Iteration 14 closed fixed LoadRaw spectrum min and max do not work for multiperiod data

Try it out

  • load a multiperiod file with only 1-2 spectra requested
  • drag a workspace onto the screen
  • All spectra are loaded.
#301 enhancement 15:44:50 1433364747224547 major Sri Nagella Nick Draper Iteration 14 closed fixed remove delete/hide option for instrument window

Roman should be able to tell you how to do this.

#302 task 17:03:47 1433364747701987 major Martyn Gigg Iteration 14 closed fixed Investigate linux memory issue
#303 enhancement 16:36:56 1433364748208923 major Martyn Gigg Iteration 14 closed fixed Improve simple Matlab API
#304 enhancement 15:25:57 1433364748701658 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed Copy raw file to the local drive for use in ManagedRawFileWorkspace if needed.
#305 enhancement 12:04:09 1433364749175438 minor Martyn Gigg Iteration 14 closed fixed Incorpate QScintilla editing library into Mantidplot
#306 enhancement 13:05:56 1433364749654858 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed It is impossible to reset parameters to their default values in MantidPlot
#307 defect 11:20:46 1433364750145985 major Russell Taylor Nick Draper Iteration 14 closed fixed ConvertUnits does not convert if workspace is the same

Try this Load a workspace W1 Convert units to energy into W2 (note that this works X values change) Convert units for W1 to energy into W1 X values do not change!

#308 defect 11:26:19 1433364750634738 major Roman Tolchenov Nick Draper Iteration 14 closed fixed Rebin a workspace in energy does not work

Workspaces converted to energy have reversed X values (start high go low).

Rebin does not work with this. This may well affect rebunch and regroup as well

#309 defect 11:47:11 1433364751106270 major Roman Tolchenov Nick Draper Iteration 14 closed fixed Spectra limits seem to be ignored for large datasets

It seems that for large datasets spectra min and max values are ignored.

Steps to reproduce:

  • LoadRaw for a maps file
  • Set the max spectra value to 5000
  • drag the workspace into MantidPlot
  • Scroll down!
#310 enhancement 12:25:59 1433364751580255 major Martyn Gigg Iteration 14 closed fixed Improve optional argument support in Python simpleAPI
#311 enhancement 14:18:18 1433364752049535 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed Fix ManagedRawFileWorkspace2DTest.
#313 enhancement 13:44:24 1433364753010283 major Sri Nagella Sri Nagella Iteration 14 closed fixed Save Settings/Preferences of the Display Widget

Save the settings such as background color and colormap path/file.

#314 enhancement 14:39:12 1433364753495274 major Sri Nagella Sri Nagella Iteration 14 closed fixed Add specialised rendering for finite primitive object

Special rendering for Cubes, Spheres,Cones and Cylinders

#315 enhancement 04:22:45 1433364753965997 minor Laurent Chapon Laurent Chapon Iteration 14 closed fixed Fix various bugs/incompatibility issues
#316 enhancement 11:35:06 1433364754428679 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Cross Correlation Algorithm

Create a cross correlation algorithm. This is required when determining offsets between a detector and a reference detector. This is used for example in determining a calibration table for diffraction focusing.

#317 enhancement 10:09:57 1433364754888399 major Freddie Akeroyd Freddie Akeroyd Iteration 15 closed fixed Update NeXus library

Update NeXus to version 4.2, which includes a C++ API

#318 enhancement 10:20:48 1433364755363717 major Russell Taylor Nick Draper Iteration 14 closed fixed Improve Binary operation Performance

If the output workspace is the same as one of the input workspaces do not create a new one. It should be possible to check and do this in the Binary Operation class and therefore improve performance for all the binary operations.

#319 enhancement 15:41:26 1433364755836438 major Martyn Gigg Martyn Gigg Iteration 14 closed fixed Create a method to rerun a chain of algorithms after a workspace has been replaced
#320 enhancement 16:48:02 1433364756329546 major Martyn Gigg Martyn Gigg Iteration 14 closed fixed Add the possibility of bringing up a dialog for commands in a python script
#321 enhancement 23:43:13 1433364756798067 major Laurent Chapon Laurent Chapon Iteration 14 closed fixed Create VectorHelper classin kernel

Create Class in kernel for routine vector operations, unary and binary operations and predicates

#322 enhancement 10:00:49 1433364757260844 major Martyn Gigg Nick Draper Iteration 14 closed fixed Investigate "add custom script action" in QTIPLOT

We want to be able to add script menus for users.

We need them to be available on restarting the application and to understand how to add these automatically for specific lists of scripts.

Could these be added by a python script?

#323 enhancement 10:02:55 1433364757720959 major Martyn Gigg Nick Draper Iteration 14 closed fixed Display log values within Mantiplot

Add an entry to the workspace context menu for "Sample Logs ...". This should open a further menu listing all of the logs on the Wrokspace->sample object.

Selecting one should import the values as a table and a 1D graph.

#324 defect 10:04:30 1433364758224364 major Martyn Gigg Nick Draper Iteration 14 closed fixed Usability Right click context menu only applies to selected item

This applies to both the Workspace Matrix and the workspace list.

Actions on the context menu apply to the selected item, not to that clicked on.

#6512 enhancement 09:20:38 1433377017047685 Framework major Jay Rainey Owen Arnold Release 3.1 closed fixed [ICAT] Algorithm error reporting

A lot of algorithms in the ICAT category are throwing the same basic exception message.

throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");

Some of these were replaced as part of #6490 to give better information on login. It would be best if someone where to go through these error scenarios and check that

  • They are reporting the right information, which should be useful to the end-user
  • That there is reduced duplication of error messages. Looks like a lot of copy-paste at the moment.

The quick fix #6490 should also be reviewed, because the throwCatalogError() function is duplicated across two algorithms.

Nick. Reassign as you see appropriate. It might be that I'm the best person to look at this.

ICAT
#327 enhancement 20:19:43 1433364759690202 critical Martyn Gigg Laurent Chapon Iteration 14 closed fixed Fix mantidPlot problem when zooming

When plotting 1D graph in MantidPlot and zooming several times, the computer hang sometimes for several minutes. Problem experienced under Linux 64 on two different computers. Probably not specific to MantidPlot but qtiplot in general. This is critical if one wants to deploy Mantid soon on several beamlines.

#328 defect 20:59:26 1433364760194800 major Martyn Gigg Laurent Chapon Iteration 14 closed duplicate Bug in PlotSPpectra for workspace with only 1 spectrum

Trying to plot a spectrum when the workspace contains only one spectra shows nothing.

#329 enhancement 22:23:04 1433364760670066 minor Laurent Chapon Iteration 14 closed duplicate segmentation fault when closing Workspace but plot still active

This happens when a mantid Workspace is dragged in the qtiplot window and some plot (1D, 2D or 3D) is active and linked to this workspace. If one closes the workspace without closing the plot window first, mantidplot terminates with segmentation fault.

#330 enhancement 22:25:55 1433364761147671 critical Anders Markvardsen Laurent Chapon Iteration 20 closed fixed Create time-of-flight fitting function Ikeda-Carpenter

This function gives often a better description than the back-to-back exponential function.

#331 defect 14:11:21 1433364761629383 major Martyn Gigg Nick Draper Iteration 14 closed fixed UNIX bug: Crash on display of LoadEmptyInstrument

in unix loadEmptyInstrument on a file and then show instrument.

ddd suggests the error is in ??ColorMap->getColor However this works with a real raw file and therefore must be something about the workspace created by LoadEmptyInstrument

#332 defect 14:19:30 1433364762093314 major Martyn Gigg Nick Draper Iteration 14 closed fixed UNIX Bug: Crash when closing MantidMatrix with dependants

Steps:

  1. load up a workspace and drag the matrix onto the screen
  2. create a 1D plot from one of the spectra
  3. close the mantidmatrix
  4. crash!

from ddd - this appears to be in MantidMatrix->closeDependants

#333 defect 14:22:28 1433364762558153 major Martyn Gigg Nick Draper Iteration 14 closed fixed Unix bug: Fast algorithms can cause a frozen progress window

If you run a very fast algorithm (such as cropworkspace) then you can get a partially filled progres window that is frozen and prevents you running any other algorithms.

This is probably a race condition.

#334 enhancement 14:23:24 1433364763025270 major Anders Markvardsen Nick Draper Iteration 15 closed fixed Instrument definition for LOQ

talk to Richard Heenan

#335 enhancement 14:24:05 1433364763481661 major Anders Markvardsen Nick Draper Iteration 15 closed fixed Instrument definition for SANS2D

talk to Richard Heenan

#336 enhancement 16:59:52 1433364763942870 major Martyn Gigg Nick Draper Iteration 14 closed fixed bug: cannot plot the last spectra of a workspace

steps:

  1. load and drag the workspace matrix onto mantidplot
  2. scroll to the last spectra in the matrix.
  3. attempt to plot the spectra using the context menu.
#337 enhancement 09:38:40 1433364764417391 major Martyn Gigg Iteration 14 closed fixed Include the name of the current script file in the script window title
#338 enhancement 11:17:16 1433364764889584 major Pascal Manuel Nick Draper Iteration 15 closed fixed create wish definition
#339 enhancement 12:58:19 1433364765386319 major Sri Nagella Sri Nagella Iteration 15 closed fixed Implement OpenCascade CSG operations

Implement and integrate CSG operations using OpenCascade library. Linux build for OpenCascade

#341 enhancement 17:51:08 1433364766344873 major Martyn Gigg Martyn Gigg Iteration 15 closed fixed Implement a method to switch off the rerunning of algorithm chains
#342 defect 13:36:45 1433364766873976 major Martyn Gigg Iteration 14 closed fixed Closing qtiplot does not ask about saving modified scripts
#343 defect 13:42:14 1433364767334046 minor Martyn Gigg Martyn Gigg Iteration 15 closed wontfix Windows style paths do not work in a script
#344 enhancement 13:42:58 1433364767792979 minor Martyn Gigg Iteration 15 closed fixed Reorganise workspace context menu and make it more appropriate
#345 defect 13:44:18 1433364768291976 minor Martyn Gigg Iteration 15 closed fixed Graphs created using scripts do not get dynamically updated
#346 enhancement 13:58:57 1433364768752583 minor Martyn Gigg Iteration 15 closed fixed Double-clicking on a sample log should import it
#347 defect 14:05:47 1433364769217699 minor Roman Tolchenov Russell Taylor Iteration 15 closed fixed MantidPlot has stopped remembering previously entered values for properties
#348 defect 16:08:45 1433364769689037 minor Martyn Gigg Martyn Gigg Iteration 15 closed fixed Running algorithms from a script leaves the algorithm dock counter at 1 when none are running
#349 enhancement 20:03:03 1433364770170471 minor Martyn Gigg Iteration 15 closed fixed Update sample log importing to include string data
#350 defect 09:42:29 1433364770628551 minor Martyn Gigg Iteration 15 closed fixed Script window save dialog does not have the correct parent
#352 enhancement 13:37:34 1433364771578746 major Roman Tolchenov Roman Tolchenov Iteration 14 closed fixed MantidPlots crushes on Windows now when closing a MantidMatrix with dependents.
#421 enhancement 12:49:09 1433364804742875 major Roman Tolchenov Roman Tolchenov Iteration 15 closed fixed Allow disabling creation of ManagedWorkspace
#422 enhancement 13:39:54 1433364805221565 major Roman Tolchenov Roman Tolchenov Iteration 15 closed fixed Change MoveInstrumentComponent
#6526 enhancement 01:09:12 1433377051695244 Framework minor Wenduo Zhou Andrei Savici Release 3.1 closed fixed Numbering in FilterEvents

In FilterEvents the workspaces are numbered from 0. If you choose to group these, an algorithm will act on the group, but the output workspaces are numbered from 1. Change FilterEvents to output good data from 1.

With the new option, first the unfiltered workspace will be not output. Then the other workspaces will start from index 1 and be consecutive. No workspace will be removed even if there is no event inside.

#354 enhancement 10:25:28 1433364772502761 major Russell Taylor Russell Taylor Iteration 15 closed fixed Add solidAngle method to IDetector
#355 enhancement 10:25:51 1433364772978315 major Sri Nagella Nick Draper Iteration 15 closed fixed 1-1 scaling of objects

We need to ensure that objects are not distorted by stretching in the instrument view. They should remain as a true to life depiction of the shape even when zooming to a particular object.

#356 enhancement 10:26:56 1433364773438602 major Sri Nagella Nick Draper Iteration 15 closed fixed Sample Centered rotation and zoom

the zoom and rotation should remain be centered around the sample.

#357 enhancement 10:29:52 1433364773905518 major Sri Nagella Nick Draper Iteration 15 closed fixed Triangle caching for composite objects

Cache the triangle definitions of complex objects to a file and read on subsequent runs. Very the cache file is up to date by comparing last modified dates against the instrument definition file.
If this turns out not to improve performance then we may drop it.

#359 enhancement 15:16:50 1433364774842153 critical Martyn Gigg Nick Draper Iteration 15 closed fixed Improve threading model for Python scripts

Ideally we want the execution of the script to occur in it's own thread. You will have to catch every interaction with the user interface and marshall the call onto the correct thread.

Also while doing this it is worth thinking about what we may be able to do in terms of progress reporting for long running scripts. Is there any way to have an execution pointer point to the line of the script being executed?

#360 enhancement 15:19:09 1433364775317660 blocker Russell Taylor Nick Draper Iteration 15 closed invalid Attenuation correction for flat plates

Ideally this would use the analytical method, but could use the same method as for cylinders if time will not allow the analytical method.

DEADLINE: Feb 10th

#361 enhancement 15:25:59 1433364775843341 major Laurent Chapon Nick Draper Iteration 16 closed fixed Speed up Cylinder attenuation correction

This is to cover to speedups

  • investigate replacing exponential with a table lookup (talk to Laurent about this otherwise Laurent may well duplicate it anyway)
  • Add a parameter to define how many time bins should be used(100% = all, 10% use 10% of time bins and interpolate).
  • Interpolation should be linear or quadratic whichever is better.
#362 enhancement 15:30:18 1433364776315230 major Anders Markvardsen Anders Markvardsen nick.draper@… Iteration 15 closed fixed Allow for parameters in instrument definition file

Allow, for example, the 'x','y' or 'z' position of a component defined in an instrument definition file (IDF) to be determined by values in the logfiles of ISIS measurements.

The user should be done allowing to specify <parameter> elements in the IDP that have the attributes:

parameter-name (e.g. 'x') type (default = double) logfile-id (equal to logfile filename minus run number and file extension) eq (short for equation: value from logfile may need to be converted) extract-single-value-as (how to extract value from logfile)

#363 defect 10:16:31 1433364776818109 major Martyn Gigg Nick Draper Iteration 15 closed fixed MantidPlot Crashes when closing a graph window after table is deleted

Steps

  1. from a mantidMatrix plot a 1D graph of a spectra
  2. Closw the resulting table, in the dialog box choose delete
  3. Now close the graph window
#364 enhancement 16:28:08 1433364777292667 minor Martyn Gigg Sri Nagella Iteration 23 closed duplicate Instrument render window to include Instrument orientation

1) Read the Instrument Orientation (Axis, Up vector and (right or left handed axis) 2) Store the values in the Instrument defination 3) Set these values to the instrument render window. 4) set default view to be this initial orientation

#365 enhancement 08:51:42 1433364777775086 major Nick Draper Nick Draper Iteration 15 closed fixed Crystallography user session preperation
#366 enhancement 12:08:20 1433364778304516 critical Roman Tolchenov Nick Draper Iteration 15 closed fixed Parse and split log files based on Running status and period
#367 enhancement 09:44:47 1433364778785839 major Martyn Gigg Iteration 15 closed fixed Property values entered in a script should not be changeable in the subsequent dialog
#368 enhancement 09:57:52 1433364779272679 major Russell Taylor Russell Taylor Iteration 15 closed fixed Enable division of workspaces when Y units are different

Currently the validators prevent this

#369 enhancement 12:23:59 1433364779755190 major Roman Tolchenov Roman Tolchenov Iteration 15 closed fixed Make usage of ManagedWorkspace clearer.
#370 enhancement 16:42:41 1433364780225067 major Martyn Gigg Iteration 15 closed fixed Create an algorithm to correct data to an RKH file
#371 defect 10:22:49 1433364780703480 major Roman Tolchenov Iteration 15 closed fixed MantidMatrix in MantidPlot does not update itself when UpdateDAE is running.
#372 enhancement 12:27:00 1433364781170458 critical Roman Tolchenov Nick Draper Iteration 15 closed fixed Create MoveInstrumentComponent Algorithm

Parameters

  • Workspace (in/out) (mandatory)
  • Component Name (string)
  • Detector id (integer)
  • X
  • Y
  • Z
  • Relative Position (bool) (mandatory) default yes

The algorithm will find the identified component and apply rthe change through the instrument parameter map.

#373 enhancement 13:04:43 1433364781649925 major Russell Taylor Nick Draper Iteration 15 closed fixed Allow removal to non edge bins with RemoveTimeBins (also rename to RemoveBins)

Allow the removal of bins from the middle of the range. Add a parameter for interpolation (initially allow None and linear). If linear interpolation interpolate the value across the remaining bins.

If None then just remove it.

#374 enhancement 14:07:15 1433364782119663 minor Roman Tolchenov Martyn Gigg Iteration 18 closed duplicate MantidMatrix import dialog does not accurately describe what is being imported, ie spectraNo vs spectraIndex
#423 enhancement 15:39:09 1433364805688030 major Martyn Gigg Iteration 15 closed fixed Alter memory management on Linux when creating new workspaces
#11194 21:04:40 1433388432367300 Framework major Steven Hahn Backlog new RefAxis wastes memory by calling NumericAxis constructor.

RefAxis inherits NumericAxis and on construction calls the NumericAxis constructor. The NumericAxis constructor then initializes std::vector<double>m_values of length l. This vector is unused by RefAxis, whose values are stored in the parent workspace.

The larger issue is cases like in ticket #1179 ( http://trac.mantidproject.org/mantid/ticket/11179 ) where a member function inherited from NumericAxis used m_values instead of the parent workspace. In this particular case, the two were of different length.

#11404 10:29:54 1433388902083367 Framework major Martyn Gigg Owen Arnold Backlog new Validator Error Messages
  auto widthVectorValidator = boost::make_shared<CompositeValidator>();
  widthVectorValidator->add(boost::make_shared<ArrayBoundedValidator<int> >(0, 100));
  widthVectorValidator->add(boost::make_shared<MandatoryValidator<int > >()); // incorrect
  // widthVectorValidator->add(boost::make_shared<MandatoryValidator<std::vector<int> > >()); // correct

  declareProperty(new ArrayProperty<int>(
      "WidthVector", widthVectorValidator
      , Direction::Input), "Width vector. Either specify the width in n-pixels for each dimension, or provide a single entry (n-pixels) for all dimensions." );

now do

Algorithm alg;
alg.setChild(true);
alg.initialize();
std::vector<int> widthVector(1, 1);
alg.setProperty("WidthVector", widthVector); // Crashes out 

This last line crashes out with "Value was not of expected type." from TypedValidator, but the error was with the declaration of the MandatoryValidator. Would be better if the isValid message reflected that.

#376 enhancement 14:10:25 1433364783105444 major Nick Draper Nick Draper Iteration 15 closed fixed Create an algorithm to Sum all of the spectra in a workspace

Maintain existing binning

#377 enhancement 14:12:19 1433364783573040 blocker Martyn Gigg Nick Draper Iteration 15 closed fixed Create an algorithm to save as 1D RKH format
#378 enhancement 17:15:43 1433364784040954 minor Martyn Gigg Nick Draper Iteration 15 closed fixed Add Optional Message to algorithm dialog box when invoked from Python

When a dialog is invoked from Python then add an option parameter to the end to take a message string.

This string should then be displayed in the top of the parameter dialog box above all of the input controls.

#379 enhancement 17:42:50 1433364784504670 major Roman Tolchenov Nick Draper Iteration 15 closed fixed Make it easy for Child Algorithms to post progress through their parent

Extend the CreateSubAlgorithm method to take another two Paramters.

  • ProgessScaleFactor default 1
  • ProgressOffset default 0

Then wire up the parent algorithm to listen to the progress events of the child scale and offset them appropriately and then send them from the parent.

Warning: consider that there may be more than one sub algorithm per parent.

RebinToWorkspace is a good example case for the need for this.

#381 enhancement 09:44:13 1433364785448194 major Ronald Fowler Nick Draper Iteration 15 closed fixed Identify instrument components contained within a volume

We need to be able to identify components contained within a volume in the instrument geometry.

This will be used later by algorithms to mask or group detectors etc.

We should use the instrument tree and bounding boxes to improve the speed of this.

#383 enhancement 09:49:34 1433364786418734 major Ronald Fowler Nick Draper Iteration 15 closed fixed Create an algorithm to MarkDeadDetectorsByShape

This should use the code in #381, collect detector ids and then use MarkDeadDetectors to do the work.

#384 enhancement 14:06:16 1433364786891282 minor Martyn Gigg Nick Draper Iteration 15 closed fixed Python scripting improvements
  1. Separate script execution results. Use a separator like ########## exectution date and time ###########.
  2. Provide aliases for mtdHelp and mtd as mantidHelp and mantid.
#385 enhancement 14:45:54 1433364787371812 major Russell Taylor Russell Taylor Iteration 15 closed fixed Make it possible to change the instrument on a workspace

Basically need to be able to run LoadInstrument again with a different definition file. At present, trying to do this fails.

#387 enhancement 15:45:53 1433364788331011 major Nick Draper Iteration 16 closed wontfix Implement parse mode for script validation?

From Software requirements

When in parse mode the framework will check the parameter settings of each algorithm by initialising each in turn, but will not actually execute the algorithm.

#388 defect 14:16:45 1433364789004250 major Roman Tolchenov Roman Tolchenov Iteration 15 closed fixed Import of workspace created by LoadEmptyInstrument crashes MantidPlot
#389 enhancement 11:50:05 1433364789468261 major Sri Nagella Nick Draper Iteration 15 closed fixed Wish definition causing graphics card memory overload

As shown and Roman's and Pascal's desktop pcs.

#390 enhancement 14:10:11 1433364789949173 major Nick Draper Nick Draper Iteration 15 closed fixed Create a solidangle algorithm
#391 defect 17:00:49 1433364790418929 major Russell Taylor Russell Taylor Iteration 15 closed fixed Remove SpectraDetectorMap dependency on its containing workspace

There's a problem with SpectraDetectorMap in that it holds a pointer to the workspace it belongs to, but in theory a map can be shared between workspaces. I'm going to move certain methods up into MatrixWorkspace to resolve this.

#392 enhancement 11:27:30 1433364790948866 major Russell Taylor Nick Draper Iteration 15 closed fixed SANS: BackgroundCorrection algorithm

Corrects for a flat background.

Allow parameters for the user to give an x range to consider to be the background area.

#393 enhancement 11:32:35 1433364791409514 major Martyn Gigg Nick Draper Iteration 15 closed fixed MantidPlot Icon

create and use a mantidplot icon to replace the QTIplot one

#394 enhancement 11:46:25 1433364791876263 major Martyn Gigg Nick Draper Iteration 15 closed fixed new algrorithm: CreateSingleValueWorkspace

For use when when uses want to perform a uniform correction of data to a single value.

Parameters

  • outputWorkspace
  • Value
  • Error (optional)
#395 enhancement 14:11:10 1433364792351085 major Roman Tolchenov Nick Draper Iteration 15 closed fixed SANS: RebinPreseveValue

Create a version of the lagorithm that performs rebinning, but does not share the value across bin, the original value should be maintined.

Note: this algorithm has to cope with a raggedly binned input workspace.

Parameters:

  • inputWorkspace (Matrix)
  • outputWorkspace (2D)
  • params - rebinning parameters as in rebin
#424 enhancement 11:57:41 1433364806166801 major Roman Tolchenov Martyn Gigg Iteration 16 closed fixed Implement an interface to TableWorkspace in MantidAPI
#473 enhancement 14:19:08 1433364833131353 major Roman Tolchenov Roman Tolchenov Iteration 16 closed fixed Use unique IDs to address instrument components
#8095 defect 17:32:30 1433380953715427 Direct Inelastic major Alex Buts Alex Buts robert.bewley@… Release 3.0 closed fixed Angular detectors data generated by save_nxspe are incorrect for rings

Two pictures, attached to the ticket illustrate this for LET one is obtained using precaluclated phx file and another one -- from data, located in nxspe.

#397 enhancement 17:40:37 1433364793310230 major Russell Taylor Nick Draper Iteration 16 closed fixed SANS: python stript
#398 defect 16:57:24 1433364793771637 major Russell Taylor Russell Taylor Iteration 15 closed fixed Cylindrical angles are not calculated correctly for grouped detectors

If you group two detectors (or banks of detectors) that are symmetrically on opposite sides of the beamline a call to detectorTwoTheta gives 0, which is not what we want! This is because they are averaged in cartesian coordinates before conversion to polars.

Also, the view detectors option in qtiplot show the absolute r,theta,phi values when it would be better to show them relative to the sample position (in most cases the sample is at the origin, but not always).

#399 enhancement 17:07:01 1433364794278360 major Russell Taylor Russell Taylor Iteration 15 closed fixed The solidAngle algorithm should check for dead/masked detectors and ignore them

Actually, it should probably put a zero in the relevant spectrum.

#400 enhancement 12:07:25 1433364794737190 major Nick Draper Nick Draper Iteration 15 closed fixed SANS: create an algorithm to transfer poisson errors from a counts dataset

x->x

y->y

sqrt(YorigCounts)->e

#401 enhancement 10:30:24 1433364795209620 major Ronald Fowler Nick Draper Iteration 15 closed fixed Improve the perfomance of solid angle calculations

Use the triangulation to improve the accuarcy and performance

#402 enhancement 16:25:08 1433364795702538 major Anders Markvardsen Anders Markvardsen nick.draper@… Iteration 16 closed fixed OSIRIS, POLARIS, PEARL detector type descriptions

Include in the instrument definition files for OSIRIS, POLARIS, PEARL a description of the dimensions of different detector types.

#403 defect 16:25:53 1433364796169487 minor Martyn Gigg Iteration 15 closed fixed The script window does not scroll with the execution arrow
#404 enhancement 09:50:23 1433364796668657 major Martyn Gigg Iteration 15 closed fixed Include a simpler command to set the current working directory for python scripts
#405 defect 14:53:55 1433364797159664 minor Russell Taylor Russell Taylor Iteration 16 closed fixed Marking detectors dead affects shared instrument.

When a detector is masked using the MarkDeadDetectors algorithm this sets a 'dead' flag within the Instrument object itself. This is potentially shared among workspaces and would even be loaded in as the instrument for a newly loaded raw file. This behaviour is probably OK in the majority of cases where the same detectors are always masked out, but there could be situations (e.g. debugging) where it isn't what's wanted.

#406 enhancement 16:48:59 1433364797632633 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Allow wildcards in FileValidators

In Qt, it is possible to use wildcards in filters when opening file dialogs. The filters are not regular expressions but from what I can see it closely resembles pattern matching in a Unix shell.

For example

  • * matches anything
  • ? matches exactly one character
  • [a-z] matches any lower-case letter and similarly [0-9] matches any digit between zero and nine inclusive

Unfortunately the documentation is a little vague so I test tthe above things to make sure they worked

#408 enhancement 10:47:58 1433364798558305 major Roman Tolchenov Roman Tolchenov Iteration 15 closed fixed Make MantidMatrix display numbers in different formats
#409 enhancement 10:48:39 1433364799023996 major Steve Williams Nick Draper Iteration 17 closed fixed Improve the feedback on why algorithms refuse property values

Alter validators to return a string rather than true false (empty string == pass). This then needs to be exposed to the users as a reason for failure, ideally as a tooltip over the *. Also the reason should be output to the log.

#410 enhancement 10:50:32 1433364799493959 major Steve Williams Nick Draper Iteration 18 closed fixed Add a description to the Properties of algorithms

This should be optional when declaring a property but can be used to provide a longer descrtiption than the name alone. This should be exposed to the users as a tooltip on the relevant controls. Also consider adding to the information in python mantidHelp("aa").

#411 enhancement 11:47:08 1433364799972611 major Martyn Gigg Iteration 15 closed fixed The simple Python API should be imported with the command line script
#412 enhancement 17:18:12 1433364800431473 minor Martyn Gigg Iteration 15 closed fixed Remove usage of boost::filesystem in favour of Poco::Filesystem

As the boost::filesystem library is one of the newer components of boost it is still subject to change, i.e. method name changes, which will cause problems if we decide to change the version in the future. The Poco library has similar functionality so replace it with this.

#413 enhancement 10:39:17 1433364800923829 major Martyn Gigg Nick Draper Iteration 15 closed fixed Extracting workspaces in Python fails

Error on this command

w=mtd.getWorkspace('rebinned')

Error

w=mtd.getWorkspace('rebinned')

#415 enhancement 12:48:48 1433364801892499 major Laurent Chapon Nick Draper Iteration 16 closed fixed Diffraction output file format
#416 enhancement 13:40:29 1433364802368798 major Nick Draper Nick Draper Iteration 15 closed fixed Diffraction focussin - prevent group 0

group 0 or negative groups should be removed from the output of the focussed data

#417 enhancement 15:11:58 1433364802831367 minor Russell Taylor Russell Taylor Iteration 16 closed duplicate Use GeneralisedSecondDifference algorithm in FindPeaks

FindPeaks should be updated to use Laurent's GeneralisedSecondDifference algorithm as a subalgorithm. Apart from the code duplication, it's also more general and flexible than what's there at the moment.

#418 enhancement 15:48:29 1433364803296075 major Martyn Gigg Iteration 15 closed fixed Modify Python API to handle TableWorkspace objects
#419 enhancement 10:24:30 1433364803780221 major Anders Markvardsen Nick Draper Iteration 16 closed fixed ShapeFactory Tests

We should have some.

See FindDetectorsInShapeTest for an example of how to create an XMLNode from a string.

Create a test for each basic shape and then just test a few points on each. Also create a few more complex composite shapes to show the algebra line parsing works.

#11399 20:34:01 1433388892125385 Framework major Wenduo Zhou Andrei Savici Release 3.5 new Refactor ConvertCWPDMDToSpectra

The code is very complicated. It reimplements Rebin, InterpolatingRebin, Scale. It can be reduced by at least a factor of 3, and made more readable.

#426 defect 14:28:31 1433364807169538 major Martyn Gigg Iteration 15 closed fixed Replacing a workspace in a script results in a crash when a MantidMatrix is open
#428 enhancement 09:14:28 1433364808270468 Mantid minor Nick Draper Nick Draper Iteration 27 closed invalid Add motion properties to SANS2D definition
#429 enhancement 10:52:36 1433364808734748 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Allow more manipulation of MantidMatrix windows from a script
#430 enhancement 13:41:44 1433364809232400 major Roman Tolchenov Roman Tolchenov Iteration 16 closed fixed Ctreate a launcher program which checks for Mantid updates before starting MantidPlot (Windows)
#431 defect 14:10:09 1433364809712649 major Sri Nagella Nick Draper Iteration 15 closed fixed triangular chache is not working

I am getting empty 1KB cache files or nothing. So I guess this is not sppeding anything up!

#432 enhancement 13:40:50 1433364810190755 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Generalise peak- finding routine

Generalise peak- finding routine to use SecondDifference. Parametrize a threshold value for peak detection. To be used for powder as well as single crystal work

#433 enhancement 14:08:43 1433364810658672 major Laurent Chapon Laurent Chapon Iteration 16 closed duplicate Prompt Pulse removal HRPD
#434 defect 10:03:40 1433364811137158 major Martyn Gigg Martyn Gigg Iteration 15 closed fixed Command line Python doesn't work due to changes in relative directory handling

Changing the reading of paths to reference the executable's directory causes problems when running solely through Python since the directory of the executable is Python's directory and not Mantid

#435 enhancement 13:27:37 1433364814564125 major Martyn Gigg Martyn Gigg Iteration 15 closed fixed Remove boost filesystem libraries from third party
#436 enhancement 09:04:06 1433364815030108 major Roman Tolchenov Roman Tolchenov Iteration 16 closed fixed Update Windows Installer
#437 enhancement 13:53:25 1433364815498063 minor Russell Taylor Nick Draper Iteration 19 closed duplicate SANS: ConvertUnits to include gravity

ConvertUnits should take gravity into account when calculating L1 and L2.

CHECK: if L1 has to be included.

#438 defect 13:54:01 1433364815963999 critical Russell Taylor Nick Draper Iteration 21 closed fixed Correct handling of distributions
#439 enhancement 13:55:03 1433364816427519 critical Russell Taylor Nick Draper Iteration 17 closed fixed SANS: 2D data analysis

Investigate and implement the changes required to support 2D SANS data anaylsis.

#440 enhancement 14:43:12 1433364816951058 minor Martyn Gigg Nick Draper Iteration 16 closed fixed Add Clear All Memory option to MantidPlot Mantid Menu

Add a menu option to clear all memory.

It should: Warn the users that all workspaces and windows will be removed, and ask if they are really sure

Remove all windows in MantidPlot.

Run frameworkManager.clear

#441 enhancement 14:44:47 1433364817411702 critical Martyn Gigg Nick Draper Iteration 16 closed fixed Create 1st draft GUI for SANS 1D analysis

This will act as a single input for the LOQ script.

Start with an empty algorithm that the script can extract values from and use.

#442 enhancement 14:46:45 1433364817884606 critical Roman Tolchenov Nick Draper Iteration 16 closed fixed Top level Error catching in MantidPlot

Investigate if there is a top level error trapping method that can be used in QT apps. Implement one that will at least catch and log the error before exiting the app gracefully.

Martyn mentioned something he had come across so it would be worth talking to him.

#443 enhancement 14:48:56 1433364818355322 major Martyn Gigg Nick Draper Iteration 16 closed fixed Seperate Generic algorithm GUI from Qtiplot

This should be runnable just using QT and Mantid.

#444 enhancement 14:55:48 1433364818840090 major Martyn Gigg Nick Draper Iteration 16 closed fixed Allow specialised User interfaces for specific Algorithms

This should allow specialised user interfaces to be created for a limited number of algorithms.

This will have to include:

  • A suitable interface or base class that all specialized user interfaces inherit from.
  • A dynamic factory class (see kernel) that allows the user interface for a algorithm to be created.
  • Final cleanup is to replace the hard coded LoadRaw dialog that the Load button uses.

Again this should remain independent from qtiplot, although it can of course use QT and mantid

#445 enhancement 15:00:00 1433364819304653 major Anders Markvardsen Nick Draper Iteration 17 closed fixed NIMROD instrument definition

talk to Daniel Bowron or Alan Soper

#446 enhancement 15:02:58 1433364819772266 major Anders Markvardsen Nick Draper Iteration 18 closed fixed POLREF instrument definition

Talk to Tim Charlton

#447 defect 15:26:18 1433364820234090 Mantid minor Roman Tolchenov Nick Draper Iteration 26 closed fixed Instrument component clipping when moving

The clipping is not quite working when moving a bank for example after selecting it in the instrument tree.

User want to be able to move the selected component around without running into clipping issues.

#448 enhancement 15:26:55 1433364820699907 major Martyn Gigg Nick Draper Iteration 18 closed fixed Why does changing the colour map take so long?

self explanatory

#449 enhancement 15:28:16 1433364821170351 major Nick Draper Iteration 18 closed duplicate Create a widget for displaying arbitrary objects (or object components)

An example of usage of this would be a preview to display when a user is defining the shape of a Sample.

#451 enhancement 15:31:58 1433364822120474 major Martyn Gigg Nick Draper Iteration 16 closed fixed Create an algorithm to allow the definition of the sample shape

REQUIRES #444

The underlying algoirthm is simple. An example of converting XML into an object is in FindDetectorsByShape.

The complex part is defining an easy to use GUI for this.

#472 enhancement 11:20:35 1433364832665067 major Nick Draper Nick Draper Iteration 16 closed fixed Rename Attenuation Correction algorithm to CylinderAbsorption
#452 enhancement 15:33:52 1433364822598299 critical Ronald Fowler Nick Draper Iteration 17 closed fixed Create an algorithm to scale PSDs according to an input file

We will need to talk to Rob Bewley to get a sample file for MERLIN. Then we will need to apply this to the instrument scaling #358 and position.

#454 enhancement 15:34:44 1433364823569732 major Russell Taylor Nick Draper Iteration 19 closed fixed Mac version of MantidPlot
#6530 enhancement 10:44:51 1433377061557917 SANS critical Gesner Passos Anders Markvardsen anders.markvardsen@… Release 3.1 closed duplicate SANS: allow gui to load time sliced event data directly

Add the right of the the Multi-period tick box a input text box for a user to specify time slicing.

If this input text box is filled, and a user has specified an event data set, time-slice the event data

Report from meeting with sans inst scientists.

Until told otherwise time slicing must only be applied to data specified in the Scattering-Sample input box (top left hand corner input file)

Suggest is on the 'Run Numbers' tab to have the interface

Have a tick box called 'Time slicing' to the right of 'Multi-period' tick box, which if clicked allows the following lines on the 'Run Numbers' tab

From (sec) to (sec) Events (muA)

Whole file: 0.0 246.0 46

Input time range: 3.0 12.0 1.32

If slice range selected so small that either over less than one frame of data or less than 0.01 muA of neutrons counted then pop up a warning window telling the user about this, and ignore this reduction, but otherwise continue as normal. The latter is important when processing a batch file.

When time slicing is used add to the end of the workspace name _t3.0_12.0, where in this example 3.0 is the from time and 12.0 is the to time

Richard offered his scripts being used to slice and rebin event data. And pointed the trick used (around line 47) to avoid losing precision on the values of the time since the start of the run.

SANS
#6721 enhancement 19:30:03 1433377535838349 Mantid minor Vickie Lynch Peter Peterson Release 2.5 closed fixed Update Mandi geometry

Here is a snippet of the email I got from Marie on the topic.

I have added detectors 20, 32, and 33 in MANDI geometry input file and banking file:

[xuy@dev ~]$ ll /SNS/MANDI/2013_1_11B_CAL/calibrations/
total 32
-rw-rwxr-- 1 snsdata sns_mandi_team  1408 Mar 15 14:21 MANDI_bank_2013_03_15.xml
-rw-rwxr-- 1 snsdata sns_mandi_team 15294 Mar 15 14:21 MANDI_geom_2013_03_15.xml
...

MANDI runs after 206 will be translated using the new files. Please let me know if 
any of your recent runs needs to be re-translated.
PatchCandidate,Released
#11432 09:28:13 1433388971719289 Diffraction major Michael Wedel Michael Wedel Release 3.4 closed fixed Point group determination from trigonal space groups in hexagonal setting does not work

The construction of PointGroup-objects is based on space group symbols. This causes problems for some trigonal cases, because so far trigonal space groups are registered with hexagonal axes.

For fixing these ambiguities I want to introduce an additional property for Group, which contains the axes system. It can be either hexagonal or orthogonal (which covers all cases except hexagonal). This can then be used in the construction of the correct point group.

It should be easy to determine the system by inspecting the matrices of the contained symmetry operations, they have some special properties for hexagonal.

#455 enhancement 15:36:49 1433364824093707 Mantid critical Andrei Savici Nick Draper Iteration 29 closed fixed Implement Sample UBMatrix and allow n dimensional Q conversion

requires #451

We will need to talk to Pascal/Laurent/Toby about this one.

#457 enhancement 15:38:22 1433364825077650 major Nick Draper Nick Draper Iteration 16 closed fixed Define next steps for reflectometers

Nick to meet with Tim Charlton

#459 enhancement 15:52:10 1433364826080502 major Roman Tolchenov Nick Draper Iteration 16 closed fixed Change how 1D graphs of Mantid data are plotted

From the Scientific steering committee.

The form of plotting we choose should depend on the underlying data in the workspace.

If the data is histogram data (nX=nY+1) Default: we should plot the values at bin start up until bin end connecting together with horizontal lines. (ideally this option in MantidPlot should be renamed from Horizontal Lines to "Histogram"). Optionally: If the users opts to connect the lines together as points then we should plot the bin value in the center of the bin (as we do now).

If the data is point data (nX=nY) we should plot at X value and connect with lines. (anyoptions for connecting with steps or Histogram should be greyed out)

#460 enhancement 15:53:55 1433364826560233 Mantid minor Andrei Savici Nick Draper Release 2.4 closed fixed Averaging of Log data by current

Current we perform a time weighted average.

We should also offer a uA (current) weighted average.

Freddie can help us locate the time/uA data.

#462 enhancement 20:21:30 1433364827633651 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Speed-up picking in instrument Window mode

For large instrument such as WISH, when trying to select large number of pixels in picking mode, the selection process is quite time consuming. If we want the ability to use this interactively to apply algorithms (such as grouping or focusing), this parts need to be speeded-up.

#463 enhancement 09:26:36 1433364828096226 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Remove linking between MantidPlot and the DataObjects and DataHandling libraries

MantidPlot currently uses a cast to check what type of workspace has been created and prints a string accordingly. If the id() string on the workspace is set correctly for the different types, which it currently isn't, this method can be used instead of casting the pointer.

#465 enhancement 11:38:59 1433364829180811 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Create algorithm for empty diffraction calibration file (*.cal) from geometric grouping
#466 enhancement 23:49:33 1433364829642933 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Fix problem with z-buffer in instrument view
#467 enhancement 00:49:08 1433364830262516 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Change code to allow ActorCollection to use display list instead of direct rendering
#468 enhancement 00:54:32 1433364830728053 major Laurent Chapon Laurent Chapon Iteration 18 closed fixed Problem with WISH and MERLIN Definition: strange artefact, looks like some bounding boxes are completely off.
#469 enhancement 11:16:45 1433364831252330 major Roman Tolchenov Nick Draper Iteration 16 closed fixed Allow TablesWorkspaces to be displayed in MantidPlot

It would make sense to display these in qtiplot tables, although we may want to consider making them read only.

#470 enhancement 11:18:29 1433364831726775 major Russell Taylor Nick Draper Iteration 19 closed duplicate Retire FindPeaks algorithm for FindPeaks1D

This will involve updating StripPeaks to use the newer algorithm. Then removing the old one.

#471 enhancement 11:19:41 1433364832197951 major Nick Draper Nick Draper Iteration 17 closed fixed How should be hide bins form analyses while keeping iteration over the data simple

Nick to arrange a meeting to discuss

#7655 task 18:54:01 1433379856492274 Framework critical Ricardo Leal Russell Taylor Release 3.0 closed fixed Speed up CorrectFlightPaths unit test

This test has been shown to be one of our slowest unit tests; indeed on OS X it has been observed to take well over a minute! This needs to be improved to ideally ~1s but at least 3-4s across all platforms.

The first task is to refactor to not load a data file and use in-memory constructed test data instead. Just this step may well solve the speed problem on its own.

Maintenance
#475 enhancement 14:55:13 1433364834073463 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Simple integration does not take into account the fact that the workspace could be a distribution
#476 enhancement 12:10:15 1433364834544720 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Algorithm to load calibration file and create a 1D workspace containing groups

Will allow visualization of the instrument groups.

#477 enhancement 12:17:04 1433364835020009 major Anders Markvardsen Laurent Chapon Iteration 16 closed fixed GEM description of backscattering detectors not correct

The GEM detectors in backscattering are not described properly. They are overlapping and seem to be of the wrong sizes.

#478 enhancement 16:15:43 1433364835485564 major Nick Draper Nick Draper Iteration 16 closed fixed Fix algorithms using dataX when they should be calling readX
#479 enhancement 22:01:27 1433364835977285 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed LoadRaw to display run title
#481 defect 10:06:36 1433364836958696 minor Martyn Gigg Iteration 16 closed fixed Mantid installer does not check HKEY_CURRENT_USER for Python

Currently the installer only checks HKEY_LOCAL_MACHINE for the Python install path but if Python is only installed for the current user then the key is only present in HKEY_CURRENT_USER, so we should check this as well

#482 defect 10:08:34 1433364837434701 minor Martyn Gigg Martyn Gigg Iteration 19 closed fixed Python fails in MantidPlot if the numpy package is installed

It would appear that there is some sort of name clash with numpy and MantidPlot, most likely due to an excessive use of from [package] import * in the qtiplot Python start up files

#483 enhancement 11:18:48 1433364837924507 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Remove bin algorithm memory leak (leak about data size)
#484 enhancement 01:19:35 1433364838404816 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed PointByPoint vanadium correction
#485 enhancement 09:03:47 1433364838896070 major Freddie Akeroyd Freddie Akeroyd Iteration 16 closed fixed Mantid fails to build on linuxs1 (muParser)
  • muParser is not installed
  • muParser path in include statement is wrong
#486 defect 12:05:15 1433364839369981 minor Russell Taylor Russell Taylor Iteration 16 closed fixed Make phi in detectors table display cosistent with theta
#488 enhancement 13:18:35 1433364840341182 Mantid minor Anders Markvardsen Russell Taylor Release 2.0 closed duplicate SANS: Add new masking shapes

Just needs the definition of an appropriate shape as input to the MaskDetectorsByShape algorithm. They typically mask symmetrically on either side of the detector (so keep detectors where |angle|<phi and |angle-pi|<phi.

#490 enhancement 13:40:32 1433364841321541 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Allow a different name for scripts in the custom script menus
#491 task 15:19:26 1433364841801853 major Roman Tolchenov Martyn Gigg Iteration 24 closed fixed Understand separation of LoadDAE and UpdateDAE

Is there a reason why LoadDAE cannot just run itself in a loop instead using UpdateDAE to do this?

Please explain this to Nick

#492 enhancement 11:59:59 1433364842279583 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Add individual clear methods for Algorithms, data and instruments and expose to Python
#493 enhancement 13:40:52 1433364842740275 critical Anders Markvardsen Nick Draper Iteration 16 closed fixed ShapeFactory Improvements
  1. Move the ShapeFactory class to Geometery
  2. The class crashes the entire app if an incorrect string is entered into the algebra
  3. The class should be able to generate a default algebra sting if non is provided (assume you should union all inputted shapes).
  4. The class should recognise is an unknown shape definition is used and log that error.
#494 enhancement 16:19:41 1433364843224384 major Russell Taylor Nick Draper Iteration 16 closed fixed Improvements to Workspaces right click menu
  1. Add a new option "View Data" to the TOP of the menu. This should create a mantid matrix displaying everything.
  2. Add a new option "View Data Subset...". This should display the mantid matrix via the "Set Histogram Range" dialog.
  3. The effect of dragging a workspace onto the main area should be changed to the same as "View Data"
  4. The effect of double clicking a workspace name should be set to the same as "View Data"
#495 enhancement 12:43:51 1433364843699288 major Martyn Gigg Iteration 16 closed fixed Selected workspace should return the correct value even if onlya MantidMatrix is selected
#496 enhancement 12:55:34 1433364844211149 major Martyn Gigg Iteration 16 closed fixed Improve scripting messages that are sent to the results log when the script window is not available

The script output and errors that appear in the results log dock window are not consistent with those that appear when the script window is used.

#497 defect 13:02:19 1433364844682681 critical Roman Tolchenov Russell Taylor Iteration 18 closed fixed MantidPlot sometimes crashes when re-running algorithm with output workspace visible...

I.e. run an algorithm, drag on the output workspace to look at it, then re-run the algorithm with the same output workspace. This happens with Integration. It also happens with CropWorkspace if cropping down to a small size, which suggests it may be an issue only if the output workspace is small (?).

#498 enhancement 10:03:56 1433364845167972 major Laurent Chapon Laurent Chapon Iteration 16 closed fixed Speed-up diffraction focusing

Diffraction focusing is slow, and becomes a real problem for large instrument/slow machines. Should be able to take advantage of the focusing method to create only one vector temporary instead of chaining existing algorithms.

#499 defect 16:38:50 1433364845623065 critical Russell Taylor Russell Taylor Iteration 16 closed fixed There's a problem with the unit conversion to DeltaE

It leads to bin boundaries that first decrease, and then increase again. Definitely not what we want

#6543 enhancement 18:19:17 1433377093674357 Mantid major Alex Buts Alex Buts Release 2.5 closed fixed Modify LoadDetectorInfo algorithm to understand detector.nxs files

Detector.dat file describes modified detector's positions which replace Instrument description or raw file's detectors positions with the positions, calculated from a calibration procedure.

Unfortunately, it is an ascii file, which has to be read at each reduction step. This takes substantial time.

In addition to that, there are some cases (e.g. maps) when the detector.dat file is not availible and nxs file with specific format is provided instead.

The purpose of this ticket is to modify LoadDetectorInfo algorithm to understand this kind of nxs files too and modify the detector position/time of flight on the basis of such files.

#501 enhancement 22:38:11 1433364846591055 major Russell Taylor Laurent Chapon Iteration 18 closed fixed Modify normalise to monitor (only works with common bins)

At the moment, normalize to monitor works only for workspaces that have a common set of bins. Also it uses the workspace overload operator / which is very slow.

In modifying the alg to handle unmatching bins the monitor spectrum should be rebinned to match the data, not the other way around.

#502 enhancement 11:25:37 1433364847058899 minor Martyn Gigg Martyn Gigg Iteration 16 closed fixed Import PyQt modules into MantidPlot at startup to enable use of dialog boxes in scripts
#503 enhancement 12:41:43 1433364847532778 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Create a simple method for importing custom scripts into MantidPlot
#504 enhancement 13:43:46 1433364848014784 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Browse button for files should be more specific to whether load/save is being used
#505 enhancement 12:06:55 1433364848484803 major Martyn Gigg Iteration 16 closed fixed Clean up some 'using namespace' declarations in MantidPlot headers
#506 defect 13:55:55 1433364848957710 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Investigate problem with scoping in Python scripts running inside MantidPlot

The following code runs perfectly fine in a stand-alone Python editor but it fails with a name error when run through MantidPlot

import re

def myfunc():

re.compile('regex') print 'done'

myfunc()

#507 defect 15:01:59 1433364849428935 minor Martyn Gigg Iteration 16 closed fixed Fix MantidPlot so that it will actaully run when compiled in debug mode

When compiled in debug mode, MantidPlot throws an assertion pretty much as soon as it starts up. i.e. at the start of main

#508 enhancement 18:10:29 1433364849909054 blocker Russell Taylor Russell Taylor Iteration 17 closed fixed Enable the masking of individual time bins
#509 enhancement 22:17:00 1433364850384906 critical Russell Taylor Laurent Chapon Iteration 16 closed fixed Find a way to speed up binary operation, Workspace iterator are not optimized
#510 defect 10:07:23 1433364850846665 major Martyn Gigg Martyn Gigg Iteration 18 closed fixed Python read commands for workspace data should not be able to modify data at all

Using this type of command workspace.readX(0)[0] = 200 in a python script results in the data as viewed from a MantidMatrix changing. This should not be allowed to occur

#511 defect 08:31:19 1433364851332082 major Martyn Gigg Iteration 16 closed fixed MantidPlot crashes with fast script execution in Linux

It looks like this is due to the list of workspaces being refreshed. It happened for me when running LOQ_analysis_new and it seems to occur at random points

#513 enhancement 16:17:38 1433364852271866 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Extend custom widget library to include interfaces that are not associated with a particular algorithm

This will allow an interface that can stay active and drive aspects of the program as necessary. Again this will not be part of MantidPlot but if the plugin is loaded within MantidPlot then it can use the functionality that is available

#514 enhancement 09:05:43 1433364852738132 minor Martyn Gigg Martyn Gigg Iteration 16 closed fixed Allow Python API to handle suggested arguments

Change the Python API syntax so that if a property's value starts with a '?' then it is treated as suggested rather than mandatory

#515 enhancement 09:14:21 1433364853201203 major Roman Tolchenov Roman Tolchenov Iteration 16 closed fixed Fast LoadDAE
#516 enhancement 14:20:33 1433364853673489 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Add ability to import custom user windows to the Mantid Custom menu dialog
#517 enhancement 14:25:51 1433364854152822 major Martyn Gigg Martyn Gigg Iteration 16 closed fixed Move the Python functions that are at namespace level to the Python Framework manager object

There are three functions at namespace level in the PythonAPI code: GetWorkspaceNames; GetAlgorithmNames; CreateSimplePythonAPI.

These should really be methods on the Python FrameworkManager object

#518 defect 10:58:54 1433364854616335 major Martyn Gigg Iteration 16 closed duplicate Plotting tools are no longer activated on creating a graph
#519 defect 10:58:58 1433364855093765 blocker Martyn Gigg Nick Draper Iteration 16 closed fixed Zooming toolbar is disabled for 1D plots

A bug has been introduced.

Afftects windows and linux.

#520 enhancement 10:54:09 1433364855608784 major Russell Taylor Russell Taylor Iteration 16 closed fixed Create a UnaryOperation base algorithm and concrete algorithms as required by the reflectometers

This is initially for the reflectometers, who want to be able to correct the data values in a workspace according to the value of X at that point.

#521 enhancement 17:12:13 1433364856065230 minor Russell Taylor Russell Taylor Iteration 17 closed wontfix Remove unnecesary copying of X data

Now that the X vectors are copied in the WorkspaceFactory, there must be a lot of unnecessary copying over of X data going on in algorithms. A tedious task is to go through removing all of this.

#522 enhancement 11:07:27 1433364856564860 major Martyn Gigg Martyn Gigg Iteration 17 closed fixed Extend SANS custom interface
#523 enhancement 11:20:59 1433364857072631 major Roman Tolchenov Martyn Gigg Iteration 24 closed fixed Separate LoadDAE dialog from MantidPlot

Requires #491

#525 enhancement 12:37:21 1433364858056357 major Martyn Gigg Iteration 16 closed fixed Update MantidPlot python screenshot so that it is correct
1 2 3 4 5 6 7 8 9 10 11
Note: See TracReports for help on using and creating reports.