Upon open ing the data with dish, the user has access to an SDRecord data structure (Single Dish Record), which places all of the information from the data set into a single Glish record organized as follows:
- data A Glish record which contains the data array and a description of the data array (axis type, values, increments, and units).
- arr The data array. The dimensionality of the data array is (nstokes,nchan) where nchan is the number of channels and nstokes is the number of different stokes types found in this data. nstokes is either 1, 2 or 4.
- desc A Glish record which describes the data array.
- chan_freq A vector of Quanta giving the frequencies in each channel.
- refframe Defines the reference frame.
- reffrequency The frequency of the center pixel [Hz]
- chan_width The width of the channels in the same units as chan_freq
- restfrequency The rest frequency of the observed line.
- corr_type A vector of strings describing the Stokes type of each element of the second axis of the data array. The possible Stokes types are: I, Q, U, V, RR, RL, LR, LL, XX, XY, YX, YY, RX, RY, LX, LY, XR, XL YR, YL, PP, PQ, QP, QQ. For a typical single dish telescope, raw data will have stokes = ("XX", "YY") or ("RR", "LL").
- units A string describing the units of the data array.
- flag A boolean matrix with the same shape as arr. When true, the corresponding value in arr has been flagged as bad and should not be used. When false, the corresponding value in arr is good.
- weight A floating point matrix having the same shape as arr.
- sigma Theoretical rms, same shape as arr.
- header A Glish record with the following fixed structure. The major bulleted items here are merely separators to make this list easier to read, they are not members of header. The type of each field is indicated at the end of each description. Vector fields are indicated by giving the length of the vector in parenthesis after the field type.
- Identity fields
- time An MEpoch giveing the mid-point of the observation (UT).
- scan_number The scan ID number. Typically this is an identification number given to a chunk of data when the data is taken. Not all telescopes provide a scan ID number.
- source_name The name of the thing being observed.
- direction An MDirection where the telescope was pointed.
- Time fields
- exposure The total amount of time (s) actually spent collecting photons (e.g excludes blanking time, etc).
- duration The elapsed (clock) time (s).
- Observer fields
- Backend fields
- resolution The resolutioin the same units are chan_freq.
- bandwidth The total bandwidth (Hz).
- tcal The cal temperature (K). One for each pixel in the nstokes axis of arr.
- trx The receiver temperature (K). One for each pixel in the nstokes axis of arr.
- tsys The system temperature (K). One for each pixel in the nstokes axis of arr.
- Reference fields
- reference_direction MDirection
- Telescope fields
- telescope A string identifying the telescope.
- telescope_position An MPosition giving the position of the telescope.
- azel And MDirection giving the azimuth and elevation at time.
- Weather fields
- pressure The atmopheric pressure (hPa).
- dewpoint The dew point (K).
- tambient The ambient temperature.
- wind_dir The wind direction (deg).
- wind_speed The wind speed (m/s).
- Coordinate system fields
- veldef The velocity definition (e.g. ``radio'', ``optical'').
- transition transition description
- hist This vector of strings contains a history of the operations which resulted in this SDRecord. Each element is a valid Glish command. Taken as a whole, the hist field should be sufficient to regenerate the SDRecord from the original data source.
In addition to the fixed structure described above. An SDRecord may contain an optional ns_header field. This is a Glish record which can contain any additional information not found in the fixed portion of an SDRecord. This field will typically be used for telescope-dependent information. If the SDRecord came from a MeasurementSet, the appropriate row in each sub-table of the MeasurementSet that is associated with this data will have a sub-record in the ns_header field. Only columns in each sub-table which are not directly represented in the standard portions of the SDRecord are kept here (e.g. the data array from the main table only appears once, in the arr field). Other data sources (e.g. SDFITS) will have any information not otherwise found in the SDRecord stored in the ns_header whenever possible.
To summarize, in pseudo-Glish an SDRecord looks like this:
sdrecord := [data=[=], header=[=], hist=[=], ns_header=[=]];
sdrecord.data := [arr=[...], flag=[...], desc=[=], weight=[...]];
sdrecord.data.desc := [units=,stokes=,ctype=,crpix=,crval=,cdelt=];
sdrecord.header := [time=,scan_number=,object=,etc.];
sdrecord.hist := ["# useful history","# as a vector","# etc. etc."];
sdrecord.ns_header := [non-standard fields]
ns_header is optional
-- BobGarwood - 07 Jan 2004
Revision r1.1 - 07 Jan 2004 - 22:03 GMT - BobGarwood Parents: WebHome > DishUsersGuideForGBT
|
Content copyright © 1999-2007 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
|
| |