12.1 AIPS conventions

12.1.1 AIPS shortcuts

Some niceties of using POPS syntax in AIPS are:

  1. More than one expression can be put on a line. These expressions must be separated by a semicolon ( ; ). Exceptions are RESTORE, GET, RUN and a few other “pseudo-verbs” which, with their arguments, must stand alone. For example, GET MYIMAGE ; INDISK = 1  C R will ignore the INDISK = 1. When in doubt, see the HELP files for the pseudo-verb to find the restrictions on its use.
  2. As in many other systems, recognized keywords in AIPS do not need to be typed in full. You must type only enough of the leading characters to get a unique match. This “minimum-matching” has been exploited throughout this CookBook. If in doubt, hit the Tab key. The keyword will be completed if it is unique or the screen will blink. Hit the Tab key a second time to see your choices.
  3. The parameter variables in AIPS are called “adverbs.” They are assigned values by the equals verb ( = ), e.g.INDISK = 2  C R. The equals sign may usually be replaced by a space. The exception arises when the variable on the left is a sub-scripted array element and the expression on the right involves a unary minus or other function reference (e.g.APARM(3) = -1 ; APARM(4) = SIN(X)  C R).
  4. Array adverbs are set to a constant value by putting a single value on the right hand side of the equals sign, e.g.CELLSIZE = 1.5  C R. A list of values may be put in the array by putting the list on the right hand side of the = sign separated by commas ( , ), e.g.LEVS = -1, 1, 2, 3, 6, 9  C R. The commas may be replaced by spaces in most cases. An exception occurs if an element is negative or some other arithmetic expression. Thus, SHIFT = -19 -2  C R will produce SHIFT = -21, -21.
  5. A list of values may also be put in a sequence of scalar adverbs with the ~ (tilde sign) adverb. The main use of this is to overcome the 128-character limit for input lines to POPS in assigning values to an array. Thus, for example,
    RASHIFT = -3000, -2500, -2000, -1500, -1000, -500, 0, 500, 1000  C R
    RASHIFT(10) ~ 1500, 2000, 2500, 3000  C R
  6. Adverbs can be used in arithmetical expressions or set equal to other adverbs, e.g.OUTNAME = INNAME ; OUTSEQ = 2.5 * INSEQ + 3.
  7. Both upper and lower case letters may be entered by the user; with one exception, AIPS is case insensitive. That exception is in adverb character string values, which are converted to upper case by the trailing quote sign. If you omit the trailing quote — and make that the last command on the input line — then case is preserved (and used) in the string.

As an example, these shortcuts allow the following AIPS command sequence:

> INNAME = ’3C138’  C R

> INCLASS = ’IMAGE’  C R

> INSEQ = 0  C R

> BLC = 200 , 200  C R

> TRC = 300 , 300  C R

> OUTNAME = ’3C138’  C R

> OUTSEQ = 5  C R

> GO PRTIM  C R

to be shortened to:

> Inn ’3c138’ ; INC ’image’ ; blc 200 ; Trc 300  C R

(Note use of upper and lower case.)

> OUTN INN ; OUTS INS + 5  C R

> go prti  C R

(Task name can be in either case, too.)

12.1.2 Data-file names and formats

The physical name of the data file is generated internally, depends on the type of computer, and will not often concern you as a user. You will refer to an image by specifying its disk number, the type of image (’MA’ for images, ’UV’ for uv data), and the following three parts of the image designation:

  1. Name — A string of up to 12 legal characters.
  2. Class — A string of up to 6 legal characters.
  3. Seq — A number between 0 and 46655.

Each of these parts corresponds to separate input adverbs called INNAME, INCLASS, and INSEQ (and their variations). You can choose the image name arbitrarily and sensible choices will reduce other book-keeping. Many programs will choose a reasonable image name if you do not specify one.

A common set of conventions for the name adverbs is used throughout AIPS. INNAME    C R means “accept any image name with the specified class and sequence.” INSEQ 0  C R means “accept any image with the specified name and class” or, if only one image is to be used, “accept the image with the specified name and class having the highest sequence number.” OUTNAME    C R means “use the actual INNAME.” OUTCLASS    C R means “use the task name,” except for tasks that write more than one output image, in which case task-based defaults will be used. OUTSEQ 0  C R means “use a sequence number that is one higher than that of any files currently on disk with the same name and class as the requested output file.” The name and class strings also support “wild-card” characters for input and output. This feature is especially powerful in tasks, such as FITTP, that can be told to operate on all images that match the specified name parameters. Type HELP INNAME  C R and HELP OUTNAME  C R for details. The verb NAMEGET will convert the INNAME set of adverbs to the values that would be used by a task. This is especially useful in complicated procedures.

Only the array data, in the form of 4-byte floating-point numbers, are stored in the image or uv data file. The header information is stored separately for each image or uv data set. Directory information is stored in a special file, called the Catalog File. Each disk has one such file for each user and it contains directory information for all images and uv data sets belonging to that user.

Extension files may be associated with any image data file. Each image can have (in principle) up to fifty types of extension files and up to 46655 “versions” of each type. These subordinate files contain additional information associated with the image and are designated by a two-letter type code. ‘HI’ is a history file, ‘CC’ is a Clean components file, ‘PL’ is a plot file, ‘AN’ is an antennas file, ‘SL’ is a slice file. In AIPS, an extension file associated with an image is uniquely specified by the usual file-naming adverbs plus the extension file type (adverb INEXT) and the version number (adverb INVERS). The default convention for INVERS is reasonable — on input, zero means the highest (i.e., most recent) version and, on output, the highest plus one.

Array elements in an image are designated by their pixel coordinates (counts). If M(i,j,k,l,m,n,o) is a seven-dimensional array, the (1,1,1,1,1,1,1) pixel will be associated with the lower left hand corner of the image. The ith (first) coordinate increments fastest and is associated with a column in each plane of the image. The jth (second) coordinate is associated with a row in each plane. The other coordinates allow the image to be generalized to cover up to seven dimensions, i.e., “cubes” and the like. The two adverbs BLC for bottom left corner and TRC for top right corner let you specify the desired sub-array in up to seven dimensions. When a sub-image is taken from an image, the pixel designation of any image element will usually change.