3. Slitamasks: Mask Design and Fabrication Software

3.1 Overview

DEIMOS gains a large multiplex advantage through the use of multiobject
slitmasks, allowing spectra for typically 80 objects (per barrel) to be
gathered at once. However, the masks must be designed and fabricated on
a field-by-field basis, and thus constitute a changeable component
of the spectrograph hardware, which must be "built" for each new
set of targets. The design, manufacture, handling and storage of
slitmasks is a major component of DEIMOS operations, some of which is
controlled by the astronomer and some by the Keck support staff.
The software for slitmask design and fabrication is given below. The
operational steps (fabrication through installation in the spectrograph)
are appended.

Goals

The following goals are included in the software design:

The process must be simple and quick enough to produce
masks on a timescale of a few minutes, but must also be sufficiently
flexible to accomodate specific needs of all observers.
Specific needs include user control of slit-length (above and below target),
slit position angle with respect to vertical, violation of minimum slit
length if requested by the user.

The process must incorporate features necessary to rapid mask
alignment. We adopt the procedure of alignment "boxes" centered on
suitably bright stars in the field.

The process must produce a single file per mask which can be
associated with the mask and stored for database/archival purposes.
This single file will contain information to be used for mask alignment,
for automated spectral reduction software,
and for producing "maps" of the mask layout;
ie, it will contain all necessary information about the mask.

The procedure for mask design and fabrication is based on that developed
at UCSC for LRIS observers. These elements are included:

