SOLOBS: A Tool for Generating Solar Observing Schedules

T.S. Bastian

National Radio Astronomy Observatory

Introduction to SOLOBS

SOLOBS is a program designed to produce a VLA solar observing schedule. SOLOBS is flexible enough that complex programs can be set up quickly and easily. Before discussing the use of the program in detail, it is worth describing the content of a VLA observing schedule and how solar observing is handled.

A VLA observing schedule is simply a list of source and associated cards which inform the online system of the specific details of how the source in question must be observed. A source card specifies the source name, an LST stop time or duration, the geocentric coordinates (RA and Dec) of the source, the epoch to which the coordinates refer, the frequency band, the bandwidth, and the time the source should be observed. The main differences between observating the Sun and stars, galaxies, extragalactic, and other sidereal sources are the following:

There are several apparent source motions due to the the Earth's orbital motion about the Sun, the Earth's rotation, and the Sun's rotation. These motions are handled by the //PM card (planetary motion). The //PM card specifies the time derivative of the RA and Dec of the source at a given reference time. This results in a linear correction to the source position. Because the source position changes in time in a nonlinear fashion, it may be necessary to update the source position and planetary motion cards at some interval determined by the observer, depending on the scientific objectives of the observation.

Because of the extreme brightness of the Sun at radio wavelengths, a special solar observing mode is employed to observe the Sun. Briefly, when observing the Sun, attenuators are placed in the signal path and special large-amplitude calibration signals (``solar cals'') are employed to calibrate the system temperature. A more detailed description of these hardware modifications can be found here. The ``solar mode'' is enabled by an ``S'' in column 70 of the source card. This is inserted automatically by SOLOBS.


The use of SOLOBS is designed to be simple and intuitive. The basic idea is straightforward: a VLA schedule is a series of source cards, qualified by planetary motion, data select, local oscillator, and fine tuning cards. These are often organized in repetitive sequences of source scans interleaved with calibration scans. SOLOBS organizes scans in independent observing ``blocks''. One can then ``build'' with these blocks by sequencing independent blocks, repeating blocks, etc. In this way, nearly unlimited flexibility in how one organizes source and calibrator sequences is possible. In the documentation below, the reader will notice that several functions are mentioned, but not supported. This is the result of anticipating possible demand when coding the program, but never getting around to actual implementation. If there is community demand, the hooks are in place to fill out some or all of these additional features.

The program uses simple ANSI graphics to enable users to specify their schedule. These are organized as shown in Fig. 1. The ``top level'', ``calibrator specification'', and ``source specification'' screens are used to enter the raw information required; e.g., dates, times, sources, and calibrators. The ``block specification'' and ``build with blocks'' screens are used to define scans, scan blocks, and the complete observing program. That is, a scan is specified by a source ID, a duration, a band, and a bandwidth. A "scan block" allows one to define a sequence of scans as a specific entity. Both of these functions are done in the ``block specification'' screen. The ``build with blocks'' screen then allows one to "build" an observing program with the blocks so defined. The ``physical ephmeris'' screen is for information only; it summarizes the physical ephemeris of the Sun at 0h TDT on the date specified at the top level.

                _________________             _________________
               |                 |           |                 |
               |   Top level     |-----------|   Phys. Ephem.  |
               |_________________|           |_________________|
                |  |  |  |   |  |
                |  |  |  |   |  |
                |  |  |  |   |  |------------ Save inputs
                |  |  |  |   |
                |  |  |  |   |--------- Write observing schedule
                |  |  |  |                
                |  |  |  |                    _________________   
                |  |  |  |                   |                 |
                |  |  |  |-------------------|   Calibrator    |
                |  |  |                      |  Specification  |
                |  |  |                      |_________________|
                |  |  |                                |   |  |
                |  |  |                _________________   |  |
                |  |  |---------------|                 |  |  |
                |  |                  |     Source      |  |  |
                |  |                  |  Specification  |  |  |
                |  |                  |_________________|  |  |
                |  |                          |      |     |  |
                |  |           _________________     |     |  |
                |  |--------- |                 |----+-----|  |
                |             |      Block      |    |        |
                |             |  Specification  |    |        |
                |             |_________________|    |        |
                |               |                    |        |
                _________________                    |        |
               |                 |-------------------|        |
               |   Build with    |                            |
               |     Blocks      |----------------------------|

                                   Figure 1

Before describing each screen in detail, let me first briefly describe the mechanics of data entry and screen manipulation. Each screen contains a prompt line, where commands are entered, and two command lines, which simply list the available three-letter commands for that particular screen. The command lines are of two types:

