Demeter: A new on-screen interface

The UI needs a rethink to address many of the problems mentioned above. Here is a sketch of my current thinking (I acknowledge that this section is quite vague and abstract):

  1. My current concept calls for a five-panel design -- two vertical panes and three horizontal. Resizers will lie between the three vertical segments and the three horizontal segments. That is what the line with the black box represents.
  2. The problem of not enough stuff on the screen is obviated by having the GDS display stacked with the data and Feff displays. The concern is that there may not be sufficient vertical space, so clever packing of widgets will be very important. The resizers will help somewhat as well. Also, I am willing to set the initial size of the frame containing the app to the scree height -- effectively monopolizing the screen.
  3. The center box of the stacked horizontal boxes is central to the mode of organizing data and feff calculations. On the left is a list of data imported into the project. When you click on one of the data files, the FT and fitting parameters associated with that data set will be displayed in the region under the "Data parameters" text. On the right is the list of Feff calculation currently imported into the project. All Feff calculations will always be displayed. Each Feff calculation will have a check button assiciated with it (much like the purple mark buttons in Athena). Each Feff calculation clicked will be used to fit that data set. In this way, a Feff calculation can be used for one or more data set in an MDS fit.
  4. When you click on a Feff calculation (a different event from marking it for use with a data set) it will be displayed in the bottom of the horizontral panels. Each Feff calculation will have a variety of views, including atoms, feff.inp, interpretation, and each path. Each of the views will have functionality similar to current functionality on Artemis -- specifically the interpertation page will be right-click sensitive and there will be right-click tools for exporting path parameter math expressions.

  5. There will be a menu prominently displayed for creating new Feff calculations. The options in this menu will include:
    1. create new Atoms data
    2. import an atoms.inp or CIF file

    3. import an existing feff.inp

    4. create a new feff.inp by hand

    5. import a PDB or other kind of file
  6. Importing data from Athena project files will be encouraged, but importing chi(k) data will also be allowed.
  7. The text in the path parameter math expression entry boxes will be left click sensitive. When you click on a word in a PP math expression, it will be highlighted and become drag-n-drop ready. Dropping it anywhere in the GDS pane will create a new parameter entry. Conversely, parameters in the GDS pane will ne DND sensitive and can be dropped onto the entry widget for a PP math expression.
  8. At least one new kind of GDS parameters will be necessary. This will be a local, that is local to a data set. The idea is that a path in a feff calculation has a PP math expression parameterized in terms of a local. Also, each data set will have a tag associated with it. As the Ifeffit script is generated, the local parameter will be recognized and replaced with a guess parameter whose name is the concatination of the local and the data tag. Imagine a fit to the first shell of copper of 5 temperatures -- the sigma^2 parameter should be set to a local. This will expand to 5 parameters when the Ifeffit script is generated. But by using the local parameter, it is easy to apply the feff calculation to each data set with a minimum of editing.

  9. As fits are done, they are entered into the fit history box. This is much like the Fit branch currently used in Artemis. It will allow you to examine old fits, plot old fits, and revert the project to old fits. There will also be a log viewer to allow analysis of sequences of fits.
  10. When a fit is selected from the fit history box, a tree representation of the fit will be inserted into the tree view pane. This is like the tree view in the current Artemis, but without the fit history section. The plot buttons will interact with the tree view in much the same manner as in the current Artemis.

Annoying features of the current Artemis UI

In no particular order:

  1. The material in the various views of the main part do not rescale properly as the size of the window changes. This is due to the use of Canvases to contain widgets in each view. The gemotery preferences address this problem in a really ugly way (but, I suppose, better than nothing).


Return to WhatsWrongWithArtemis


Except where otherwise noted, Bruce's content on the Ifeffit wiki is licensed under a Creative Commons Attribution 2.5 License


Demeter/UserInterface (last edited 2006-12-12 16:18:36 by BruceRavel)