Opened 2 years ago

Last modified 2 years 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 2 years 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 2 years ago.
Example of disabled functional constraint in QT GUI, as child row of the parameter
calculation_mode.png (4.9 KB) - added by tcbennun 2 years ago.
Setting of product calculation mode in QT GUI.
beta_mode_parameter.png (15.0 KB) - added by tcbennun 2 years ago.

Download all attachments as: .zip

Change History (13)

comment:1 Changed 2 years 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 2 years ago by tcbennun

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

comment:3 Changed 2 years 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 2 years ago by tcbennun

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

Changed 2 years ago by tcbennun

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

comment:4 Changed 2 years 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 2 years ago by tcbennun

Setting of product calculation mode in QT GUI.

comment:5 Changed 2 years 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 2 years ago by tcbennun

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

comment:7 Changed 2 years 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 2 years ago by tcbennun

comment:8 Changed 2 years 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 2 years 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.