Mask fabrication is divided into logical blocks.
These blocks are the selection of targets and appropriate slits ("mask
design");
mapping to the slitmask coordinate system; and
generating the milling instructions.

Mask design is highly interactive; all other steps are as
transparent to the user as possible.

3.2 Figures

3.3 Nomenclature

Target list refers to the list of targets for which slits appear on
a single mask, including alignment objects. For each object,
the list includes ID, RA, Dec, magnitude, priority/code, optional slit PA, and
optional slit lengths. (Priority/code is used to identify alignment
objects or to assign a relative priority to program objects for use in
automated selection algorithms.) A target list will also contain a line
for the mask RA, Dec and PA.

Mask design refers to the selection of a final target list,
and the specification of slitmask position and orientation on the sky.

Map file refers to a file which describes a slitmask. This file
includes a physical mask layout (slit locations and PAs in slitmask coordinates;
and object locations in three coordinate systems --- slitmask (in mm),
CCD (in pixels) and celestial. (Slitmask coordinates refer to a
physical coordinate system tied to the slitmask.)
A single map file is associated with a slitmask and is
used for mask fabrication, mask alignment at the telescope, automated
spectral reductions, and archiving. The map file is a text file so that it may
be edited by the user. Appended to this file are sections describing the
intended targets, for inclusion in the archival database.
(Current plans call for the locating-pin holes to be described in this
file as well.)
NB: we treat the map file here as a single entity, but in practice
the information contained in the map file will be stored in the database and
recalled as necessary.

The term astrometry will be used to refer to the mapping
celestial coordinates onto the focal plane of the telescope (ie, at the
slitmask) and onto the focal plane of the camera (ie, the detector).
Astrometry involves the mapping of the celestial sphere onto a cylindrical
slitmask surface, and is complicated by telescope distortions
(up to the telescope focus) and collimator/camera distortions between the
telescope focus and the detector.

3.4-3.5 Software Elements

Mask Design

The mask design program culls a specific target list from a
larger list of potential targets, and selects coordinates for the field
center and a position angle for the mask. It provides an approximate
layout of the slits on the mask without concern for precise astrometric
mapping (see the "mapping" next).
This software is graphical and highly interative, allowing the user to
adjust the position and orientation of the mask with respect to the targets,
add/delete targets, etc.
There will also be automated target selection options.
The input and output target lists will have identical formats
so that the program may be run iteratively, either to build up a final
target list or to modify an existing target list. All inputs and outputs
will be in celestial coordinates.
A secondary list (of lower priority objects) may be input if desired.
In addition, there will be practical checks (eg, telesope limit violations)
and a display of the
atmospheric dispersion effects relative to slit size/orientation.

HA, grating dispersion, slit width, exposure time (these are needed for
atmospheric dispersion and limit checking, but are not used for mask layout).

Output is a target list in the same format as the input list.
The program will have the mask outline (including the positions
of the locating pins) and guider field-of-view built in.

The exact list of options for this program may grow with time. Target
selection can be extended to include, for example, selecting specific
slit lengths based on magnitude, etc.

Mapping to Focal Plane

This process takes a target list and mask position/orientation,
and produces a "map file" using precise astrometric mappings. In addition,
slit lengths will be extended to use non-assigned regions of the mask, or
shortened to avoid overlap. Slit length adjustments will be reported.
The output map file will generally be sent to CARA for mask fabrication.

Inputs are:

final target list, including information specific to individual slits (PA
and minimum lengths), alignment and guide stars and locating-pin holes;

Output is a "map file" which contains a "complete" description of the slitmask.
The program will have the mask outline built in, and access to current
maps of telescope and collimator/camera distortion.

Generation of Milling Instructions

This program has minimal inputs from the user (the map file, tool diameter).
It generates the specific instructions (in AutoCad DXF format) required by the
CNC milling device. Generally this program will be run by CARA personel, but
it is provided as part of the general software for users who wish to have
masks milled elsewhere.

Miscellaneous

Software will be required to actually drive the milling machine. Such programs
are commercially available.

Software will be needed to precess coordinates and apply proper motion to
the epoch of observation, outputting a format acceptable to the mask-design
program.

Software will be provided to generate a graphical illustration of the
slitmask using the map file. Such illustrations will include target locations
(science targets, alignment and guide stars) as well as slits.
Both single-page and truescale formats will be available.

Astrometry software will be provided, using the distortion maps and
known astrometric reference stars (if any) to provide celestial coordinates
of objects on DEIMOS direct images. While errors in the absolute coordinates
may be rather large, the relative coordinates will be sufficiently
accurate to allow the construction of target lists from DEIMOS direct
images alone.

Calibrations and Internal Data Sets

The physical outline of the slitmask is required for both the mask design and
mapping programs. In addition, the outline and relevant position of the
guider field is required for the mask design program, so that suitable guide
stars may be assured to fall in good locations for the guider.

Distortion maps for the telescope (at the mask surface) and the spectrograph
(mask--to--detector) will be required by the mapping program, and perhaps
the mask design program. Telescope distortion, ie, mapping the
celestial sphere onto the mask, will be derived analytically, with empirical
corrections obtained from astrometry when the instrument is placed on the
telescope.

Spectrograph distortions can be obtained (at any time) by imaging a special
"grid-of-holes" mask. These distortions are needed to predict positions
on the CCD array for the purpose of slitmask alignment.

3.6 Existing Software and Tools

Software for mask design, mapping and mask generation have all been developed
at UCSC for LRIS. It should be relatively easy to adapt this software for
DEIMOS.

3.7 Other Resources Required

Commercial software for controlling the milling machine will be required.

3.8 Dependencies on Other Components

The mapping process requires access to current distortion maps in the database.

3.9 Outstanding Issues

Nothing major.
We need to settle on the exact nature of "slits", how to describe them and
how they will be machined. For example, can we assume all slits are
parallelograms, or should we specifically allow for arcs and circles (which
can present significant difficulties at the data-analysis stage)?
Also, how the slit-widths are entered into the description is TBD.
There are no technical difficulties here, however.

3.10 Miscellaneous

Steps to Mill a Slitmask and Enter in the Database/Library

All blank slitmask stock will be labelled with a bar code (at UCO/Lick);
the barcode and a description of the stock (eg, thickness, material,
surface finish, etc.) are entered into an inventory table in the database.
Normal operation: observer sends map files to Keck.

After milling, slitmask is inspected, checked against an illustration,
barcode-scanned, and a quality (eg. good/reject) is assigned. If the milling
was unsuccessful, the previous step is repeated.
Acceptable quality means that a mask design in the database is now
identified with a physical slitmask.

Before each run, the Instrument Specialist calls up the requested mask
designs from the database and retrieves the slitmasks for loading in the
spectrograph. At this point, reconstituted copies of the map files are
placed in the observer's account.

Outside fabrication: Some users may want to manufacture the slitmasks
elsewhere. In this case, bar-coded stock is sent to user,
and the user arrives at Keck with map files and milled slitmasks.
The steps are identical to normal operations except that no
milling takes place:

Map file information is entered in database.

The mask design is selected from the database. The slitmask barcode is
scanned, and the mask is verified against the illustration (quality "foreign"
is assigned).
The mask design in the database is now identified with a physical
slitmask.

For the run, the Instrument Specialist calls up the requested mask
designs from the database and retrieves the slitmasks for loading in the
spectrograph. At this point, reconstituted copies of the map files are
placed in the observer's account.

Slitmask Handling

A typical DEIMOS observing run may have up to 100 slitmasks or more.
There must be a temporary storage facility for the masks, designed
to insure against damaging the masks, and for which the bar code labels
are easily accessible. Some sort of carousel has been suggested.
[Long-term storage is TBD.]

There must also be a table large enough to lay out 20 slitmask
frames so that the slitmasks can be mounted.

There must be a cart with sufficient storage space for 20 mounted masks,
for transporting the masks to and from the telescope. The cart should
actually be designed with extra storage slots, so that old masks can be
unloaded and new ones loaded, while preserving some kind of physical
ordering.

There must be 4 sets of 10 frames (plus extras) -- these should be
color-coded, to make it easy to distinguish barrel 1 vs. barrel 2,
and old vs. new masks.

The standard mask handling procedure is this:

The Instrument Specialist mounts the slitmasks in their frames
and loads them (in order) in the cart.

At the telescope, the Instrument Specialist cycles through
the slitmask-changing mechanism. At each position, he/she removes
the old mask from the spectrograph, loads it in the cart, and places
the appropriate new mask into the instrument.

When all the masks are loaded, a special "initialize" script on
the instrument control interface will cycle through the slitmasks,
reading each bar code and making the necessary association between
mask "slot" and the mask design information in the database.