Makes use of the "cal" switching present in the data.
If the CAL value does not switch between T and F an equal number of times, this step does nothing. In the context of the KFPA pipeline, this is an error and pipeline processing stops. The final product of the pipeline in that case is the raw data as filled by the data capture step.
The data from each sampler (feed,polarization,spectral window) at each integration is combined and the system temperature, Tsys, is determined. If there is additional SIG switching, each SIG state is considered separately. For each integration, then, each sampler and SIG switching state must correspond to a pair of spectra. One having no "cal" signal and one with the "cal" signal.
The current gettp
procedure in gbtidl
does the following:
data_tp = (data_no_cal + data_with_cal) / 2.0
Tsys = Tcal/2.0 + Tcal * mean_80(data_no_cal) / mean_80(data_with_cal - data_no_cal)
- data_tp is simply the sum of the two spectra
- This Tsys formula results in a scalar value.
- Tcal is a scalar as determined by the data capture step. It represents an average of the lab-measured Tcal values interpolated onto the observed frequency axis. The average is done over the inner 80% of the channels.
- mean_80() means take the mean over the inner 80% of all channels. These should be the same channels that Tcal is averaged over.
- The use of mean separately in the numerator and denominator is necessary to reduce the effects of the noise in the difference spectrum found in the denominator.
- The exposure and duration time in the result is the sum of those quantities from the two switching states (no cal and cal).
This needs to be generalized to the vector case. Ron's IDL scripts related to Scal determination and use should be consulted.