Feature #1653

Outcome of BornAgain user meetings in November

Added by pospelov about 1 year ago. Updated 12 months ago.

Status:ResolvedStart date:20 Nov 2016
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:Sprint 33

Description

Given issue contains a collection of user requests, observations discovered during Hamburg/Munich BornAgain tutorials in November. We can collect them here, discuss priorities and then form the list of normal issues.

Issues reported by the users.

Provide a way to save fitted image into the file.

In FitView there is no any button (or right mouse click action) to save fitted image into the file.

Implement platform independent crash handler.

There were quite some number of GUI's crashes (about 10-20 per 8 hours of tutorials). Our observation, is that users do not complain even in the course of tutorial and simply restart the application. The crash handler is required to show the stack trace and provide the button "Send report".

Implement "Restore unsaved project" in the case of crashed GUI.

The simplest possibility is to save the project every few minutes into Untitled.pro.back file.

Provide unddo/redo functionality.

This can be done first for sample construction. I think that we have to implement the full fledged "Command" pattern. This is not that complicated, since amount of actions we do with the model is not that high.

Commands: InsertItem, RemoveItem, SetItemProperty.
Every command will keep the pointer to the subject (SessionItem, the QVariant to change) and provide unndo functionality.
Improve drag-and-drop construction of a MultiLayer.

Many users have been experiencing problems while dropping Layer on top of a MultiLayer. It will be already good to increase size of areas around a MultiLayer, were such drop is allowed.

Provide the way to set external boolean map with masks to the detector plane.

User might already have a 2D map of booleans with masked detector channels.

Issues discovered during tutorial preparation.

plot_utils.py doesn't work from ipython notebook

ba.plot_intensity_data(result) doesn't generate any embedded image when used from ipython notebook

Revise IParameterized::printParameters and similar.

Item #1562

Provide ISample with possibility to export parameter tree in Python dictionary

Item #1562

Improve MinimizerCatalogue::toString

While preparing advanced fitting tutorial realized that the existing MinimizerCatalogue::toString provide too little information.
It contains only the list of minimizers, but not the list of their available options.

Get rid of SampleBuilder's "addressof"

Become new item #1675.

Implement FitSuite::printParameters (or ::parametersToString.)

Now GISASSimulation::printParameters() reports parameter names which are different from what FitSuite has.

# example step4_sample_builder.py

# GISASSimulation::printParameters()
'/GISASSimulation/Instrument/Beam/Intensity':0 
'/GISASSimulation/Instrument/Beam/Wavelength':0.1 
'/GISASSimulation/Instrument/Beam/InclinationAngle':0.00349066 
'/GISASSimulation/Instrument/Beam/AzimuthalAngle':0 
'/GISASSimulation/SampleBuilder/length_parameter':5 
'/GISASSimulation/SampleBuilder/decay_length':10

# attempt to add fit parameter with the name "/GISASSimulation/SampleBuilder/length_parameter" leads to exception,
# saying that following list is available:
'/FitSuiteObjects/FitObject/GISASSimulation/Instrument/Beam/Intensity'
'/FitSuiteObjects/FitObject/GISASSimulation/Instrument/Beam/Wavelength'
'/FitSuiteObjects/FitObject/GISASSimulation/Instrument/Beam/InclinationAngle'
'/FitSuiteObjects/FitObject/GISASSimulation/Instrument/Beam/AzimuthalAngle'
'/FitSuiteObjects/FitObject/GISASSimulation/SampleBuilder/length_parameter'
'/FitSuiteObjects/FitObject/GISASSimulation/SampleBuilder/decay_length'

Do we need all these prefixes?

Import MD data

Provide a way to easily translate 3d data (containing sld at each point) into a sample description

Provide extended print output for fit parameters during iterations.

Artur pointed out, that we do not have a way to see how many sample parameters are steered by given fit parameter.
Related to #1478 too.

GUI: provide convenient way to set min,max for relative difference map.

And probably all other properties of plot on FitView

GUI: multiple crashes

RunFit button stopped to work. The rest was working.

Python fitting

If no fit parameters are defined, it crashes. On Windows, it does this without any clear message. So we need to provide some clear feedback when this happens and exit gracefully.

Revise chi squared module

Provide examples/functional tests to create custom chi2 module from python. Provide log10, sqrt amplitude function in GUI.
Implement showing of chi2 in GUI (kind of dedicated Chi2PresenterMinimizer).

History

#1 Updated by pospelov about 1 year ago

  • Description updated (diff)

#2 Updated by pospelov about 1 year ago

  • Description updated (diff)

#3 Updated by pospelov about 1 year ago

  • Description updated (diff)

#4 Updated by pospelov about 1 year ago

  • Description updated (diff)

#5 Updated by herck 12 months ago

  • Description updated (diff)

#6 Updated by pospelov 12 months ago

  • Description updated (diff)

#7 Updated by pospelov 12 months ago

  • Description updated (diff)

#8 Updated by herck 12 months ago

  • Description updated (diff)

#9 Updated by pospelov 12 months ago

  • Description updated (diff)

#10 Updated by pospelov 12 months ago

  • Description updated (diff)

#11 Updated by pospelov 12 months ago

  • Description updated (diff)

#12 Updated by wuttke 12 months ago

  • Status changed from Rfc to Resolved
Resolved into issues #1694 - #1705. Transcribed everything except for
  • IPython matplotlib problem (if somebodey can reproduce the problem, then please open issue with exact description of involved software versions)
  • GUI crashes (provide more specific bug reports)

Also available in: Atom PDF