Getting Started | Documentation | Glish | Learn More | Programming | Contact Us |
|
Much of the strategy for calibration and imaging is highly dependent on the context. Nevertheless, we give here some rules that are of general use.
imager can perform joint deconvolution of Stokes I,Q,U,V images, and self-calibration of both antenna gain (G) and polarization leakage terms (D). Either the Clean algorithm (in both Hogbom or Clark variants), or Dan Briggs' NNLS method or both together can be used. We recommend the following approach for making a deconvolved image.
Both clean and NNLS use masks to control where flux is to be found (i.e. an equivalent to clean boxes). To construct these, use the imager derive_mask method.
If self-calibration is needed, the steps are:
You might wish to restrict the calibration solution step to a limited uv range. The best way to do this is demonstrated above in the section on the sortandselect module.
The terms allowed in the calibration solution are:
The order of terms is, reading from the left: M G B D P T. So the radiation for a given antenna goes through the T-matrix first, then P, then D, B, G and finally after correlation, through M. Since the solution for D-terms is more difficult than the solution for T or G-terms, one should perform a cycle or two of self-calibration of T and G before attempting a solution for D. It is usually also a good idea to solve for T (phase-only) before solving for G.
Finally, we should emphasize the power of the tools that AIPS++ provides for diagnosis of problems in calibration. In figures 10 and 10, we show the fit per antenna as a function of time, and of distance from the array center. The former is available as a method of gaintable: gaintable.plot, whereas the latter is a custom plot. Here is the Glish work that lead to these two plots:
- tt:=gaintable('tcal') - tt.plot(,'ifit') T - dp.setyscale(0,0.6) ok - dp.psprinttofile('ifits.ps') - ant:=table('JUPITER.MS/ANTENNA')) - ant.getcol("NAME") VLA:N32 VLA:W20 VLA:W12 VLA:E8 VLA:E28 VLA:E36 VLA:E16 VLA:W8 VLA:OUT VLA:W28 VLA:N24 VLA:W4 VLA:N12 VLA:N4 VLA:N20 VLA:E12 VLA:E20 VLA:W32 VLA:N28 VLA:W36 VLA:W24 VLA:E4 VLA:E32 VLA:E24 VLA:N16 VLA:N36 VLA:N8 VLA:W16 - antloc:=ant.getcol("POSITION") - center:=antloc[,14] - for (i in 1:28) antloc[,i]-:=center - for (i in 1:28) r[i]:=sqrt(antloc[1,i]*antloc[1,i]+antloc[2,i]*antloc[2,i]+antloc[3,i]*antloc[3,i]) - ifit:=tt.ifit() - dp.clear() T - for (i in 1:117) dp.plotxy(r,ifit[,1,i],,"points") - dp.psprinttofile('fits.ps')
In this example, the custom plot shows that the best fit improves with distance from the array center, presumably because the source is resolved on the longer spacings to which the antennas further out are biased. We therefore restricted the range of uv spacing from which the calibration was derived. In practice, of course, such a custom plot might be sufficiently useful that it should be incorporated in the system.