; PATGN ;--------------------------------------------------------------- ;! Task to create a user specified test or primary-beam pattern ;# TASK IMAGING ;----------------------------------------------------------------------- ;; Copyright (C) 1995, 2000-2005, 2015-2016 ;; Associated Universities, Inc. Washington DC, USA. ;; ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the GNU General Public License as ;; published by the Free Software Foundation; either version 2 of ;; the License, or (at your option) any later version. ;; ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; ;; You should have received a copy of the GNU General Public ;; License along with this program; if not, write to the Free ;; Software Foundation, Inc., 675 Massachusetts Ave, Cambridge, ;; MA 02139, USA. ;; ;; Correspondence concerning AIPS should be addressed as follows: ;; Internet email: aipsmail@nrao.edu. ;; Postal address: AIPS Project Office ;; National Radio Astronomy Observatory ;; 520 Edgemont Road ;; Charlottesville, VA 22903-2475 USA ;----------------------------------------------------------------------- PATGN LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC PATGN Task to create a user specified test pattern. IMSIZE Output image size (cells) CELLSIZE Cellsize arc seconds. OUTNAME Output image name (name) OUTCLASS Output image name (class) OUTSEQ -1.0 9999.0 Output image name (seq. #) OUTDISK 0.0 9.0 Output image disk unit #. OPCODE Operation code. ZONE, GAUS, LRTZ, RADI, POLY BEAM, INVB OPTYPE Array name: VLA, ATCA, EVLA, JVLA, ' ' -> EVLA CPARM Function parameters. PBPARM Primary beam parameters (1) Cutoff; (2) Use (3)-(7) (3)-(7) Beam shape ---------------------------------------------------------------- PATGN Task: Task which creates a user specified test pattern. Adverbs: IMSIZE.....Desired image size in cells. (default 256) CELLSIZE...Desired cell spacing. (default 1.0) OUTNAME....Output image name (name). Standard behavior with default = 'PATGN MAP'. OUTCLASS...Output image name (class). Standard defaults. OUTSEQ.....Output image name (seq. #). 0 => highest unique. OUTDISK....Disk drive # of output image. 0 => highest number with sufficient space. OPCODE.....User specified operation code: 'ZONE' => Zone plate test pattern. This pattern is based on a linearly swept FM signal. The intensity at each point is given by: |A*cos (2*PI*FMAX* RADIUS**2 / PERIOD) | RADIUS <= PERIOD/2 f(RADIUS)=| |A * cos (2*PI * FMAX * ((PERIOD/2)- | (RADIUS-PERIOD)**2 / PERIOD) | PERIOD/2 <= RADIUS <= 3*PERIOD/2 where A = amplitude (max/min intensity), FMAX = maximum frequency (0<=FMAX<=0.5), RADIUS = distance from the center point, PERIOD = number of pixels in the cycle (from zero to FMAX and back to zero) and center = CPARM(1,2), A = CPARM(3), PERIOD = CPARM(4), and FMAX = CPARM(5). This pattern contains a wide variety of frequency at all possible angles. 'GAUS' => Gaussian profile. This pattern is a two-dimensional normal distribution with a specified r.m.s. The intensity at each point is given by: f(RADIUS) = C(3) + (C(4)-C(3)) * EXP (-((0.707/C(5))**2*RADIUS**2)) where c = CPARM and 0.707/C(5) is the height of a normal distribution with r.m.s.= C(5). 'LRTZ' => Lorentzian profile. This pattern is similar to the Gaussian distribution. The intensity at each point is given by: f(RADIUS) = C(3) + (C(4)-C(3)) * (1 / (1 + (RADIUS/C(5))**2)) 'BEAM' => Do an image of the primary beam; by default, the primary beam of the VLA. 'INVB' => Do an image of the 1.0/primary beam; by default, the primary beam of the VLA. 'ATCA' => Do an image of the primary beam; by default, the primary beam of the ATCA. 'RADI' => Do a polynomial in the radius from the reference pixel 'POLY' => Do a polynomial in x and y (from the reference pixel) CPARM......CPARM(1) and CPARM(2) are the x and y pixel coordinates of the function center, resp. If both are zero, center set to (IMSIZE(1) + 1) / 2 and (IMSIZE(2) + 2) / 2. If OPCODE is 'ZONE': CPARM(3) is the amplitude of the signal (max/min intensity, 0 => 1.0), CPARM(4) is the period of the signal in arc seconds (0 => 320*IMSIZE(1)/512 * CELLS(1)), CPARM(5) is the maximum frequency of the signal (ABS(CPARM(5)) > 0.5 => CPARM(5)=0.5). If OPCODE is 'GAUS' or 'LRTZ': CPARM(3) is the lower limit on the output intensity (default 0.0), CPARM(4) is the upper limit (default 1.0), CPARM(5) is the width of the distribution in arc seconds (0 => CELLS(1)/SQRT(2)). For 'GAUS' this is the r.m.s. (the FWHM is 2.35482*CPARM(5)). For 'LRTZ' it is the Lorentz one-half width at one-half maximum. If OPCODE is 'BEAM': CPARM(3) is the observing frequency in GHz; default 1.420 PBPARM(1) = value below which pattern is blanked (if 0 use the beam calculator's idea of "outside", so set to < 0 to have no blanking) PBPARM(2) is logical code: true (> 0) => use BMPARM(3-7) to define the beam. Otherwise use default parameters for the VLA (or ATCA where appropriate) For all wavelengths, the beam is described by the function: 1.0 + X*PBPARM(3)/(10**3) + X*X*PBPARM(4)/(10**7) + X*X*X*PBPARM(5)/(10**10) + X*X*X*X*PBPARM(6)/(10**13) X*X*X*X*X*PBPARM(7)/(10**16) where X is (distance from the pointing position in arc minutes times the frequency in GHz)**2. If OPCODE is 'ATCA': CPARM(3) is the observing frequency in GHz; default 1.420 PBPARM(1) = value below which pattern is blanked (if 0 use the beam calculator's idea of "outside", so set to < 0 to have no blanking) PBPARM(2) is logical code: true (> 0) => use BMPARM(3-7) to define the beam. For all wavelengths, the beam is described by the function: 1.0 + X*PBPARM(3)/(10**3) + X*X*PBPARM(4)/(10**7) + X*X*X*PBPARM(5)/(10**10) + X*X*X*X*PBPARM(6)/(10**13) X*X*X*X*X*PBPARM(7)/(10**16) where X is (distance from the pointing position in arc minutes times the frequency in GHz)**2. If OPCODE is 'RADI': The function is taken to be CPARM(3) + R*CPARM(4) + R*R*CPARM(5) + R^3 * CPARM(6) + R^4 * CPARM(7) + R^5 * CPARM(8) + R^6 * CPARM(9) + R^7 * CPARM(10) where R is the radius in arc seconds. If OPCODE is 'POLY': The function is taken to be CPARM(3) + X*CPARM(4) + Y*CPARM(5) + X^2 * CPARM(6) + Y^2 * CPARM(7) + X^3 * CPARM(8) + Y^3 * CPARM(9) + X^4 * CPARM(10) + Y^4 * PBPARM(1) + X*Y * PBPARM(2) + X*X*Y * PBPARM(3) + X*Y*Y * PRPARM(4) + (X^3)*Y * PBPARM(5) + (Y^3)*X * PBPARM(6) + (X*Y)^2 * PBPARM(7) where X and Y are the signed distance from the reference pixel in arc seconds in the x and y axis. ---------------------------------------------------------------- PATGN: Task which creates a user specified test pattern. DOCUMENTOR: Thad A. Polk, NRAO. RELATED PORGRAMS: AIPS, All AIPS image tasks. PURPOSE PATGN is designed to produce a variety of test patterns for use in image processing tasks. It generates regular or symmetric images which can be tailored to the users needs. In particular, the patterns can be used to test the response of various processing algorithms. The necessary control information can be passed to the program via OPCODE and CPARM. For information about compiling, link-editing, and running PATGN see HELP NEWTASK or the AIPS programmers' manual. DETAILS ABOUT SPECIFIC OPCODES GAUS: this is the Gaussian profile. With this OPCODE, the user can produce an image based on a normal distribution of specified width. These images could be used in a variety of ways. For example, one could convolve the test pattern with other images to blur them, or simply to test the convolution algorithm. LRTZ: this is the Lorentzian profile. It is similar to the Gaussian profile except that the peak is less sharp, with the tails of the distribution being wider. Its uses are similar to those described for the Gaussian profile. ZONE: this is the Zone Plate pattern. It produces an image that is circularly symmetric with dark and light bands alternating. The bands are wide at the refernce point, get thinner until the distance from the reference point is half the specified period and then get wider again. This pattern produces a wide variety of frequencies (alternation of light and dark) at all possible angles and is thus very useful in testing the frequency response of various processing algorithms. For example, one could run the pattern through an algorithm, run the result through an inverse operation and compare final picture with the original and determine what sort of artifacts the algorithm produces and at what angle and frequency these artifacts tend to appear. BEAM: PRIMARY BEAM CORRECTION INVB PATGN corrects an image for the primary beam attenuation of the antennas. The function used to model the primary beam for normal VLA frequencies F(x) = 1.0 + parm(3) * 10E-3 * x + parm(4) * 10E-7 * x*x + parm(5) * 10E-10 * x*x*x + parm(6) * 10E-13 * x*x*x*x + parm(7) * 10E-16 * x*x*x*x*x where x is proportional to the square of the distance from the pointing position in units of [arcmin * freq (GHz)]**2, and F(x) is the multiplicative factor to divide into the image intensity at the distance parameter x. For other antennas, the user may read in appropraite constants in PBPARM(3) through PBPARM(7). The flag, PBPARM(2) must be set to a positive number to invoke this option and PBPARM(3) must not be zero. This correction scales with frequency and has a cutoff beyond which the map values are set to an undefined pixel value GIVEN in PBPARM(1). At the VLA frequencies the default cutoff is 1.485 GHz 29.8 arcmin 4.885 GHz 9.13 arcmin 15 GHz 2.95 arcmin 22.5 GHz 1.97 arcmin and occurs at a primary beam sensitivity of 2.3% of the value at the beam center. Corrections factors < 1 are forced to be 1. The estimated error of the algorithm is about 0.02 in (1/F(x)) and thus leads to very large errors for x>1500, or at areas outside of the primary response of 20%. The cutoff level may be specified with DPARM(1). Default values of PBPARM for the VLA are given by Perley's fits: 0.0738 GHz -0.897 2.71 -0.242 0.3275 -0.935 3.23 -0.378 1.465 -1.343 6.579 -1.186 4.885 -1.372 6.940 -1.309 8.435 -1.306 6.253 -1.100 14.965 -1.305 6.155 -1.030 22.485 -1.417 7.332 -1.352 43.315 -1.321 6.185 -0.983 For the ATCA, these are by default: 1.5 GHz -1.049 4.238 -0.8473 0.09073 -5.004E-3 2.35 -0.9942 3.932 -0.7772 0.08239 -4.429E-3 5.5 -1.075 4.651 -1.035 0.12274 -6.125E-3 8.6 -0.9778 3.875 -0.8068 0.09414 -5.841E-3 20.5 -0.9579 3.228 -0.3807 0.0 0.0 For the Karl G Jansky VLA ("EVLA"), the defaults are frequency dependent. If the observing frequency is between two tabulated frequencies, then the beam is computed for each of the tabulated frequencies and then interpolated to the observing frequency. The values used are far too numerous to give here, see EVLA Memo 195, "Jansky Very Large Array Primary Beam Characteristics" by Rick Perley, revision dated June 2016. Obtain it from http://library.nrao.edu/evla.shtml RICK PERLEY'S (OLD) REPORT Polynomial Coefficients from LSq Fit to VLA Primary Beam raster scans. Functional form fitted: 1 + G1.X^2 + G2.X^4 + G3.X^6 where X = r.F, and r = radius in arcminutes F = frequency in GHz. Fits were made to 3% cutoff in power for 24 antennas. Poor fits, and discrepant fits were discarded, and the most consistent subset of antennas had their fitted coefficients averaged to produce the following 'best' coefficients. Freq. G1 G2 G3 ---------------------------------------------------------- 0.0738 -0.897E-3 2.71 E-7 -0.242E-10 0.3275 -0.935 3.23 -0.378 1.285 -1.329 6.445 -1.146 * 1.465 -1.343 6.579 -1.186 4.885 -1.372 6.940 -1.309 8.435 -1.306 6.253 -1.100 14.965 -1.305 6.155 -1.030 22.485 (old) -1.350 6.526 -1.090 * 22.485 (new) -1.417 7.332 -1.352 43.315 -1.321 6.185 -0.983 ----------------------------------------------------------- The estimated errors (from the scatter in the fitted coefficients) are generally very small: G1: .003 at all bands except Q (.014) G2: .03 to .07 at all bands except Q (.15) G3: .01 to .02 at all bands except Q (.04) R. Perley 21/Nov/00 * The 1.285 and 22.485 old feed values are not used.