next up previous
Next: Data Output Up: ATNF Spectral Analysis Package Previous: Frequency Frame Alignment

Scantable manipulation

While it is very useful to have many independent sources within one scantable, it is often inconvenient for data processing. The get_scan function can be used to create a new scantable with a selection of scans from a scantable. The selection can either be on the source name, with simple wildcard matching or set of scan ids.

For example:

  ASAP> ss = scans.get_scan(10) # Get the 11th scan (zero based)
  ASAP> ss = scans.get_scan(range(10)) # Get the first 10 scans
  ASAP> ss = scans.get_scan(range(10,20)) # Get the next 10 scans
  ASAP> ss = scans.get_scan([2,4,6,8,10]) # Get a selection of scans

  ASAP> ss = scans.get_scan('345p407') # Get a specific source
  ASAP> ss = scans.get_scan('345*')    # Get a few sources

  ASAP> r = scans.get_scan('*_R') # Get all reference sources (Parkes/Mopra)
  ASAP> s = scans.get_scan('*_S') # Get all program sources (Parkes/Mopra)
  ASAP> r = scans.get_scan('*_[ew]')  # Get all reference sources (Tid)
  ASAP> s = scans.get_scan('*_[^ew]') # Get all program sources (Tid)

To copy a scantable the following does not work:

  ASAP> ss = scans

as this just creates a reference to the original scantable. Any changes made to ss are also seen in scans. To duplicate a scantable, use the copy function.

  ASAP> ss = scans.copy



Malte Marquarding 2005-11-30