QSAS: The QMUL Science Analysis System

Object Pulldown Menus

# Contents

- Overview
- Vector Components
- Array Reduction
- Time Interval Reduction
- Metadata
- Tips/FAQ
- Bugs

# Overview

Whenever a data object is dropped onto a data input slot a pulldown menu becomes available if there are choices possible for the object based on the input types accepted by the slot. For example, if a slot required a scalar time series, such as a trace in a plot, and a vector is dropped into the input slot, then a pulldown is presented that allows for vector component selection in either cartesian or polar coordinates.

If an input slot accepts a variety of inputs, then the pulldown will reflect the available choices. For example, the same vector time series dropped into either input slot for addition in the calculator will produce a pulldown menu that lists all the possible component choices to reduce to a scalar as well as the object itself to be used as a vector. In this example it would also be possible to select a metadata object (Xref) attached to the object.

If the input object cannot be resolved into the requisite input type then the slot will go red. Note also that typing an object name is also possible, and the input shows yellow if it is still incomplete but valid.

When a selection is made the input slot will show the name (with path) of the input object on the Working List followed by the selection criteria enclosed in square brackets.

QSAS input slots currently support the pulldown menus:

1. Vector components.
2. Array dimension reduction.
3. Time selection from a time interval.
4. Metadata selection from the list of attached Xrefs for the object.

# Vector Components

The vector pulldown will provide the option for choosing components in cartesian or polar coordinates, and polar angles are available in either degrees or radians. Selection of a component will modify the text visile in the slot itself to show the component selected as well as the path and name of the parent object on the Working List. This selection can be modified by selecting another component from the pulldown at any time, and the feedback in the slot changes accordingly.

If the input slot also accepts vectors, then the pulldown will show "This Object" at the top of the menu list. If the input only accepts scalars the pulldown will only show the component selection options and a default choice of "r (mag)" is made so that the slot shows a valid input.

If the input slot also accepts Xrefs of the object, then an extra menu item "Metadata" is shown at the bottom of the pulldown.

A 3 element array with a valid "Frame" Xref will be treated as a vector input. A 3 element array without a Frame is treated as an array object, see below. A Frame Xref (attribute) can be added using the object editor (double click the parent object in the Working List) and select "New Metadata" under the Edit menu then select "Text". The Frame should have syntax of the form "vector>gse_xyz" (note that the quotes should not be typed in the Text value input for this object).

# Array Reduction

The Array pulldown is available for all array type objects as a sub-array is always a valid input into a slot that accepts arrays. It is also possible to reduce an array sequence into a scalar sequence using this option.

The Array pulldown will show "This Object" if an array is an acceptable input, and will always show "Reduce Array Dimensions", and when allowed by the input slot will also show "Metadata".

Clicking the "Reduce Array Dimensions" menu item will pop up a dialog window with as many input selectors as the array has dimensions. This allows separate control of reduction of the array in each of its dimensions. Each selector shows a pulldown with choice of operation for the dimension, and two counters to select the start and end index in that dimension to include in the operation. Data outside the selected index range are discarded from this operation but not lost from the parent object on the Working List. Each selector allows provides three options through its pulldown.

- Sum will collapse the array dimension by one by summing along all indices in this dimension from the start index to end index selected in this panel.
- Slice will collapse the array dimension by one by taking a slice through the data at the index selected (when slice is selected only one index counter is visible).
- Elements is the default, and if left unchanged then all elements in this dimension are included in the resultant object. Elements does not reduce the array dimension, but can truncate the range of the index for this dimension by excluding elements outside the index range selected.

When a selection is accepted, the text in the input slot shows also the operation and range of indices selected for each dimension of the array. Using the Sum and slice options an array dimension may be reduced to one for spectrogram plots and zero for scalar sequences such as traces on a plot. Use of the elements option is usually used for truncating the range of the array, such as excluding the lowest or highest energy channels from the plotted data.

Note that Slice is the special case of elements where the upper and lower index in the selected range are the same.

The array selection may be changed at any time as the data are excluded from the operation but not deleted from the parent object. Selecting "This Object" will revert to the input object from the Working List. To permanently modify an array the object should be placed in the Calculator List and saved back to the Working List after selection of the array reduction required.

# Time Selection

Time selection is possible from Time Interval objects, and this includes data objects with time tags. At present it is possible to select the centre, start or end time from an interval to be used as a single time value.

# Metadata Selection

It is possible to access the Xrefs of an object through most data object input slots. These are reached via the last item on the ulldown menu (when possible) named "metadata". Selection of this menu item pops up a window listing the Xrefs attached to this object. Selection of a Xref from the list and pressing select will modify the input slot text to show the Xref selected.

# Tips/FAQ

- The component text shown within square brackets is used by the slot validation methods and in retrieving the appropriate data when the slot is used, so it is important that the text within the [ ] is left exactly as set by the pulldown in order for the slot to work correctly.
- Changing the component text by typing in the slot will usually change the selection of the slot if a valid component string is entered exactly as it would be set by the menu. Caution should be exercised using this approach in the plot window as it keeps its own internal copy of the component selected.

# Bugs

- Xrefs (Metadata) are not validated when selected, so will always show as a valid component selection. They will be rejected by the operation performed on them if they are not of the requisite data type.

Page created by Tony Allen, csc-support-dl@imperial.ac.uk

Last up-dated: December 2008 A Rochel