Introduction
The main purpose of the ICS Calibration Framework (CalOb) is to provide an SDK and a tool, based on former, used for integrating the CalOb Configuration for the operations at the various ESO telescopes. Each instrument has a CalOb Configuration.
The tool is used to generate Observation Blocks, which are executed, normally at day-time, to generate the Calibration Data needed to process the Science Data and to monitor the health of the instrumnents.
The CalOb SDK can be used to implement other tools for scheduling calibrations.
The present version of the CalOb, is mostly a re-implementation of the existing VLT CalOb tool in terms of features and functionality. The existing CalOb Tool has been in use for many years at Paranal and is serving the operations well.
The new version of CalOb is implemented in Python and supports the new data formats defined e.g. for configuration files and OBs. Another major difference between the old and the new tool is that the configuration, defining the rules for scheduling the calibrations to be executed, is a Python script, which is interpreted/executed, rather than a static/text-based definition (for VLT, “PAF”).
Deliverables
The CalOb project provides six main deliverables:
CalOb SDK (Common Library): Library of classes implementing the business logic of the CalOb (The CalOb SDK).
CalOb Generator Tool: Command line utility, using the CalOb SDK to process/generate the Daily Calibration OB (CalOb Generator - Execution - Example).
Real example of a CalOb Configuration: The CalOb Configuration for an instrument. This is used for demo purposes and for the internal verification of the CalOb code (Example).
Cookiecutter Template: Cookiecutter template which is used to initiate the development of a new Calibration Configuration for an instrument (Initiating a Calibration Config Set for an Instrument).
User Manual: This document.
Doxygen Documentation: The standard Doxygen documentation, as provided for all IFW software components. Note, no specific references are made into the CalOb Doxygen online documentation. The reader is requested to navigate in this to find the appropriate information.
Scope
The scope of this manual is developers, integrating CalOb solutions for the instruments, based on the CalOb package. Furthermore for the operations personnel, using the CalOb tool on a daily basis to understand the functionality.
Disclaimer
The current version mostly a re-implementation of the existing CalOb (Tcl) tool, in use at Paranal. An additional feature may be added at a later stage, whereby QCFlow provides a service to retrieve accurate information about which calibration data is missing. This will allow CalOb to schedule exactly Calibrations needed.
The test data set provided is a hybrid between FORS2 and the upcoming FORSUP data. As soon as FORSUP starts producing real data, the data set will be updated to match the actual FORSUP configuration.
Acronyms
DB |
Database |
CALOB |
Calibration Framework |
ELT |
Extremely Large Telescope |
FITS |
Flexible Image Transportation System |
HW |
Hardware |
ICS |
Instrument Control System |
OB |
Observation Block |
SDK |
Software Development Kit |
SW |
Software |
Nomenclature
Built-In Function
|
Function used to define rules for scheduling Calibration
Observations. This category of function are provided by
CalOb.
|
Calibration Data
|
Data needed to carry out the data reduction/analysis
of the science data produced by an instrument.
|
Calibration Framework
|
The CalOb tool, used to generate the the Daily
Calibration OB for an instrument.
|
Calibration Observation(s)
|
The set of observations contained in the Daily
Calibration OB.
|
Calibration Schedule
|
Python script implemented using the CalOb SDK,
following a certain syntax, used to generate the
Daily Calibration OB.
|
CalOb Configuration (Set)
|
The set of documents to be provided for an instrument
to define the properties for scheduling Calibration
Observation (Configuration).
|
CalOb Database (DB)
|
Internal database (SQLite) used to keep track of
when the various types of Calibration Observations
have been scheduled previously.
The location on disk is defined in the Configuration File.
|
CalOb Generator
|
Command line utility, based on the CalOb SDK, which is
invoked to generate the Daily Calibration OB.
|
CalOb SDK
|
SDK providing the classes/features needed to implement
the Calibration Plan for an instrument and to execute it.
|
Configuration File
|
Contains the necessary properties for invoking the CalOb
Generator. It references the data, pertinent to the
instruments CalOb Configuration Set.
Based on the CII Configuration Service.
|
Daily Calibration OB
|
OB generated by the CalOb Framework, normally on a daily
basis, to generate the Calibration Data needed for a given
set of science data.
|
External Function(s)
|
Python functions, contained in a standard Python module,
loaded and executed by the CalOb SDK as specified in the
Calibration Plan.
|
Log Properties File
|
Log Properties File as required by the CII Logging Service
(“log4py”).
|
Science Image File(s)
|
Image FITS files, generated by the instrument during
operation.
This data is located on the local disk, in the “DATAROOT”
area.
|
Sequencer |
The ELT Sequencer Tool, used to execute OBs.
|
Static Calibration OB(s)
|
Calibration OB files, with a fixed set of parameter
values.
The Static Calibration OBs are also referred to as “OBD”.
|
Template Calibration OB(s)
|
Calibration OB files, with a variable set of parameter
values, which are resolved by the CalOb SDK, when parsing
the Calibration Plan.
The Template Calibration OBs are also referred to as “OBDX”
|