Opened 12 months ago

Last modified 10 months ago

#1116 assigned enhancement

qt5 user level, changes to model tab

Reported by: richardh Owned by: tcbennun
Priority: major Milestone: SasView 5.0.0
Component: SasView Keywords:
Cc: Work Package: Beta Approximation Project

Description

Consider adding "+" symbol drop downs with details for S(Q) radius & volume parameters, analogous to those for polydisperse radii.

Attachments (4)

functional_constraint_enabled.png (8.1 KB) - added by tcbennun 11 months ago.
Example of enabled functional constraint in QT GUI, as child row of the parameter
functional_constraint_disabled.png (8.7 KB) - added by tcbennun 11 months ago.
Example of disabled functional constraint in QT GUI, as child row of the parameter
calculation_mode.png (4.9 KB) - added by tcbennun 11 months ago.
Setting of product calculation mode in QT GUI.
beta_mode_parameter.png (15.0 KB) - added by tcbennun 10 months ago.

Download all attachments as: .zip

Change History (13)

comment:1 Changed 11 months ago by tcbennun

  • Owner set to tcbennun
  • Status changed from new to assigned

Following today's conf call I'll focus on this approach.

comment:2 Changed 11 months ago by tcbennun

  • Milestone changed from SasView Next Release +1 to SasView 5.0.0

comment:3 Changed 11 months ago by tcbennun

opened JIRA issue:


SASVIEW-967
tcbennun, 24 Jul 2018 16:05

As part of the greater beta approximation project, the following features shall be implemented in the Model tab of fit pages:

  • In the parameter table, the S(Q) parameters radius_effective and volfraction shall have sub-items that allow user choice between generation from P(Q) model, or free/fitting.
  • An option to enable the beta approximation for the current model shall be added.

These changes are compatible only with product models, i.e. a simple P(Q)*S(Q) model. The GUI additions here should leave room for the future support of mixture models with one or more products, i.e. (P_1(Q) + …)*S_1(Q) + (P_i(Q) + …)*S_2(Q) + …

In product models, the flag for enabling beta approximation will manifest as a model parameter with possible values of 0 or 1.

Changed 11 months ago by tcbennun

Example of enabled functional constraint in QT GUI, as child row of the parameter

Changed 11 months ago by tcbennun

Example of disabled functional constraint in QT GUI, as child row of the parameter

comment:4 Changed 11 months ago by tcbennun

In ESS_GUI_beta_approx, added demonstration of what it may look like to choose between constraining effective_radius (for example) and letting it be a fittable parameter.

When constrained (I call it a 'functional constraint') to the value of some_func:

Example of enabled functional constraint in QT GUI, as child row of the parameter

And when it is fittable/free:

Example of disabled functional constraint in QT GUI, as child row of the parameter

Selecting a function to use as a constraint changes the row visually, and removes user-input values. It could enable the 'Value' column to show the calculated parameter, too.

Changed 11 months ago by tcbennun

Setting of product calculation mode in QT GUI.

comment:5 Changed 11 months ago by tcbennun

A product calculation mode combo box has been added; it controls the beta_mode parameter injected into product models (only in the beta_approx sasmodels branch).

Setting of product calculation mode in QT GUI.

The possible options are taken from the limits field of the beta_mode parameter.

comment:6 Changed 11 months ago by tcbennun

Note: the model is re-calculated immediately upon selection of a calculation mode.

comment:7 Changed 10 months ago by tcbennun

After correspondence with Paul Kienzle, it looks appropriate to treat beta_mode as a normal model parameter, but one that has fixed choices and is not fittable. Such a parameter will be displayed in the GUI in the parameter table, but with a combo-box for selection. This approach allows for further addition of such fixed parameters; also, in the case of complicated mixture models where more than one product model is a constituent, the separate beta_mode parameters will be clear.

Changed 10 months ago by tcbennun

comment:8 Changed 10 months ago by tcbennun

The beta mode parameter is now part of the parameter table (its location in the table is not yet fixed). It is a non-fittable (therefore non-checkable) parameter:


The possible options are P*S or P*(1+beta*(S-1)); these correspond internally to 0 or 1 (to turn beta mode off or on). It is perfectly easy to rename the parameter or add further options without breaking the GUI because it is treated generically.

comment:9 Changed 10 months ago by tcbennun

The features detailed above in my previous comments are now merged into ESS_GUI.

Additionally, ESS_GUI_iss1052 has functionality for effective radius options, see #780.

Volume options will go down a similar route.

Note: See TracTickets for help on using tickets.