"Display commands" refer to the screen currently being displayed, and are used to enter and/or edit the information displayed on that screen. They are used by simply typing the command. "Action commands", on the other hand, are always prefixed by "GO". The action commands are used to change screens, save and get work environments, and perform the actual scheduling of an observing program. Hence, if the entry level screen is displayed and one wishes to change the user ID, one simply types "UID". The cursor skips to the appropriate place on the screen and the user enters the relevant ID. If the user then wishes to go to the calibrator designation screen, he or she simply types "GO CAL". With the exception of the ``physical ephemeris'' screen, which is only accessible from the top level, any of the remaining five screens is accessible from any other screen through the ``go'' action command. I'll now review the details of each screen.


The entry level screen is used to acquire some basic information from the user regarding the program at hand. This includes:

Figure 2: The layout of the ``top level'' screen.

In addition to the above display commands specific to the entry level screen, all screens have the following additional display commands:

The action commands in the entry level screen are as follows:

Regarding the EPH action command, it is useful to have the physical ephemeris readily available for planning purposes. An example of the screen is shown in Fig. 3.

Figure 3: Example of the layout of the ``physical ephemeris'' screen.


On the source designation screen, the user provides the details of what, precisely, is to be observed. Since only solar observations are currently supported, I'll confine the discussion to solar source designations. The software uses the JPL DE200/LE200 software to compute the apparent position of the center of the Sun's disk with a high degree of precision. It is left to the user to indicate where to point relative to disk center, and whether to track with the Sun's rotation or not. Up to 99 independent pointings are supported, so one may observe several active regions, perform mosaicing, or a number of other relatively complex observing strategies. Columns 1-2 of the screen display are reserved for a generic source ID. The source ID is always of the form ``Sn'' where ``n'' is the row number. The remaining columns are filled in with the following display commands:

Figure 4: The layout of the ``source specification'' screen.

If TRK is T and a reference time has been specified, the program automatically fills in the corresponding heliographic coordinates of the source if geocentric offsets were given; conversely, it fills in the geocentric offsets if heliographic coordinates were given. As before, ALL is used to specify all of the above. Upon completion of a given list of source designations, simply type ``Q'' for the source name to return to the command line. To edit source designations, the above commands may be used with a row number. For example, to change the heliographic latitude of the second source, type ``LAT 2''. The cursor skips to the appropriate row and column and then returns to the command line upon completion of the data entry.

The action commands for this screen simply take you to other screens, as described above. EXI (or Q) returns you to the entry level screen.


The calibrator designation screen operates in much the same way as the source designation screen, except it's easier. One simply identifies a suitable set of amplitude and phase calibrators from the VLA calibrator manual. Upon entry into the calibrator designation screen, the following display commands are used:

Nothing else is required. The program makes use of the Master Calibrator Lists to fill in the remaining columns. As was the case for the source designation screen, columns 1-2 are reserved for a generic source ID. For calibrator sources, the ID is always ``Cn'' where ``n'' is the row number.

Figure 5: The layout of the ``calibrator specification'' screen.


The scan-block designation screen is where one begins to spell out the details of the observing program. This is done by defining ``blocks'' composed of sequences of individual scans. Up to 30 independent blocks may be defined. In order to define a block, one must first initialize the block. This is done by typing ``BLK n'', where ``n'' is the block number. A field in the lower-right corner of the screen indicates which block is currently being displayed.

One then uses the following display commands to set up the block:

Figure 6a: The layout of the ``scan-block designation'' screen, block 1.

Figure 6b: The layout of the ``scan-block designation'' screen, block 2.

As before, ALL may be used to set up a large number of scans. "Q" is used in the SCN column to exit to the command line. The BLK command is used to initialize another block. The action commands are as before, with the exception of:


The building screen allows the user to ``build'' with the blocks defined in the previous screen into a complete observing program. The commands to do this are extremely simple:

Again, ALL may be used to set up a long sequence of blocks and "Q" may be used to exit to the command line. Individual entries may be changed by using the display commands with the row number. Up to 60 block entries may be made.

Figure 7: The layout of the ``build with blocks'' screen.

The only action commands which differ from those in other screens are:


When you are satisfied with the contents of the scan-block definition and building screens, type ``Q'' or ``EXI'' to return to the top-level screen. Once there, it is prudent to save the global working environment. Do this by typing ``GO SAV''. You will be prompted for a file name. Give one up to eight characters in length with no extension. Your environment will be saved in a file called <name>.DAT. Once the environment is saved, type ``GO SCH'' to produce the observing schedule. It will be written to <outfile>.OBS. The observing schedule is easy to "fine tune" by re-entering SOLOBS, retrieving the working environment (``GO GET''), and making the necessary adjustments before typing ``GO SCH'' to produce a revised observing program. An example of a short observing schedule (produced, in fact, by the sample screens shown in the figures) is shown below.

