1.2 Keyin Free-format Input

All input parameters to SCHED are in the keyin free format, named after Tim Pearson’s subroutine that is used to read it. The important features of that format for SCHED are described here. This description is not complete and users of the Caltech package should refer to other documentation for useful capabilities of keyin input that are not normally used for SCHED.

Input via keyin format is of the form keyword = value. Different sets of keywords and values are separated by spaces or line breaks. The equal sign is optional as long as its absence does not lead to ambiguity. The input keywords are not case sensitive. Most of the values required by SCHED, except for file names in case sensitive systems like unix, are also not case sensitive. keywords are, in all cases, limited to 8 characters in length. Character string values can be much longer.

A few SCHED keywords may be abbreviated. In the parameter descriptions in this manual, the required characters will be shown in upper case while the optional ones will be shown in lower case. Any characters beyond the required ones must match the optional ones. As an example, the keyword DURation can be typed as DUR, dur, DURATION, duration, durat, Dur .....

A value can be an array, with elements of the array separated by commas. If the last character on a line is a comma, the input array is assumed to continue on the next line.

The value can be a number or a character string. Quotation marks are required for a character string if it can be mistaken for a number or if it contains blanks or commas. Also, because of possible ambiguity with other keywords, character string values must be in quotes if the equal sign is left out.

If the value is a number, the decimal point and fractional part are optional. The parser converts all numbers to double precision real so the program will not know if you specify “5” or “5.0” etc. The value can be an arithmetic expression enclosed in parentheses. An example would be (5.5*4). The expression cannot contain blanks or the parser will get confused.

If value is a time or angle, it can be written in hh:mm:ss.ss or dd:mm:ss.ss format. Each colon causes all values to the left to be multiplied by 60, giving a result to the program that is in seconds. Values less than an hour or degree can be written mm:ss.ss or just ss.ss. The decimal and fractional seconds are optional. However, even hours or degrees require the colons; for example, 2 degrees is written as 2:0:0. Numbers larger then 60 are allowed for the minutes and seconds; for example, 2:40 and 160 are equivalent. No imbedded blanks or signs are allowed. A negative or positive sign is allowed in front and applies to the final total number of seconds (i.e., -1:20 is returned as -80).

A keyword can be specified without a value. This is equivalent, as far as the program knows, to specifying a value of zero. Some keywords are used in this way as logical switches to cause something to happen. DOVEX, DOPPLER, and PTVLBA are examples from SCHED. Usually the effect of such a switch can be reversed by specifying a non-zero value. For several such switches, SCHED has a corresponding variable keyword that has the opposite effect (for example: RECord and NORECord).

An exclamation mark (“!”) causes all items on the rest of the line to be ignored. This is useful for adding comments.

The parser collects all input, regardless of how many lines it is on, up to the line on which it finds the “Endmark”, which in the case of SCHED and most other programs is a “/” . For SCHED, these groups correspond to scans in the main input, or a station or a source in the main catalogs.

Some examples of valid, if not very consistent, SCHED input are:

  SOURCE=’0235+164’  YEar = 1988  day 67  Stat = ’OVRO’,NRAO,  
   vla,vlba_pt  stop 03:35:00  dur = 15:00  
  comment ’Quotes are needed for more than one word.’  /

When a program that uses keyin is run interactively, the user can obtain a list of inputs by typing “HELP /” and can obtain a list of the current values of all input variables by typing “SHOW /”. The input of SCHED is rarely, if ever, given interactively.

Keyin values can be mathematical statements in parenthesis; for example,

  dur = 15  
  rep = (4*5)

This example shows the most likely way in which this capability might be used in SCHED input files. These two commands mean that the scan, which is 15 seconds long, should be repeated 20 times. By using the (4*5), it makes it clear that the repetition lasts for 5 minutes since there are 4 scans per minute.