Specifying Relative and Absolute Times


The HHMM Time Format

Observers, in general, only need to specify times relative either to the current LST or to the project's stopping time. All observing programs identify time inputs by the two keywords start and stop. Keywords which deal with time permit one of the following forms:
    hhmm[+hhmm|-hhmm ...]
    stop[+hhmm|-hhmm ...]
    lst[+hhmm|-hhmm ...]
    +hhmm[+hhmm|-hhmm ...]
    -hhmm[+hhmm|-hhmm ...]
where additional (optional) offset terms are shown in brackets (see the examples below). Wherever the expression hhmm is used, it symbolically represents the actual time input by the user. The expression lst means that the user would literally type in the characters l, s, and t; likewise for stop. In other words, the strings lst and stop are translated internally (and dynamically) and, this is important, do not represent shell variables accessible to the user.

The first form (hhmm) indicates that the input represents an absolute time; the second (stop) is translated as the project stop time; and the third (lst), as the current LST. The fourth form is shorthand for lst+hhmm and the fifth is shorthand for stop-hhmm.

Note: The project stop time (stop) and the current LST (lst) may only be specified as the first member of a time string.

Note: The project stop time (stop) may never be exceeded.

Additionally (only for VLBI), seconds of time may be included by using the modified hhmm form:

    hhmm:ss[.s]
in place of the basic hhmm syntax. The colon character is required and fractional seconds may also be included. Note that because the return value is single precision, an accuracy greater than about 0.05 seconds should not be expected.

Examples of this new time syntax include:


Keyword Expression
Sets the keyword time to...

time=1350
Exactly 13h 50m.
time=+100
One hour from now.
time=lst+100
One hour from now.
time=-0200
Two hours before the project stop time.
time=stop-0200
Two hours before the project stop time.
time=stop-30-100
One hour and 30 minutes before the project stop.

A Breakdown of Stop Times

Here is a summary of the various stopping times possibly encountered in a project:
Project stop time
This is established by the observing schedule and can not be changed by the user at any time. No observation in the observing script is allowed to continue beyond this time. The use of the scan and loop commands insure that this limit is observed.
Loop stop time
This is an optional argument to the loop command and specifies when the loop should terminate. In other words, the stop time for this command is used to specify how much time should be reserved for looping between the calibrator and source setups. If it is not given, it defaults to the project stop time. Internally, an adequate amount of time will be reserved to insure that the final calibration setup will be executed. (Where this will be not true is when the time remaining is not enough to get a proper scan. For example, assume the calibrator setup needs 10 minutes and the loop command is executed as loop stop=+6 ..., it will fail to observe the calibrator setup. Another example of how the calibrator setup might not be observed would be if a loop command with no stop keyword was followed by another loop command in the observer's script. Both of these are user errors and should be identified by the checker program.)
Scan stop time
This determines the amount of time to allow for the successful execution the setup keyword. In general, the user should rarely have a need to specify a stop time for this command. Without the keyword, the command defaults the scan stop time to the project stop time.
Setup stop time
This determines how long one observation of a setup should last. By default, if the source can be observed, this will last for one hour. Most of the observing scripts, when they set this value, set it to something between a few minutes to around 30 or 40 minutes.

Note that, moving upwards, each of the above listed times is wrapped by the time directly above it. In other words, the scan command calls the observing setup and the loop command calls scan. Also, note that the highest time in the list enforces its stop time on the stopping time of the lower items.

The only thing that the user really needs to know about the project stop time is that they can specify other times relative to it. Also, it should be emphasized that the setup stop time is specified in each source's setup as a keyword=value pair. The loop and scan stop times are specified as command line arguments and are used to control the flow through the observing script. These later two stop times are, in general, always specified relative to the project's stop time.


(up to Document Overview, back to Commands That Use Setups, on to Setting and Retrieving Variable Values)
James Morgan

Page last modified: .