ComCam Master Bias Generation Procedure¶
Overview¶
This procedure describes how to call scripts to produce a master bias for LSSTComCam from the LSST Operations and Visualization Enviroment (LOVE) at the Summit operational environment.
The script will:
- command LSSTComCam to take a number of bias frames,
- call the Rubin Science Pipelines bias generation pipetask via the OCS-Controlled Pipeline System (OCPS),
- certify the resulting bias with a given range of validity dates.
Future versions of the code will also:
- verify the resulting bias (see the package cp_verify and DMTN-101), between bias generation and certification.
For more information about calibrations production (including verification and certification), please consult the Constructing Calibrations documentation.
Prerequisites¶
- You should be logged into the LSST Operations and Visualization Enviroment (LOVE) at the Summit operational environment.
- The script assumes (and checks) that
LSSTComCam
andOCPS
components are allENABLED
, and that latter has beenENABLED
with the configuration ofLSSTComCam
. The instrument and theOCPS
can be enabled, for example, from a notebook:
import asyncio
from lsst.ts import salobj
from lsst.ts.observatory.control.maintel.comcam import ComCam
do_enable_camera = True
do_enable_ocps = True
domain = salobj.Domain()
comcam = ComCam(domain)
ocps = salobj.Remote(domain, "OCPS")
await asyncio.gather(comcam.start_task, ocps.start_task)
if do_enable_camera:
await comcam.enable()
if do_enable_ocps:
instrument="LSSTComCam"
ack = await ocps.cmd_start.set_start(settingsToApply=instrument)
if ack.ack != salobj.SalRetCode.CMD_COMPLETE:
ack.print_vars()
ack = await ocps.cmd_enable.set_start()
if ack.ack != salobj.SalRetCode.CMD_COMPLETE:
ack.print_vars()
Post-Condition¶
- A (daily) master bias image per detector will be certified in butler
CALIBRATION
collection.
Procedure Steps¶
Once you are logged into LOVE, click on the MTQueue
panel, as circled on the right side of the figure below (for completeness, ATQueue
to lauch LATISS
scripts is circled on the left):
Load the Script¶
After clicking on the MTQueue
panel, search for the script maintel/make_comcam_bias.py
under AVAILABLE SCRIPTS
on the left, as shown in the figure below:
Load the script by clicking on the button in front of the name of the script that has a triangle.
Enter configuration parameters¶
After loading the script, a window that contains two sections, SCHEMA
(top) and CONFIG
(bottom), will appear. The former will show the configuration options (and the default values of some of them) available that should be entered in the latter. The configuration options are as follows:
n_bias
: number of bias frames to be taken.detectors
: Detector IDs, e.g., (0,1,2,3,4,5,6,7,8) for all LSSTComCam CCDs.input_collections_bias
: List of additional (theOCPS
already addsLSSTComCam/raw/all
as a default) comma-separated input collections for the bias pipetask. The pipetask is called via theOCPS
after enabling it with theLSSTComCam
configuration.calib_collection
:CALIBRATION
collection where the calibrations will be certified into, for example,LSSTComCam/calib/u/plazas/YYYYMMMDD.test
.repo
: Butler repository. For example,/repo/LSSTComCam
.n_processes
: Number of processes that the pipetasks will use.certify_calib_begin_date
: The beginning date for the validity range of the certified calibration. For example,2021-07-15
.certify_calib_end_date
: The end date for the validity range of the certified calibration. For example,2021-07-16
.max_counter_archiver_check
: After the camera takes images, this is the maxmimum number of loops to wait for confirmation that the images taken are archived and available.oods_timeout
: Timeout value, in seconds, for the Observatory Operations Data Service (OODS
).
An example set of configuration parameters is as follows:
n_bias: 5
detectors: (0,1,2,3,4,5,6,7,8)
input_collections_bias: LSSTComCam/calib
calib_collection: LSSTComCam/calib/daily
certify_calib_begin_date: 2021-07-15
certify_calib_end_date: 2021-07-16
repo: /repo/LSSTComCam
Launch the script¶
When the configuration options have been entered and the script is ready to be launched, click on the ADD
button in the lower right of tthe screen (refer to image above).
The certified master bias will be available in the calib_collection
collection. It could be retrieved from a notebook for visualization:
import lsst.daf.butler as dB
butler = dB.Butler("/repo/LSSTComCam", collections=["LSSTComCam/calib/daily"])
detector = (0, 1, 2, 3, 4, 5, 6, 7, 8)
exposure = [bias1ID, bias2ID] # e.g., [2021071500001, 2021071500002]
bias = butler.get('bias', detector=detector[0], exposure=exposure[0], instrument='LSSTComCam')
Troubleshooting¶
After checking the configuration options and theLOVE
error messages, the file/scratch/uws/${jobId}/outs/ocps.log
might contain additional technical information on which pipetask failed, if any.{jobId}
is returned by the OCPS and can be retrieved from theLOVE
output messages.
Contact Personnel¶
This procedure was last modified on Sep 03, 2021.
This procedure was written by Andrés A. Plazas Malagón. The following are contributors: none.