Creating and Editing Observing Block Files for LBC

Observations with the LBC are carried out through the LBC Control System, which reads in and executes Observing Block (OB) files (xml files with the extension “.ob”) which specify the telescope pointing, dither sequence and instrument configuration(s). Several OBs may be strung together into an Observing Plan (OP), though, at this time, OPs cannot be loaded and executed by the LBC Control program. Observing Plans will be ignored for now.

This document describes how to create the OB files, a task which will primarily be done using the LBC OB Creation GUI (section I) but will also use other methods: focus & collimation OBs can be generated from the target OBs using the C++ program, mk_fpia_ob (section II) and OBs to take test images can be created on-the-fly from an editor within the LBC Control User Interface (section III). OBs usually are edited by loading them into the OB Creation GUI, changing relevant parameters and then saving them as a new file, but the *.ob file can be edited with a simple text editor. Section IV lists and describes the most commonly edited parameters. We are starting to collect commonly used, generic (use current telescope pointing) OBs in the directory /home/lbcobs/OBlib. A listing and brief description of these is given in section V.

I Creating OBs with the OB Creation GUI

The LBC team have provided an Observing Block Creation GUI to create OBs of the required format. Following is a step-by-step guide to using it to create observing blocks for LBC. More detailed information can be found in the document, "GUI for LBC-OB Reference Manual" by Stefano Gallozzi ( (

1/ Download the GUI This OB GUI may be downloaded by clicking on the "Binaries" link in the table at or It runs on both Windows and LINUX platforms and both sets of binaries are included in the *zip file, This is the latest version as of 21 November 2007, but OBs created with earlier versions will run. Create a new directory (linux) or folder (windows) and copy the zip file into this directory (folder) before unzipping it.

2/ Start the OB creation GUI with the command java –jar GUI.jar (linux). This will display the Main Window. There is a set of buttons along the top which are divided by functionality into three main groups: (1) the three left-most buttons (yellow) create, delete and open Folders; (2) the five red buttons to the right of these deal with Observing Plans and are currently not used; and (3) the six green buttons after these create, open, delete, export, copy and save OBs. These are heavily used. Note that all of the buttons have text descriptions which will appear when the mouse cursor is brought to rest for about 1-2 seconds on the button. The buttons serve as shortcuts for the tasks listed in the menus (Folders, Plans, OBs) along the row above.

3/ Specify the output/input Folder First, specify the folder to which you will write out the OB. First the folder must be created. You may do this outside of the OB GUI by the usual means ("mkdir" or "New Folder") or within the OB GUI by clicking the "New Folder" button. Next, open the folder. Click the "Open Folder" button and browse for the folder name. The path to this folder will be displayed in the box at the upper right of the Main WIndow and also in the left sidebar when you click on the magnifying glass to the left of the word "root".

4/ Create a new OB Click the "New OB" button or select "New" from the "OBs" menu. This will pop up a "New Observing Block" window and give you the option of creating a single OB or a set of OBs for a list of targets which all assume the same instrument configuration(s).

In both cases, to enter bookkeeping information, you will need first to click "Single OB". This will open a new window with boxes in which you should enter the
  • OB Name (this should be less than 18 characters, the number of characters allotted to it in the FITS header. LBCOBNAM is the keyword for OB Name.)
  • OB-Plan Name (may be left blank),
  • Folder Name (which should display the folder you opened in Step 3 above),
  • Proposal ID,
  • PI Name and
  • Observer.

The OB Name and the last three items should be filled in. Set Observer to your partner name: "inaf", "az", "osurc" or "lbtb". This information can be edited into existing OBs by selecting "Change Observer/Proposal/PI" from the OBs menu, typing in the appropriate text and clicking "OK-modify". The values for Proposal ID, PI Name and Observer will be written to the primary header keywords, PROPID, LBCUSER and OBSERVER. In the LBC archive, science data will be sorted based on the value of the OBSERVER keyword. If blank, science data appear in the directory /data/store/full/common and technical chip data in /data/store/full/tech. If the value of the OBSERVER keyword is not blank, then science data will appear in /data/store/full/{OBSERVER} where {OBSERVER} is the value of that keyword. This directory will be automatically created if it does not already exist. All data, regardless of {OBSERVER}, will be sent to the Repository on the LBTO user workstations (e.g. lbtmu03:/Repository).

Once this information is entered, select "None" from the list of available OB templates (biases, darks, focus) and click "Create It". Now the bookkeeping information is stored.

More information on how to create single OBs follows immediately. Instructions for generating a set of OBs are in the section on Creating a set of OBs

A. Creating a single OB.

A1/ In the "New OB" window in which you entered bookkeeping information, there was a list of generic OBs. Most often none of these is selected (as instructed above), but if you wish instead to select a generic OB (of these the only one used often is 5biases, which takes a series of 5 biases with all 4 chips and no binning) go back and do this. Once you are ready to move on, click "Create it" at the bottom. This will cause the window to close and you will be back in the Main Window. If you have selected a generic OB, the target information will be filled in with DEC = -90, which is an indication not to command a slew, and the instrument will be configured for that type of OB. If you have selected "None" then the target and instrument configurations will be left untouched.

A2/ In the Main Window, click the Target Package tab to bring up the target data display. The Observing Block name entered previously should appear. Enter the Target Name (may be separated by spaces) and select the Observation Type from the pull down menu below that. This "Class Type Observation" (zero, object, flat, ...) will be written to the IMAGETYP keyword in the primary FITS header.

A3/ Enter the Target Coordinates. RA should be entered either as hours, minutes, seconds, fraction of seconds. You can tab from one field to the next and as you do so, the RA in decimal degrees will be updated in the box above. Similarly, enter DEC as degrees, minutes, seconds, decimal seconds. Note that while there is an option for J2000 or B1950 coordinates, the telescope control does not as yet accept B1950 coordinates. Enter only J2000 coordinates. To signal that the OB should be carried out where the telescope is currently pointing, set DEC = -90. RA may be anything from 0-360 deg (0-24h).

A4/ Enter the Position Angle In the first set of boxes in the "Offset and Rotation" section, entered the desired position angle in the box to the right of "BArm" or "RArm". 0 degrees corresponds to the N vector pointing from the center of rotation on chip 2 through chip 4 (along the positive y axis) and E pointing to the left (along the negative x axis). Position angle is defined as the angle of the positive y axis from the N vector measured from N through E. Boxes below this allow you to adjust the telescope pointing, by RA and DEC offsets to the target coordinates, or by a proper motion.The telescope will slew to the coordinates entered plus these offsets or proper motions. Note that offsets and proper motions are not yet handled in the telescope control system, so whatever is entered in these boxes is currently ignored.

A5/ Insure the boxes labelled Rotator Tracking and Preset LBT are checked (or not checked) as you wish. For normal observations, both should be checked.
  • Rotator Tracking If checked, this enables the rotator to move during the observation to compensate for field rotation and maintain the position angle. During normal observations, this should be checked.
  • Preset LBT If checked, this enables the instrument to send commands to the telescope control system: among other things to slew to the target, track at the sidereal rate, dither and adjust the position of the primary mirror. For normal observations, this should be checked.

A6/ Click on Interactive Pointing to bring up a new window in which is displayed an image from the Guide Star Catalog of the region of interest with an outline of the focal plane array overlayed. Position angle and coordinate offsets can be entered here. Clicking Recenter position, will update the target coordinates and position angle displayed in the Main Window to reflect these offsets (unlike entering coordinate offsets in the Main Window, which remain displayed as offsets, and require a new functionality of the telescope control system that is discussed in A4).

A7/ Observation Description Click the Observation Description tab to display this page, divided into 3 main sections, 2 of which (dithering and B-Arm) you will use. You can set up multi-filter dithered observations here; these will always be executed with the outer loop over dither postion and inner loop over filter, i.e. at the first dither, the filters will be cycled through before the telescope is commanded to move to the next dither.

  • Dithering There are several dithering patterns available:
    • Random,
    • 4-point default: designed to position the star on the center of each of the four chips;
    • 5-point default: in a left or right leaning 5-dice pattern to fill gaps;
    • 9-point default: in a left or right leaning 3x3 grid to fill gaps;
    • 10-point default: a left or right leaning10-point grid to fill gaps;
    • Circular;
    • Rectangular;
    • User Provided and
    • None.
The 9 and 10-point patterns are split up to allow reasonable exposure times per dither position and still keep the total OB time below the ~30min time period for checking focus and collimation. The 4,5, 9 and 10-point patterns take into account the position angle so that the star is moved from chip to chip (4-point) or gaps are filled (5,9 and 10-point) in the final mosaic. Select one of these (if "User Provided" then you will need to create an ascii file of X and Y offsets, of the format, Xoff;Yoff, with one set per line), fill in the boxes referring to "dithering scale (in arcseconds or pixels, as indicated next to the "Dithering Offsets Steps")", "dither angle" (the angle will be set to the position angle and greyed out for the 4,5,9,10-point patterns so that these patterns will be executed along detector coordinates), "starting item" and "initial offset" (for the dithering pattern) and click "Calculate". This will put the RA and DEC dither offsets into the "Dithering Offset Steps" boxes to the left. If "User Provided" was selected, you will be asked to browse and select the ascii file of offsets. Insure that the offsets look reasonable, as these are what will be listed in output the OB file. Further details on the available dithering patterns can be found at DitherPatterns.

  • CCD and filter configuration
In the blue and red shaded regions, the LBC-Blue and LBC-Red configurations are specified (currently only the blue needs to be configured). First, click Edit CCD. This brings up a window which allows you to review or edit the detector settings. A check-mark in the box to the left of the detector number indicates it is to be read out and colors it blue in the focal plane icon. Currently, read-out mode should be slow and 1x1 binning should be used. Make sure the box to the left of shutter is checked, if you want the shutter to open. Like the focal plane outline, the image of the shutter will change depending on whether it is to be opened or kept shut. Though windowing in both X and Y is not possible, a subset of rows can be readout. These same rows will be read out for all detectors that are enabled. Insure that the window parameters are what you want (full X range is 1:2048 and Y range is 1:4608) and either Modify Settings or Exit to close the window.

A8/ Back in the Main Window, set up the exposure times for each filter. "Double-click" anywhere along the header row to allow input of exposure times. Select a filter from the pulldown menu under the "filter" column. The exposure times, number of dithers and number of exposures are related by: Total Exposure Time = Single Exposure Time * Nexpo * Number of dithers The ETC can be brought up by clicking on the icon in the leftmost column. It will use the filter selected and whatever is entered for Nexpo or Single or Total Exposure time (in the ETC, select the parameter which is to remain fixed, e.g. select single exposure time is that is to remain fixed while the number of exposures can be adjusted to provide the necessary total exposure time). See ExposureTimeCalculator for a more thorough discussion of the Exposure Time Calculator. Help is available through the GUI or within the web-based version at which also shows the detailed parameters, including Vega as well as AB magnitudes. The results can be sent back to the LBC-OB GUI.

A9/ The Constrain Sets tab allows you to enter condition constraints for the observation, e.g. elevation~60-70 deg, photometric, high priority, seeing &lt 1arcsec. These constraints are not currently used by anyone, but if you do wish to enter some text here, note that the opening angle bracket (<) in XML is interpreted as beginning an tag, so you should instead escape it (&lt) or simply write out the text.

A10/ Save the OB When you are ready to save the OB, click the "save OB" button or select "Save" from the "OBs" menu. This will write out four files to the open folder, with extentions ob, str, txt and xsd. All four are necessary to read in and edit an OB.

B/ Creating a set of OBs

B1/ To create a set of OBs which use the same configuration but differ only in pointing and position angle:
  • first, set the configuration in the "Observation Description" tab and
  • then, click the OB List button on the New Observing Block window. This opens a new window which allows you to enter the data manually or to select a file, which contains one line per target (up to 100 targets) in the following format: ob name; target name; class type; RA [dec degrees]; DEC [dec degrees]; epoch; B-Arm position angle; R-Arm position angle; Proper Motion RA; Proper Motion DEC. After the list or target data are entered, click "OK Save Them" and all of the OBs will be created and stored to the folder that was opened in step 3.
Below are some lines from a sample file:



II Focus and Collimation OBs

Before starting an observation on a new target field, and periodically, about once every 30 minutes while tracking the field, the focus and collimation should be checked and updated. The adjustments that are needed are determined by analyzing a single extra-focal pupil image that is taken with the primary mirror 0.8mm below focus. See Basic Guide to Operating the LBC for instructions on taking and analyzing this extra-focal image. This image may be taken in any filter (the analysis code reads the filter from the image header and computes adjustments accordingly); normally the first filter in the OB is used.

  • Slew and Focus/Collimate (mk_fpia_ob) The OB which takes the extra-focal image can be generated from the target OB using a program mk_fpia_ob. Enter mk_fpia_ob target.ob (on any of the LBTO workstations).This will generate an OB called target_FPIA.ob which copies the following fields from the target OB: OB Name, Target Name, RA, DEC, equinox, position angle, first filter, and bookkeeping information (object, obsid, propid, observer, lbcuser). It changes the Class Type to FOCUS and enters a first focus offset which is -0.8mm below the nominal focus position. Including the filter focus offset this is -0.8, -0.75, -0.48 (-0.75 and ?) for V-BESSEL, B-BESSEL, U-BESSEL (r-SLOAN and g-SLOAN), respectively. (Check that SLOAN filters are incorporated in the OB GUI). Note that this program only outputs the ob extension for the OB file and therefore it cannot be read into and edited in LBC-OB GUI.

  • Focus/Collimate at current pointing There is a set of generic OBs in /home/lbcobs/OBlib on the LBTO workstations lbtmu0{3,4,5}. See OB Library for more information. The ones which take extra-focal images are Vfastextra.ob, Bfastextra.ob and Ufastextra.ob. Uses these if you are already at the position and simply want to focus/collimate without slewing. Alternately, you could load the target OB to slew, stop it before it proceeds to take data, and then load one of these generic OBs. _Note however that stopping an OB causes the OB execution page to be reset, so the checkmarks which enable telescope tracking, mirror adjustments and the blue channel need to be re-instated. Also the exposure time scaling will revert to 0.00, so this must be changed.


III Creating OBs on-the-fly (from the LBC Control User Interface)

It is possible to setup exposures from within the LBC User Interface. This is most useful for taking test data --- e.g. to measure twilight sky counts or determine exposure times to enter into the OB GUI. The data are saved and the OB is saved to the archive as fast.ob but a permanent copy is not written to the disk on the user machine - it will be overwritten the next time the interface is used. (Check this).

In the LBC User Interface, click OB Execution to display that page. Click the "Create an OB" button near the top which will bring up a new window.

Under General Data, enter the target name and select the image type (Object, Zero, Dark, Flat, Illum, Fringe, Focus). The type dictates which of the entry boxes below need to be filled in (e.g. for non-focus image types, the focus increment and step boxes are greyed out).

In Telescope Pointing select the coordinate system Equatorial (Alt/Az is not yet enabled) and enter the RA, DEC and epoch. There are 3 checkboxes on the left side of this panel:
  • If you don’t want to command a slew but want to take the image where the telescope is currently pointing, check the box to the left of Keep Current Pointing.
  • Check the box to the left of Drive Telescope if you want the OB to command the telescope pointing and mirror position.
  • Checking the box to the left of Telescope Guiding will enable guiding with the technical chips.

If you want to take a series of dithered images, in the Dithering section check the box to the left of Enable and then enter the number of images to take under Number of Positions and either a single number, to specify the radius of a circular dither pattern (in arcseconds) where the first position is the center and the subsequent positions are equally spaced along the circumference; or a series of RA,DEC offsets (arcseconds) in which commas separate the RA and DEC offsets and semi-colons separate the pairs for each dither position.

Finally, in either the Blue Channel, Red Channel or both sections, enter the observing configuration. Checking the box to the left of enable will enable the channel. Checking the box to the left of Limit to FOV center will cause it to read out only the upper 2048 rows of chip 2. 2x2 binning can be activated by checking the box to the left of bin 2x2. Position angle can be set. If left blank, the rotator will not be commanded to move but will remain in its current position. If the image type is focus, then boxes for initial focus value, focus increment, number of focus images in series, and final focus will be activated. Hitting tab moves from box to box and updates the values. The filter, detector integration time (Exp), number of integrations (Num) are entered in the next line. Total time is calculated automatically. If filter is left blank, then no filter move is commanded and the data will be taken with whatever filter is currently in the beam. For bias images, Exp is fixed to 0. When finished entering these values, click more to write this line to the box below. Multiple observations, using different filters, integration times and number of integrations can be written to the OB – enter the data and click more. These will be added to the list in the box below. To remove an observation, select it from the list in the box, and enter 0 for Ndit and then click more.

Review the fields, especially that the Drive Telescope, Keep Current Pointing and Telescope Guiding boxes are checked as you wish, and then click the downward pointing arrow at the bottom of the page to upload the OB to the OB execution page.


IV Editing the xml file

Any text editor can be used to edit an existing .ob file by hand. Be aware that to read in and edit an OB using the OB GUI, all 4 extensions which it writes out (.ob, *.str, *.txt and *.xsd) must be present in the directory and editing the *.ob file while leaving the others untouched will probably preclude opening it from within the OB GUI. Following is a list of the most frequently changed parameters and brief descriptions or definitions of these:

ClassType: object,focus, flat, bias, dark

TEC_RA and TEC_DEC: RA and DEC in decimal degrees and J2000. DEC=-90 signals that the OB will be carried out where the telescope is currently pointing.

Tracking: indicates whether the Rotator Tracking is on (1) or off (0).

Telescope: if equal to 1 enables slew, tracking and mirror control from OB.

WYMIN and WYMAX: Set different from 1 and 4608 if only a subset of rows is to be readout.

RotAngle_B: The position angle for the observation.

FocusStartPosition, NExpo, FocusOffset: For ClassType focus OBs, these are the starting focus value, the number of exposures and the focus step between each one. Typical values for FocusOffset are 0.1 for a coarse focus and 0.05 for the fine focus.

Chip1B, Chip2B, Chip3B, Chip4B: Insure these are 1 if that chip is to be used and 0 if not. Focus sequences typically use only chip 2.

ShutterB: 0 if shutter is to remain closed; 1 if shutter is to be opened.

FilterNumber_B: Number of observation configurations to cycle through (usually each with a different filter).


SingleExpoTime: Exposure time in seconds

Nexpo: the number of exposure with this Filter and SingleExpoTime. Each is saved as a separate file. Usually 1 except for focus sequences.

LBCUSER The value of LBCUSER, which should be the PI Name, is written to the keyword LBCUSER of the primary FITS header.

OBSERVER The value of OBSERVER is written to the keyword OBSERVER of the primary FITS header. It is also used to sort data in the LBC archive (http://lbcarchive from an LBTO machine). Science data will be written to lbcarchive:/data/store/full/{OBSERVER} and can be accessed through the web archive interface by entering the value of OBSERVER in the username box. If OBSERVER is blank, then science data will be stored in lbcarchive:/data/store/full/common and technical chip data in lbcarchive:/data/store/full/tech For SDT observations, set OBSERVER to "lbtstd". Information on how to do this is in section I 4 above.


V OB Library

Generic OBs which are commonly used have been collected in the directory /home/lbcobs/OBlib. Note that only the *.ob files (not the *.str, *.txt, *.xsd extensions) are in this directory so the OBs cannot be loaded and edited by the OB Creation GUI. All have DEC=-90 so that they will be carried out at the current telescope pointing. You may either run them from this directory, or copy them into your own directory of OBs for quick uploading (fewer clicks in the browse window to change OB directories). Right now, the directory contains the OBs which take an extra-focal image, with the mirror -0.8mm below focus (?fastextra.ob); those which take a focus sequence (coarse: ?focus.ob and fine: ?finefoc.ob) and one to take 5 biases with all 4 chips and no binning (5bias.ob). The README file gives more information on these. By far the ones used most often are the set of ?fastextra.ob OBs.


-- Main.okuhn - 19 Dec 2006
Topic revision: r8 - 01 Aug 2012, KelleeSummers
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback