Computing the cal values

june 2005

     The cal values are normally measured using the sky/absorber technique.  The  data taking setup is normally 25Mhz*4 bands of 256 lags each. Do 3 seconds calOn followed by 3 seconds calOff. Then step the band by 100 Mhz until the entire receiver band is done. Cycle through the receiver band N times. For the high correlated cal (hcorcal) do this on the absorber and while tracking blank sky.  For the other cals (huncor, h90, hxcal, lcor, luncor, l90, lxcal)  track blank sky and perform the sequence:

     hcor, huncor, hxcal, h90cal, hcor, lcor, luncor, lxcal, l90cal, hcor

At each step do a 3 second calOn, and 3 second caloff. After the 10 steps, increment the frequency by 100 Mhz and continue. Make N complete passes through the receiver. At each step you can measure (calOn-calOff)/caloff (call it calRatio). You then take the ratio of calRatioOther/calRatioHcorcal. In case the gain is drifting, interpolate hcor to each of the other cals. We can then multiply by hcorcal in kelvins to the the other cals in kelvins.

    When processing the data we need to use the values:


    The data reduction has been done in two ways.

    The two methods are described below.


Averaging over each 25 Mhz band (old method):

    This has been used up to jun05 on all receivers. The steps are:
  1. Compute (calOn-calOff)/calOff (calRatio) for each spectra (normally 25 Mhz). This removes the IF bandpass.
  2. Compute the median value of calRatio over  each 25 Mhz bandpass.
  3. Normally the receiver band is covered N times. This gives N values for calRatio at each 25 Mhz band. Compute a robust mean of these N duplicate values of calRatio.
  4. We've done the computation on the sky (calRsky) and on the absorber (calRAbs). Using calRsky and calRabs we can then eliminate Trcvr from the equation to get:
    1. calK = (Tsky + Tscattered - Tabs)*(calRAbs*calRSky)/(calRabs-calRSky)
      (see  sky/absorber technique   for more info). This cal value uses the Y factor so call it calK_Y.
  5. It is also possible to measure the cals using just the absorber or just the sky if you know the receiver temperature (and you assume the reflection coef in the receiver is small). This gives you calK_abs and calK_sky. These values can be plotted with calK_Y for comparison. You can adjust Tscattered so that the Tcal_sky agrees with the TcalK_Y and _abs.
  6.  calK_Y can then be fit by a low order polynomial (say 3rd or 4th). The online Tsys monitor and idl use a lookup table of cal values for processing. In this case the polynomial is then sampled every 25 Mhz and stored in the table.
    The sky/absorber is done only for the high correlated cal (you'd never see the low cals on the 300K absorber). The other cals  are measured relative to the hcorcal while tracking blank sky. The steps 1,2,3 are the same (except that we use calRatioOther/calRatioHcorcal. Multiplying the ratio of calRatioOther/CalRatioHcorcal * hcorCalK gives the other cals in kelvins. The values are then fit to a low order polynomial and sampled at 25 Mhz for storage in the lookup table.


Fitting to the entire receiver band at once (new method):

    The above method has some troubles:
  1. Compute (calOn-calOff)/calOff (calRatio) for each spectra (normally 25 Mhz). This removes the IF bandpass.
  2. For each of the N passes  through the receiver band , make 1 large spectra of calRatio. Take these N spectra and do a robust average (averaging  the N values at each channel).
  3. Using the average spectra of the entire receiver band, fit a low order polynomial (typically 1st) and an M order  harmonic function. M is determined by the ripples in the cal and the bandwidth of the data.  The routine corblauto() is used for the fitting. It will iterate the fit throwing out outliers and then refitting.
  4. The fits can now be used to compute the CalK with:

  5. calK = (Tsky + Tscattered - Tabs)*(calRAbs*calRSky)/(calRabs-calRSky)
    CalRabs and CalRSky now come from the fits rather than the data.
    This gives a function for  the Hcorcal in degrees K. The other cals are relative to the hcorcal.
  1. For each setting compute calRatioX/calRatioHcorcal. Interpolate calRatioHcorcal to the position of each of each calRatioX measurement. This gives a spectra of each cal relative to the hcorcal.
  2. For each pass through the data make a single spectra of calRatioX/calRatioHcorcal.
  3. Multiply the spectra in 2 by the hcorcal function in kelvins. This gives the calX in kelvins.
  4. Do a robust average of the N passes through the receiver.
  5. Now fit the average with a low order polynomial (1st order) and an M order harmonic function. This will be the calX value in kelvins.
  6. Sample the other cals at whatever looks reasonable and store them in the lookup table.
        The full band fitting procedure does a better job of interpolating across rfi. The problemw will be:


    We are dividing (calon-calOff)/caloff. The 1 Mhz standing waves are not in calon-caloff and the are in caloff so the functions that are being fit include the 1 Mhz standing wave. The order of the fits used do not fit this 1 Mhz ripple.  This is correct since we are trying to measure the cal value which should not include the ripple.  When computing the fit residuals, the rms's do not decrease as 1/sqrt(b*Tau) because of the 1 Mhz ripple (at least not while on the sky).

home_~phil