HESSI Data Analysis Software Graphical User Interface

Contents

Overview
Access
Interaction between GUI and Command Line
Summary
Mechanics
Problems
 

Overview


The Graphical User Interface to the HESSI data analysis software is an IDL widget program that allows users to display, analyze, and store HESSI image, spectroscopy, lightcurve, and housekeeping data, as well as view data from ancillary sources.

All of the functionality available through the GUI exists at the command line level of IDL.  The command line interface requires some knowledge of IDL and HESSI-specific procedure and keyword names, but allows maximum flexibility and control, while the GUI should be easier to use.
 

Accessing the HESSI GUI


The HESSI GUI software is distributed with the hessi branch of SSW.  Once you have installed SSW, and have access to the HESSI test data files, type hessi at the IDL prompt to enter the GUI.

If you have already used the GUI, and want the GUI to use the same objects you were using before, type hessi,/restore.  This initializes the objects used in the GUI (image, lightcurve, observing summary) to their state on your last exit from the GUI (it doesn't  restore general user parameters).

To use the GUI with your own simulation, create an image object, set your simulation parameters, and then pass that object into the GUI by typing hessi, image_object (assuming you called your image object image_object).  Note that if you set an observation time interval either in the GUI or the command line, it will no longer use your simulation, but will try to find an existing file in the test data directory containing that time.
 

Interaction between the HESSI GUI and the Command Line Interface


There are several way to work with the same object in the GUI and from the command line interface:

(NOTE:  If you pass in an object, or use hessi_data to extract an object, you are sharing that object between the command line and the GUI.  Changes made in one interface will affect the other.)

1.  Pass an existing object into the GUI by typing:  hessi,object

2.  Use hessi_data procedure to extract the object used in the GUI to the command line:

Type hessi_data for help
Type hessi_data, image=obj  to retrieve most recent image object in GUI into variable obj.
Type hessi_data, lc=obj to retrieve most recent lightcurve object into variable obj
Type hessi_data, obs=obj to retrieve most recent observing summary object into variable obj

3.  Write an image FITS file from the GUI or the command line and restore it in the GUI or command line.

Writing from command line:  type image_object -> fitswrite
Writing from GUI: Click File, Export, FITS

Reading from command line: type image_obj = hsi_image_fitsread()
Reading from GUI: Click File, Import, FITS

The image FITS file contains all of the parameters stored in the image object that control the image reconstruction process.  The raw data is not stored.  After restoring from the FITS file,  the  image object is recreated from those parameters and an image can be reconstructed.

Summary of the HESSI GUI


Detailed help on options in the GUI is available through the HELP buttons in the widgets.  A broad summary of the use of the GUI is given here.

All of the operations of the GUI work with one basic time interval called the Observation Time Interval that is the default overall time interval for each successive widget that is invoked to access different types of data.  You will have the opportunity to divide this broad time interval into smaller time intervals for imaging or spectral analysis.  On entering the GUI, the default time interval is set to the time interval for a simulated HESSI flare expanded by 2 minutes before and after.  If you pass in your own simulation, then the default time is set to the times in your simulation.

Click the File / 'Select Observation Time Interval' button on the main window to invoke a widget that lets you change the Observation Time Interval.  In this widget, you can select times directly, select a flare time interval, or click on a plot of observing summary data to define a time interval.   Note that the current selection for Observation Time Interval will always be displayed near the top of the main GUI window.  Note that if you are using your own simulation and you set an observation time interval, the GUI will no longer use your simulation, but will try to find an existing file in the test data directory containing that time.

To define finer analysis time intervals within the observation time interval for imaging and/or spectroscopy, click File / 'Select Analysis Intervals' / 'Define/Edit Analysis Intervals'.  This widget offers a number of options for defining and editing intervals.  While this widget is active, the plot is in a mode where left- and right-clicking defines start and end times and double-clicking on an interval invokes a pop-up widget with editing options for that interval.   After defining intervals, click File / 'Select Analysis Intervals' / 'Display Current Intervals' anytime to see the current intervals that are defined.  If a HESSI time plot is not displayed when selecting either of these options (defining and displaying), first a plot of count rates from the observing summary data will be displayed covering the time specified by the observation time interval.

Click File / 'Retrieve/Process Data' / xxxx to retrieve and display the type of data you want.

For imaging, click File / 'Retrieve/Process Data' / Image.  The overall Observation Time Interval is displayed near the top of the widget, followed by a pulldown widget listing the finer analysis time intervals you've defined, if any.   If analysis intervals have been defined, then the default interval for imaging is the first analysis time interval in the list, but you can select any interval from the list.  If no analysis intervals are defined, the imaging time interval defaults to four seconds centered on the peak of the flare (or if there is no flare, the first four seconds of the Observation Time Interval).  In either case you can specify a time interval explicitly, but it must be within the range of the Observation Time Interval.  To make an image, select the rest of the imaging parameters you want, and click 'Make and Display Image'.
 

Mechanics of the HESSI GUI


Most options are accessed through the pulldown buttons at the top of the GUI window. In addition, you can right-click in any plot to display the coordinates of a point, or left-click and drag a box to zoom in on any plot. A single left-click with no dragging will restore the original plot limits.

The entire GUI window can be stretched by dragging the edges of the window. The current plot(s) will be redrawn in the new window. The maximize button provided by the window manager will not work.

Each plot that is drawn is saved (up to a maximum of 20). The 'Window_Control' pulldown menu from the top menu bar shows the panels that have been saved, and also has some controls to allow you to see multiple panels simultaneously. The 'Configure' button allows for customization in displaying multiple panels. In addition, each individual panel has a control menu to close, delete, or maximize that panel, or to display it in a separate window.

When more than one panel is displayed in the main widget, clicking on a panel makes that panel the active panel (it will be outlined in red when it is active). Once a panel is selected, then all plot manipulation and save and print options operate on that panel only.

If you select 'Separate Window' under 'Panel Controls', the panel will appear in a new widget that is entirely independent from the HESSI GUI widget. The new widget has plot manipulation controls, and save and print options only. No new data will be directed to that window. When you no longer want that window, just close it.
 
 

Problems


COLORS - On many UNIX machines, the colors in the GUI don't work well.  The following resources in the .Xdefaults file control IDL colors:
idl.colors
idl.gr_depth
idl.gr_visual
The best settings are different for every machine since the graphics capabilities of machines vary.  Setting idl.gr_visual to TrueColor is best, if possible.  In the future, I hope to provide recommended settings.

PRINTERS - On UNIX machines, any printer queues set up on the machine can be used from the GUI.  However on Windows platforms, the printer must be shared (Windows Print and File Sharing software must be enabled), and the share name of the printer must be defined in environment variables PSLASER and PSCOLOR.    For example in your startup file, you would add:
setenv, 'PSLASER', '\\lotus\\laser-g62'
setenv, 'PSCOLOR', '\\lotus\\laser-g62'
where lotus is the computer name, and laser-g62 is the printer's share name.
In the future, this will be changed to not require a shared printer.