/.AB999   607
3C48          03 10 00 01 37 41.3051  33 09 35.394C    XX   C   2222
0555+398      03 15 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        03 42 00 06 01 46.9208 +23 21 32.847D    XX S     2222
//PM         238.336   -28.481 16 25 21       8.65
0555+398      03 45 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        04 12 00 06 01 51.8694 +23 21 32.326D    XX S     2222
//PM         238.388   -28.854 16 55 17       8.65
0555+398      04 15 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        04 42 00 06 01 56.8190 +23 21 31.798D    XX S     2222
//PM         238.440   -29.227 17 25 12       8.65
0555+398      04 45 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        05 12 00 06 02  1.7698 +23 21 31.263D    XX S     2222
//PM         238.493   -29.600 17 55 07       8.65
0555+398      05 15 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        05 42 00 06 02  6.7216 +23 21 30.721D    XX S     2222
//PM         238.545   -29.973 18 25 02       8.65
0555+398      05 45 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        06 12 00 06 02 11.6746 +23 21 30.172D    XX S     2222
//PM         238.598   -30.346 18 54 57       8.65
0555+398      06 15 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        06 42 00 06 02 16.6286 +23 21 29.616D    XX S     2222
//PM         238.652   -30.718 19 24 52       8.65
0555+398      06 45 00 05 55 30.8056  39 48 49.166C    XX   A   2222
AR9050        07 12 00 06 02 21.5837 +23 21 29.053D    XX S     2222
//PM         238.705   -31.091 19 54 47       8.65
0555+398      07 00 00 05 55 30.8056  39 48 49.166C    XX   A   2222

It is wise to check the observing schedule for cable wraps, time on source, shadowing, elevation limits, etc. A ``CHECKOBS'' function is not yet supported by SOLOBS. However, one may use JOBSERV to check the output of SOLOBS. JOBSERV may also be used to add a header to the observing schedule.


SOLOBS produces schedules for continuum observing programs in the default frequency bands. If the observer wishes to observe at frequencies other than the default frequencies, the observer is responsible for either defining and inserting a ``local defaults'' block or inserting the appropriate //LO and //FI cards after each of the relevant source cards.

While spectral line observations are sometimes used for planetary and cometary work (not currently supported by SOLOBS), the spectral line observing mode is rarely used to observe the Sun. The reason is that there are no spectral lines! Nevertheless, from time to time the spectral line mode is used for solar work. For example, to use the 74 MHz system one must often observe in spectral line mode in order to separate, identify, and remove the many discrete interference spikes across the observing band. There has been occasional interest in looking for narrowband features in the spectrum using the L and P bands. Finally, the VLA has been used in spectral line mode to look for evidence of linearly polarized radiation in higher frequency bands. In such cases, it is again the observer's responsibility to insert the appropriate //DS (data select) cards in the observing schedule to specify the details of the spectral line observing mode. A detailed description of //LO, //FI, //DS, //PM, and several other control cards of interest may be found here.

Finally, high time resolution is often a requirement for certain solar observing programs (e.g., flares). Unless told otherwise by the observer, the VLA online system uses a default integration time, typically 10 sec. For shorter integration times, the observer must insert a //DS card after each (solar) source card specifying the desired integration time in columns 17-18. Since //DS card only allows the observer to specify integer numbers of seconds, a special switch is available in column 14 of the //DS card. If and ``S'' is inserted in this column, the number of seconds specified in columns 17-18 is divided by 8. At present, however, there is a hard limit of 8 wave-guide cycles, or 0.4167 sec, as the minimum integration time. Hence, the data select card would read:

\\DS         S   3

The ``3'' actually indicates and integration time of 3.33 sec (64 wgc). The ``S'' divides this time by 8. Please DO NOT use this mode without consulting with Tim Bastian or Ken Sowinski!

Please direct any questions, comments, or criticisms concerning SOLOBS to Tim Bastian (

About this document ...

An Introduction to SOLOBS:
A Tool for Scheduling Solar Observations on the VLA

This document was generated using the LaTeX2HTML translator Version 98.1p7 (June 18th, 1998)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 0 -no_navigation solobs.tex

The translation was initiated by Tim Bastian on 2000-07-28

Tim Bastian