Data Selection

ASAP contains flexible data selection. Data can be selected based on IF, beam, polarisation, scan number as well as values such as Tsys. Advanced users can also make use of the AIPS++ TAQL language to create selections based on almost any of the values recorded.

Selection is based on a selector object. This object is created and various selection functions applied to it (set_ifs, set_beams etc). The selection object then must be applied to a scantable using the set_selection function. A single selection object can be created and setup then applied to multiple scantables.

Once a selection has been applied, all following functions will only ``see'' the selected spectra (including functions such as summary). The selection can then be reset and all spectra are visible. Note that if functions such as copy are run on a scantable with active selection, only the selected spectra are copied.

The common selection functions are:

set_beams Select beams by index number
set_ifs Select ifs by index number
set_name Select by source name. Can contain ``*'' as a wildcard, e.g. ``Orion*_R''.
set_ifs Select IFs by index number
set_polarisation Select by polarisation index or name. If polarisation names are given, the data will be on-the-fly onverted (for example from linears to Stokes).
set_query Set query directly. For power users only!
set_tsys Select data based on Tsys. Also example of user definable query.
reset Reset the selection to include all spectra.

Note that all indices are zero based.

Examples:

  ASAP>selection = selector()         # Create selection object
  ASAP>selection.set_ifs(0)           # Just select the first IF
  ASAP>scans.set_selection(selection) # Apply the selection
  ASAP>print scans                    # Will just show the first IF

  ASAP>selection.set_ifs([0,1])       # Select the first two IFs
  ASAP>selection.set_beams([1,3,5])   # Also select three of the beams
  ASAP>scans.set_selection(selection) # Apply the selection

  ASAP>selection.set_name('G308*')     # Select by source name

  ASAP>selection.reset()              # Turn off selection
  ASAP>scans.set_selection(selection) # Apply the reset selection
  ASAP>scans.set_selection() # alternative to reset selection

Malte Marquarding 2007-08-16