Judy Cohen, Patrick Shopbell, and Douglas Clowe
October 1997

Contents

Quick Overview

AUTOSLIT is a program designed to compute the slit positions for the slit mask of the LRIS spectrograph. AUTOSLIT is based upon AUTOFID2, a similar program for the NORRIS spectrograph, by Alain Picard and John Cromer. AUTOSLIT3 is a complete rewrite of earlier versions of AUTOSLIT carried out to incorporate the additional flexibility in designing slitmasks to be produced by a numerically controlled mill, to improve the astrometric model, and to add other desirable new features.

Earlier versions supported the numerically controlled punch to fabricate multi-slit masks for LRIS; AUTOSLIT3 supports only the mill and allows LRIS observers to take full advantage of its many new capabilities in designing slit-masks.

Some basic feature are:

Using AUTOSLIT

AUTOSLIT3 requires the PGPLOT graphics subroutine library. Also a Postscript printer is required to print the hardcopy output.

AUTOSLIT3 is inherently interactive. The orientation of the interactive display corresponds to the normal astronomical convention of N up and E left (for position angle 0 degrees). (The orientation has been changed from that of earlier versions.)

AUTOSLIT3 Parameters

AUTOSLIT3 requires several user parameters to be defined at the beginning of each run. A complete list of the currently supported parameters is given below.

The position angle is the angle between the LRIS slit and the North direction, measured using the usual astronomical convention that a positive angle corresponds to a slit which is oriented more towards the East, and 0 degrees position angle corresponds to the slit aligned with the North direction.

A 150 g/mm grating has been received for use with LRIS. This ruling is sufficiently coarse that the full width of a spectrum only covers part of the width of the LRIS detector. Hence one will be able to observe with 2 ranks of multislits along the length of the LRIS slit, thus doubling the effective slit length for objects where low dispersion is acceptable. When this grating is tested and becomes available the necessary code for dual rank operation (which is effectively only the overlap rejection algorithm) will be added to AUTOSLIT3. At the present time, only single ranks of multi-slits are supported.

The list of accepted parameters is given below:

FILENAME (Character)
The input file containing the LRIS field objects.
FILEOUT (Character)
Output file. The root file name for the output files. If you enter abcdef.file1 here, the output files will be abcdef.file1, abcdef.file2, and abcdef.file3, while the Postscript hardcopy will be in abcdef.ps.
PRIORITY (Numeric)
Limiting priority for object plots. Objects with higher priority than this value are plotted with a different symbol.
RANK_TOP [1|2]
number of slit ranks in top half (Only RANK=1 is supported at present.)
RANK_BOT [1|2]
number of slit ranks in bottom half (Only RANK=1 is supported at present.)
WSLIT (real)
Width of slits in arc-sec (SLIT_WID is also accepted)
SLIT_LEN (real)
Minimum slit length in arc-sec.
SLIT_SEP (real)
Minimum slit separation in arc-sec.
EPOCH (real)
Epoch for slitmask use.
TEMP (real)
Temperature of atmosphere, in degrees Celsius (Used in refraction calculation)
PRESS (real)
Pressure of the atmosphere in mm of Hg. (Used in refraction calculation)
WAVE (real)
Wavelength of light to use in atmospheric refraction computations.
LAT (real)
Latitude of the observatory in decimal degrees.
POS_ANGL (real)
Position angle in decimal degrees
HOUR_ANG (real)
Hour angle at which you expect to use this slitmask in decimal hours. (Used in refraction computations.)
MIRROR (object)
Allows use of the pickoff mirror that can be mounted on the slitmask frame for guiding. The object whose identification is entered on this line is centered on the pickoff mirror.
ENG_TEST (boolean)
Set up for astrometric engineering tests. Regular LRIS observers should never use this feature !
ADC (boolean)
Prepare masks using a scale value appropriate for use of the atmospheric dispersion corrector. This parameter defaults to TRUE, since the ADC is expected to be used for all LRIS observations after June, 2007.
INTERACT (boolean)
Allows for interactive slitmask assignments (This should almost always be used.)
VERBOSE (boolean)
Give a more verbose screen output. The hardcopy plots and the output files themselves are unaffected.

For the values of the boolean keywords, any string beginning with one of the letters [tyTY] denotes true/yes, while any string beginning with one of the letters [fnFN] denotes false/no.

To produce your parameter file, edit the template file given in Appendix C and in the examples sub-directory. In the parameter file, lines beginning with the symbol # are ignored.

The default values for these parameters are listed below and are also in the autoslit.inc include file. If you do not set the value for a particular parameter, the parameter will revert to the default value. The default values for the appropriate set of parameters (air pressure, latitude, temperature, etc) are those characteristic of the Keck Observatory.

Parameter Keyword Default Value
input parameters and special slits file [none] "autoslit.in"
input file of objects FILENAME "autoslit.obj"
primary output file FILEOUT "autoslit.file1"
priority for plot symbol change PRIORITY 700
rank of top half of slit (1 or 2) RANK_TOP 1
rank of bottom half of slit (1 or 2) RANK_BOT 1
width of slit [arc-sec] WSLIT (or SLIT_WID) 1.0
minimum slit length (arc-sec) SLIT_LEN 5.0
minimum slit separation (arc-sec) SLIT_SEP 2.757
engineering slit width [none] 1.0
epoch of use EPOCH "today"
temperature TEMP 0.0
air pressure at Keck PRESS 486.0
wavelength for refraction WAVE 6000.0
latitude of Keck LAT 19.828
position angle POS_ANGL 0.0
hour angle HOUR_ANG 0.0
use small pickoff mirror? MIRROR false
is this an engineering test? ENG_TEST false
atmos dispersion corrector in use? ADC true
interactive slit selection? INTERACT true
verbose output? VERBOSE false
suffix for outfile2 [none] "file2"
suffix for outfile3 [none] "file3"
interactive plotting device [none] "/xwin"
hardcopy plotting device [none] "/vps"

(Both the /xwin and /xdisp PGPLOT options for the interactive plotting device should work for Unix (Sun) workstations. The xdisp driver has the advantage that the display window does not disappear when the program terminates.)

The Interactive Display

While AUTOSLIT3 will assign the objects in your list to slitlets in the slitmask on the basis of priorities and object locations, one usually needs to tune up the slit assignments using the INTERACTIVE mode. In particular, that way you can make sure the slits are placed on objects as close as possible to the center of the frame in X, so that the spectra will all cover approximately the same wavelength region. With 2048 pixels in X within which the spectrum must fall, this is much less critical than if we were using a smaller CCD with the LRIS. Remember that the spectral coverage for an object way at the edge of the field in X will be quite different from that of an object near the center of the field.

In the INTERACTIVE mode, several new features have been incorporated into the menu in AUTOSLIT3. The most useful new keys are M (mark the location of an object), C (move the field center), and P (specify the position angle).

The keys currently recognized are listed below. The key must be hit when the mouse is within the boundaries of the plot of the setup.

Key Function
I get info about an object
O try to assign a slit to an object
B try to assign a box slit of the default size to an object
D remove a slit assignment
W wipeout all normal slits assigned
Z wipeout all slits (including special slits)
R redraw the plot
L list objects in slits
M mark the location of a specific object on your object list*
(space-bar) to get the (X,Y) coordinates on the mask (in mm) for a point
C specify a (relative) offset in arc-sec of the field center
P specify the field position angle
Q exit this routine

*The "Mark" option is case sensitive; i.e., "A3" is not the same as "a3".

Typing any other letter key produces the list above.

Slit Widths Supported

With the replacement of the numerically controlled punch originally used to fabricate LRIS slitmasks by a numerically controlled mill, the width of the slitlets is no longer restricted by the width of the available punches. Any slit width is now allowed, with a minimum value determined by the width of the end mills available at Keck.

CARA will use 0.020 inch (0.7 arc-sec) as their normal tool bit size. Smaller tool bits (0.015 in, or 0.53 arc-sec) are available, but may not be supported initially.

All the slits, with the exception of boxes and certain special slits, must have the same slit width.

Do not use slits smaller than 0.7 arc-sec wide without prior consultation with CARA staff.

The Special Slits

AUTOSLIT3 enables the use of four non-standard slit types: tilted slits, arc slits, line segment slits, and boxes. These slits are defined in the second section of the input parameter file. Definition blocks are structured as follows:

  1. tilted slits
      TILTS  <int>
      <object>  <pos angle>  <min up>  <min down>
      <object>  <pos angle>  <min up>  <min down>
      ...

    The first line specifies the number of tilted slits to be defined. Each subsequent line defines one tilted slit. Each slit is defined by the name of the object on which the slit will be placed (from the input object file), the position angle of the slit, and the minimum extent of the slit in arc-seconds, above and below the position of the object.

    Tilted slits are tied to positions on the sky and hence will rotate appropriately when the slitmask position angle is changed.

    A simple program to calculate the position angle and other information for tilted slits is available (tilted_slit.f) and should be used prior to running AUTOSLIT3 to help the user create the appropriate input file entries for tilted slits.

    Tilted slits could in principle tilt off the area of the LRIS slitmask. AUTOSLIT3 does not check for this.

  2. arc slits
      ARCS  <int>
      <name>  <ra>  <dec>  <epoch>  <radius>  <PA start>  <PA end>
      <name>  <ra>  <dec>  <epoch>  <radius>  <PA start>  <PA end>
      ...

    The first line specifies the number of arc slits to be defined. Each subsequent line defines one arc slit. Each slit is defined by a name (arc slits need not be placed on objects), the position of the center of curvature of the arc, the epoch of the center position coordinates, the radius of curvature in arc-sec, and the position angle with respect to the center of curvature at which the arc segment begins and at which it ends. The RA and Dec of the center should each be defined by three numbers (hours|degrees, minutes, seconds), separated by whitespace. Arc slits are calculated as a set of line segments 0.5 mm apart along the arc.

    Arcs, unlike normal slits, are not lengthened during the process of filling out the mask once the objects on it have been selected. You must make sure to add some length to allow for the sky spectrum etc.

    PLEASE BE SURE TO CHECK the layout of all special slits, and especially all arcs, in the interactive display carefully and adjust the parameters as required.

    Non-vertical special slits (i.e. all special slits except boxes) are always defined to have the specified width along the dispersion. Recall that the end mill used has a finite width. The minimum width across the slit goes as (slit-width along the dispersion)*cos(angle) As the special slit becomes closer to horizontal than to vertical, this can become smaller than the width of the tool. In such a case, the mill control program will reject that slit.

    In general one is safe with 1 arc-sec wide slits whose tilt from vertical is not more than 30 deg. For narrow slit widths or in case there is any doubt, send the mill file to Hawaii sufficiently in advance for a check of the file to be made there on the computer that operates the mill, so that the special slit can be redesigned if necessary.

  3. line segment slits
    These allow you to design your own complex shaped slit.
      SEGMENTS  <int>
      <name1>  <ra>  <dec>  <epoch>
      <name1>  <ra>  <dec>  <epoch>
      <name1>  <ra>  <dec>  <epoch>
      <name2>  <ra>  <dec>  <epoch>
      <name2>  <ra>  <dec>  <epoch>
      <name2>  <ra>  <dec>  <epoch>
      <name2>  <ra>  <dec>  <epoch>
      ...

    The first line specifies the number of points to be defined for line segment slits. Each subsequent line defines one point in a line segment slit. Each point is defined by the name of the line segment slit (line segment slits are not placed on objects), the position of the point, and the epoch of the position coordinates. All consecutive line segment points which share the same slit name will be connected to form a single slit. For example, the above declaration would create two slits, one with 3 points (name1), and another with 4 points (name2). See the file Examples/test.in for more examples. Note that the value on the first line of the block indicates the number of points in the line segment slits, not the number of slits.

  4. box slits
    These are used to put bright guide stars into a mask.
      BOXES  <int>
      <object>  <size>
      <object>  <size>
      ...

    The first line specifies the number of box slits to be defined. Each subsequent line defines one box slit. Each slit is defined by the name of the object on which the slit will be placed (from the input object file), and the size of the box, in arc-seconds.

    Boxes are always squares aligned along the X,Y axes of the multislit mask. They are not tied to the sky and hence do not rotate when the position angle of the slitmask is altered.

    Boxes are allowed to interfere with other boxes, i.e. to have the same position along the height of the slit.

    The "masks" module of the slitmask alignment program will properly handle boxes, at least up to 4 arc-sec on a side.

The order of the slit definition blocks does not matter. Multiple definition blocks are also allowed, i.e., two sets of arc slits. The only requirement is that the number of slit definition lines in any given block must match the number given on the declaration line, i.e., 'ARCS 4' must be followed by 4 arc slit definitions.

An Example of a Parameter/Special Slit file

AUTOSLIT3 will prompt you for the name of the parameter/special slit file. This file consists of two sections, with a structure as follows:

  <keyword>  <value>
  <keyword>  <value>
  ...
  END

  <special slit definition block>
  <special slit definition block>
  ...
  END

All words are case-insensitive, and spacing is not important. An example of a parameter/special slit file is given in Appendix C.

The Pickoff Mirror

The use of a small pickoff mirror mounted on the slit mask support bar for slitmask guiding was developed by Sandy Faber and the Lick group. AUTOSLIT3 now supports this option. This has been accomplished within the context of the existing AUTOSLIT code by removing the option for choosing guide stars to be used with the offset guider available in older versions of AUTOSLIT and assigning the guide star position to the center of the location of the pickoff mirror as specified by Lick personnel.

The location of the pickoff mirror is indicated by a red box in the interactive plot and is also shown in the hardcopy output. To remind the mountain personnel to install a pickoff mirror on such a slitmask, a small circle is also milled in the actual slit mask at the location of pickoff mirror.

Since the pickoff mirror itself represents an occultation of the field, but not light transmitted into the spectrograph, you are allowed to choose any object outside the area occulted by pickoff mirror but within the same section of the length of the slit of the multislit mask for inclusion in a slit.

The Object List File

As in earlier versions of AUTOSLIT, AUTOSLIT3 requires a file containing the list of objects which you would like to consider for inclusion in a multi-slit mask. This file, whose format has not changed, must contain one-line descriptions of each object of interest in the field, in a format identical to that originally used for Palomar Observatory's Norris spectrograph. This format is described in more detail in the file GET_OBJ.C, but is summarized as follows:

Each object description line consists of:

  <name> <prior> <mag> <ra> <dec> <epoch> <equinox> <ra_pm> <dec_pm>
where
  <name>    = object identifier (or name)
  <prior>   = object priority as assigned by the observer
  <mag>     = object magnitude
  <ra>      = object right ascension: <hours> <minutes> <seconds>
  <dec>     = object declination: <degrees> <minutes> <seconds>
  <epoch>   = epoch of the object's coordinates
  <equinox> = object equinox
  <ra_pm>   = object proper motion in right ascension in arcsec/yr
  <dec_pm>  = object proper motion in declination in arcsec/yr

Note that the equinox specified here is used to precess the coordinates to the time when the mask will be used (i.e. ``today''). In earlier versions of AUTOSLIT, the epoch field was incorrectly used for that purpose.

Although the order of the fields is important, spacing between the fields does not matter.

The lines may be given in any order, *except* the first line, which should have a priority of '9999' and should provide the coordinates of the center of the field of interest.

An example of an object input file is given in Appendix D.

Priorities and Object Assignments

The allocation algorithm assigns all the special slits first. They are assigned internal priorities with default values of 2100 for tilted slits, 2200 for arcs, 2300 for line segments, and 2400 for boxes. Do not assign priorities in excess of 2000 to objects on your normal slitmask list.

A conflict is equivalent to an overlap along the length of the slit (i.e. the Y direction) between two objects. This applies to the actual position (plus or minus any specified height for the special objects) and plus or minus the minimum object separation (defined in autoslit.inc).

You will be informed if there is a conflict among the special slits you have specified. After that, if you are using the INTERACTIVE mode, you may choose the rest of the objects in your slit-mask. If there is a conflict, AUTOSLIT3 will refuse to make the requested assignment.

If there are multiple special slits of a given category, they are prioritized within each category, with the first tilted slit having higher priority than the second one, etc. The base priority for each type of special slit is given in the include file autoslit.inc.

The Bar in the Slit-Masks

The slit-mask plates are restrained in their holders (and slightly curved to fit better the telescope focal plane, see the LRIS Manual of Operations) by a bar which runs in the dispersion direction along the middle of the mask. The bar is opaque.

The location of this bar in the LRIS entrance aperture is shown in the interactive plot. The bar, which is about 9.5 arc-sec high, will run along the centerline in X of the CCD detector in the focal plane of LRIS at Y = 1024 pixels when the LRIS optics are properly aligned (see Appendix F).

At present (Sep. 1997), the LRIS optics are properly aligned, but there is no guarantee that this will hold in the future, and the location of the image of the bar in the LRIS focal plane may change whenever the instrument is realigned or recollimated.

Checking the Slit-Masks

It may be desirable to check the mask before it is inserted into the spectrograph and used. A program has been written for this purpose called "check_mask3". This program, which requires the PGPLOT subroutine library, is installed in the Autoslit3 directory. It takes the output file from Autoslit3 that is sent to the milling machine and produces a Postscript file which contains a full size image of the multi-slit mask. The postscript file is called "pgplot.ps" and can be printed on any Postscript printer.

Since the mask is large, the image is on two sheets of standard size paper, for the top and bottom of the mask respectively.

This program is self explanatory and very easy to use.

Astrometry

Two astrometric models are used in AUTOSLIT3. The first and most critical is the model that relates the position of an object on the sky (RA, Dec) into position on the slitmask. The baseline model, adopted before LRIS was completed from the details of the instrument and telescope design, was that of a fixed telescope focal plane scale of 0.7253 mm/arc-sec projected onto a bent slitmask. (See the the LRIS Manual of Operations for details.)

Once LRIS was in use at the telescope this initial model was found to be inadequate and was refined by adding a small "touchup fix". The latest version of the "touchup fix" (August 1997) is used in AUTOSLIT3.

A detailed discussion of the procedures, measurements and analysis for determining this is given in the following LRIS reports:

It should be noted that only a major change to the instrument might affect the values of the parameters used in this aspect of the astrometric model for LRIS.

In addition, AUTOSLIT3 predicts the (X,Y) positions of objects on the focal plane CCD detector in pixels as an aid for slitmask alignment. The astrometric model for this has been developed in a series of reports on the LRIS spatial distortion. The latest of these is:

The specific X,Y (CCD) predictions in Autoslit3 use this model for the new LRIS Dewar. It should be noted that if changes are made to the LRIS optics or mechanical mountings (new Dewar, recollimation, re-alignment, etc.) the predicted X,Y(CCD pixels) may no longer be sufficiently accurate and new parameters for the fits in this model may be required.

To facilitate updating the code, should a more complex and more accurate astrometric model become available in the future, the corrections from the baseline model are implemented only in the output file containing the positions for the numerically controlled mill that fabricates the LRIS slitmasks. Thus the X,Y (mm) positions in the slitmask in the output files intended for the user are slightly different from those in the file used to fabricate the slitmask.

The two astrometry models are isolated within two subroutines, ccd_coord_predict and slit_astrometry. Updating the astrometric model just requires updating one or both of these subroutines.

Coordinate Systems

The LRIS coordinate system is defined in the LRIS Manual of Operation. The origin is the optical axis, and the X axis goes through the center of the LRIS entrance field. In this coordinate system, the slitmask covers the region X = 174 to 436 mm, and Y = -174 to 174 mm. Thus in this coordinate system, the center of the slitmask is at X = 305.0 and Y = 0.0 mm.

The slitmask punch originally used to fabricate LRIS slitmasks has an internal coordinate system whose origin is at X = 412.95, Y = 167.8 mm. Its Y coordinate axis is opposite to that of the LRIS coordinate system (i.e. 180 degrees off). The X coordinates are in the same direction for both frames, there is just an offset between coordinate systems.

To avoid confusion and aid in code maintenance, all calculations in AUTOSLIT3 are done in the LRIS coordinate system until the stage where the output files are written.

Coordinate Change for the Milling Machine

The milling machine uses a coordinate system which is different from the nominal LRIS coordinate system used here and from that used with the slitmask punch. In particular, X and Y must be interchanged. This is done only at the very end when the output file intended for the numerically controlled mill is written. This plot illustrates the orientation and zero points for the mill and the nominal LRIS coordinate system on the slitmask. A GIF version of this figure is in Appendix G.

The Keck mill has a very sophisticated computer control system. It is possible to preview mask design files to check whether any constraints imposed during the fabrication process for the masks are violated. In case of doubt, contact CARA staff to arrange a test of your AUTOSLIT3 mill file.

Engineering Mode

A mode is available, intended ONLY for engineering tests, which does not put in any modifications to the original baseline LRIS astrometric model, which bypasses all overlap checking, and which produces a slit-mask with a 1 x 1 arc-sec box (unless a different slit width is specified in the parameter file) around each selected object.

This can be used to produce a mask with hundreds of such boxes around objects with high quality astrometric positions, and one can use such a mask for checking the LRIS astrometric model. This mode should not be used by normal LRIS observers.

Maximum Number of Slits

AUTOSLIT3 will allow you to define up to 100 slits, except in engineering mode, where that is relaxed to 500 boxes.

Programming Considerations

All of the important parameters relating to the geometry of the LRIS spectrograph have been grouped together in an include file called autoslit.inc. This file must be located in the same directory as the source code, autoslit3.f.

If it become necessary to change the parameters of the slitmask, this can be easily done by:

The following is a list of files which must be present for autoslit to be compiled: Further, the following must be located in a "lib" subdirectory: Plus:

Also the two include files, autoslit.inc and math.inc, must be in the lib subdirectory, as well as Makefile.

A detailed list of the required files and directories is given in Appendix B.

AUTOSLIT.INC

An extract from the include file autoslit.inc that contains many of the important spectrograph definitions which might be altered by the user is given below. If one of the values is altered, the program will have to be recompiled to force Autoslit3 to use the new value.

C     Slit widths, lengths, and separations:
      REAL*4     DEF_SLIT_WID,DEF_SLIT_LEN,DEF_SLIT_SEP
      PARAMETER (DEF_SLIT_WID=1.0,              ! normal width, length,
     :           DEF_SLIT_LEN=5.0,              ! and separation of
     :           DEF_SLIT_SEP=2.757)            ! slits [arc-sec]
C     Physical constants:
      REAL*8    DEF_TEMP,DEF_PRES,DEF_WAVE,DEF_LAT,DEF_POS_ANGLE,DEF_H
      PARAMETER (DEF_TEMP=0.0D0,		! temperature
     :           DEF_PRES=486.0D0,		! air pressure at Keck
     :           DEF_WAVE=6000.0D0,		! wavelength for refraction
     :           DEF_LAT=19.828D0,		! latitude of Keck
     :           DEF_POS_ANGLE=0.0D0,		! position angle
     :           DEF_H=0.0D0)			! hour angle
C     Spectrograph:
      INTEGER*4 NORM_SLITS,ENG_SLITS
      REAL*4    PUNCH_LEN,CCD_SIDE,CCD_SCALE,
     :          XS_SLIT,YS_SLIT,
     :          X_CENTER,Y_CENTER,
     :		SCALE,MASK_ANGLE,MASK_BEND
      PARAMETER (
     :           NORM_SLITS = 100,      ! number of slits for normal use
     :           ENG_SLITS  = 500,      ! number of slits for engineering
     :		 PUNCH_LEN  = 3.0,      ! length of punch used [not used]
     :           CCD_SIDE   = 2048.0,   ! size of ccd in pixels
     :           CCD_SCALE  = 0.15767,  ! mm per pixel of ccd at slitmask
     :           XS_SLIT    = 215.9,    ! length of the x side of the slitmask
     :           YS_SLIT    = 335.6,    ! length of the y side of the slitmask
     :           X_CENTER   = 305.0,    ! center of mask in x coordinates
     :           Y_CENTER   = 0.0,      ! center of mask in y coordinates
     :		 SCALE      = 0.7253,   ! scale of mask in mm/arcsec
     :		 MASK_ANGLE = 8.06,	! angle of mask in focal plane in deg
     :		 MASK_BEND  = 1.94)     ! angle of bend in mask in deg

The mathematical parameters that were formerly in autoslit.inc, such as conversion factors from radians to arc-sec, have been moved to a new include file called math.inc.

The Hardcopy Output from AUTOSLIT3

Alignment of the slitmask at the telescope requires use of both the printed file output and a hardcopy of the graphics output from Autoslit. The hard copy device for AUTOSLIT3 is a Postscript printer in the portrait (vertical) mode.

Four graphs are produced in hardcopy. The first is labeled "Mask Layout.....". It contains a view of the slit mask as seen from above. The two arrows on the periphery of the frame denote the locating notches for inserting the frame into the LRIS slit mask holders and for locating the plate on the slit mask machine table. There is also an arrow indicating north and east. The frame displays all the objects in the field, and indicates where the assigned slits are. You can use this frame to check that the slit-mask has been made correctly.

The second file is labeled "Seen on CCD:...". This file shows the mask as seen by the LRIS optics and CCD camera. There is an inversion in x from the first output plot, as shown by the pair of arrows indicating north and east. Otherwise this plot is identical to the first plot.

The third plot is also labeled "Seen on CCD:...". It is identical to the second plot, but for each assigned slit, on the left side of the frame is given the (x,y) coordinates of the object in the slit in the LRIS coordinate system, while on the right side of the field are given the object name and magnitude, all at the appropriate y height for the object. This plot is extremely useful in working on the LRIS multi-slit alignment procedure and you must have a copy of it for each multi-slit you plan to use.

The final plot is also labeled "Seen on CCD...". It displays only the objects that are selected to be in slits. The full length of the slit is shown. The objects are labeled with their names and their magnitudes.

For each plot, the location of the notches that define the placement of the slitmask in the milling machine and in the slitmask holder re indicated by small arrows.

If the pickoff mirror is used, the location of the pickoff mirror is indicated on the interactive display and on the hardcopy plots.

Other useful files

README contains a more detailed description of compiling this program

TECHDOC contains a 1 sentence listing for each subroutine indicating its function.

Comments and Suggestions:

Comments, suggestions, reports of bugs, etc. should be directed to J.Cohen, at least until the shakedown period for this completely new version of AUTOSLIT is over and CARA becomes responsible for its maintenance.

Judith Cohen
jlc@astro.caltech.edu

Appendices

Appendix A: ftp and compile instructions

The source code, a compiled version, and the help files can be obtained via anonymous ftp from this URL.

There is also a WWW page available at this URL.

Compiling instructions are given in the file README.

Appendix B: List of required files

In the main directory, autoslit3.f, autoslit.inc, math.inc, autoslit3.doc, README, TECHDOC, and the Makefile. Also the coordinate system layout figure, mill_coords.eps. (Other useful codes include tilted_slit.f and check_mask3.f.)

In the lib subdirectory, the following Fortran files:

and the following c files:

the Makefile and the two include files (autoslit.inc and math.inc), which are just links to those in the top level directory.

In the examples subdirectory:

in the bin directory (or wherever you choose)

(The binaries/ subdirectory on the web site contains compiled versions of Autoslit3 that works for SunOS and Solaris machines.)

Appendix C: Example of a parameter/special slit file

Two examples are given. In the first, the grid test case, there are no special slits, while in the second test case there are several arcs and tilted slits.

Grid test case parameter file

 # Header comment
FILENAME	grid.objs
FILEOUT		grid.file1

Priority	750
Press		455.5
#Mirror   	x0y0
Pos_Angl        90
WSlit		1.0
Interact 	True
Verbose		No
# Eng_Test	True
#
# several comments together
# ....
#
END

Arc/tilted slit test parameter file

 
# Header comment
FILENAME	test.objs
FILEOUT		test.file1

Priority	750
Press		455.5
#Mirror 	1-73
Pos_Angl	0
WSlit		1.0
ADC		False
Interact 	True
Verbose		No
# Eng_Test	True
#
# several comments together
# ....
#
END


# Special slits:
Tilts 3
Y	45	5	5
# 1-31	10	20	30
1-85	115	8	2
CF10	-25	4	12

Arcs 3
arc1	19 51 29.45   18 40  1.00  1950.0	25	0	180
# arc2	19 51 26.63   18 37 19.00  1950.0	10	-45	45
arc3	19 51 37.69   18 37 21.80  1950.0	15	-105	-10
arc4	19 51 34.11   18 38 50.30  1950.0	20	135	-135
END

Appendix D: Example of an object input file

The beginning of the object list file for the grid test case is given below. The object input file for the arc/tilted slit case is similar, but longer, and is given in its entirety in the examples directory. The object input file has the format: name, priority, magnitude, RA, Dec, epoch, equinox, and proper motion. The equinox field is now used for precession, correcting an earlier error of using the epoch field, so make sure that the equinox field is filled in appropriately.

(60)%% more grid.objs
 CENTER     9999   0.00   15 10 33.00   12 15 30.00  2000.0  2000.0  0.0  0.0
x0y0         700  20.00   15 10 33.00   12 15 30.00  2000.0  2000.0  0.0  0.0
x10y0        700  20.00   15 10 33.682  12 15 30.00  2000.0  2000.0  0.0  0.0
x0y10        700  20.00   15 10 33.00   12 15 40.00  2000.0  2000.0  0.0  0.0
x10y10       700  20.00   15 10 33.682  12 15 40.00  2000.0  2000.0  0.0  0.0
x-10y0       700  20.00   15 10 32.318  12 15 30.00  2000.0  2000.0  0.0  0.0
x-10y10      700  20.00   15 10 32.318  12 15 40.00  2000.0  2000.0  0.0  0.0
x0y-10       700  20.00   15 10 33.00   12 15 20.00  2000.0  2000.0  0.0  0.0
x10y-10      700  20.00   15 10 33.682  12 15 20.00  2000.0  2000.0  0.0  0.0
x-10y-10     700  20.00   15 10 32.318  12 15 20.00  2000.0  2000.0  0.0  0.0
x30y0        700  20.00   15 10 35.047  12 15 30.00  2000.0  2000.0  0.0  0.0
x0y30        700  20.00   15 10 33.00   12 16 00.00  2000.0  2000.0  0.0  0.0
x-30y0       700  20.00   15 10 30.953  12 15 30.00  2000.0  2000.0  0.0  0.0

Appendix E: Example of output files

Sample output files for the first two output files from Autoslit3 are given. The first gives the details of the normal and special slits assigned in the slitmask. This file is useful for slitmask alignment purposes. The second is the file that list the X,Y coordinates of all the objects in the input list. Only the beginning of this file is shown.

(62)%% more test.file1
 
#                                               #
#  ****       AUTOSLIT  3.0 OUTPUT        ****  #
#  ****     Mon Oct 20 13:09:26 1997      ****  #
#                                               #
#                                               #
#  ===========================================  #
#              Autoslit Parameters              #
#  -------------------------------------------  #
#                                               #
#  Files:                                       #
#  -------------------------------------------  #
#  Input object file:              test1.objs   #
#  Output listing file:            test1.file1  #
#  Output stage coordinate file:   test1.file2  #
#  Output file for the punch/mill: test1.file3  #
#  -------------------------------------------  #
#                                               #
#  Physical parameters:     [default]  [input]  #
#  -------------------------------------------  #
#  Temperature [C]:              0.0       0.0  #
#  Air pressure [mm of Hg]:    486.0     198.0  #
#  Latitude:                   19.83     19.83  #
#  Wavelength [A]:            6000.0    6000.0  #
#  Position angle:              0.00     45.00  #
#  Hour angle:                  0.00      0.00  #
#  Epoch:                     [today]  1997.81  #
#  Slit width [arc-sec]:        1.00      3.00  #
#  Slit length [arc-sec]:       5.00      5.00  #
#  Slit separation [arc-sec]:   2.76      2.76  #
#  -------------------------------------------  #
#                                               #
#  Slit layout parameters:                      #
#  -------------------------------------------  #
#  Top half of mask:    *single* rank of slits  #
#  Bottom half of mask: *single* rank of slits  #
#  Special plot symbols have priority  >   750  #
#  Slit selection:                 interactive  #
#  Pickoff mirror in use:                 TRUE  #
#  Engineering run:                      FALSE  #
#  -------------------------------------------  #
#                                               #
#  Slit inventory:           assigned/declared  #
#  -------------------------------------------  #
#  Number of standard slits:                24  #
#  Number of boxes:                       0/ 0  #
#  Number of tilted slits:                2/ 2  #
#  Number of arc slits:                   1/ 3  #
#  Number of line segment slits:          0/ 0  #
#  ===========================================  #
#                                               #
#  ===========================================  #
#              Guide Star Identity              #
#  -------------------------------------------  #
#  Guide star is STAR #    6                    #
#  1-73                                         #
#  At X =  258.7 Y =  -16.0                     #
#  ===========================================  #
#                                               #
#  ===========================================  #
#                Center of Field                #
#  -------------------------------------------  #
#  Center of Field is:                          #
#  RA  =   19h   53m  40.967s    [1997.81]      #
#  DEC =   18d   46m  14.735s                   #
#  ===========================================  #
#                                               #
#  ===========================================  #
#                   Slit Setup                  #
#  -------------------------------------------  #

#  X_STAR    Y_STAR       MIN_Y       MAX_Y    Percent   CCD_X   CCD_Y Prior  
    Name           Mag  #
  101.96133 156.86742   171.37343   156.86742 100.0000  1004.2  1100.9  2200 
    arc4             0.000
   80.51526 275.03802   279.50546   270.65359  50.4690   864.3   330.5  2101
    Y               13.870
  205.17894  96.66530   101.45148    94.41214  67.9919  1670.5  1495.2  2100
    CF10            13.640
  119.93607 138.65129   142.40982   123.86235  20.2643  1119.7  1219.6   900 
   1-40             14.690
  201.25655 209.66850   212.99808   207.74945  63.4371  1644.5   755.3   900
   1-77            12.650
#  ===========================================  #

The X_STAR, Y_STAR, MIN_Y, and MAX_Y are given in mm in slitmask coordinates. The slits start off being 4 arc-sec (2.9 mm in length), unless a different value is specified in SLIT_LEN. After object selection is completed, the slits are then increased to their maximum length consistent with a minimum separation of SLIT_SEP arc-sec (with a default value of 2 mm = 2.8 arc-sec) to give the maximum possible length for the night sky spectrum at the ends of each slit.

The Percent is the ratio of (Y_STAR - MIN_Y)/(MAX_Y - MIN_Y) for each slit. Those slits with the Percentage less than 10 or more than 90 may have the stars too close to the edge of the slit for good spectra. The CCD_X and CCD_Y are the pixels of the CCD in which the object is predicted to appear.

The centerfield coordinates in this file include corrections for precession to the current epoch but not for atmospheric refraction. Thus these centerfield coordinates can now be used as input to the Keck Telescope drive and control system (DCS) for pointing the telescope.

(63)%% more test.file2
 
   ****       AUTOSLIT  3.0 OUTPUT        ****
   ****     Mon Oct 20 13:08:48 1997      ****
 
                                                 
   ===========================================   
               Autoslit Parameters               
   -------------------------------------------   
                                                 
   Files:                                        
   -------------------------------------------   
   Input object file:              test1.objs    
   Output listing file:            test1.file1   
   Output stage coordinate file:   test1.file2   
   Output file for the punch/mill: test1.file3   
   -------------------------------------------   
                                                 
   Physical parameters:     [default]  [input]   
   -------------------------------------------   
   Temperature [C]:              0.0       0.0   
   Air pressure [mm of Hg]:    486.0     198.0   
   Latitude:                   19.83     19.83   
   Wavelength [A]:            6000.0    6000.0   
   Position angle:              0.00     45.00   
   Hour angle:                  0.00      0.00   
   Epoch:                     [today]  1997.81   
   Slit width [arc-sec]:        1.00      3.00   
   Slit length [arc-sec]:       5.00      5.00   
   Slit separation [arc-sec]:   2.76      2.76   
   -------------------------------------------   
                                                 
   Slit layout parameters:                       
   -------------------------------------------   
   Top half of mask:    *single* rank of slits   
   Bottom half of mask: *single* rank of slits   
   Special plot symbols have priority  >   750   
   Slit selection:                 interactive   
   Pickoff mirror in use:                 TRUE   
   Engineering run:                      FALSE   
   -------------------------------------------   
                                                 
   Slit inventory:           assigned/declared   
   -------------------------------------------   
   Number of boxes:                       0/ 0   
   Number of tilted slits:                0/ 2   
   Number of arc slits:                   0/ 3   
   Number of line segment slits:          0/ 0   
   ===========================================   
 
   ===========================================
               Guide Star Identity
   -------------------------------------------
 Guide star is STAR #   6
  1-73        900  14.79   19 51 28.72   ...
 ===========================================
 
 
   ===========================================
                Objects in Field
   -------------------------------------------
    Name                Mag        X       Y
   -------------------------------------------
   Y                   13.87    332.43 -107.24
   CF10                13.64    207.77   71.13
   1-73                14.79    258.70  -16.00
   T,CF11              12.20    202.67   80.06
   A4                  12.20    348.69   51.02
   1-46                12.29    294.85   78.73
   ===========================================

The X and Y coordinates here are given in mm in the official LRIS coordinate system, which has X going from 174 to 436, and Y from -174 to 174 mm.

The file intended for the mill has the same header structure, which the mill control computer ignores. This is followed by a set of blocks which resemble the one given below, which defines a normal slit. This contains the X,Y,Z coordinates of the 4 corners that define the slit (Z = 0 always), together with a fifth corner which repeats the first one to form a closed rectangle.

newrow
  174.300003  129.618027    0.000000
  164.287582  129.618027    0.000000
  164.287582  128.892746    0.000000
  174.300003  128.892746    0.000000
  174.300003  129.618027    0.000000
newrow

Appendix F: Alignment of Gratings and Mirror in LRIS

In tests carried out in April 1997 with the slitmask alignment test hole pattern of drawing 108811A, the support bar of the slitmask frame falls at the following Y(CCD, pixels) location in the LRIS focal plane CCD detector:

Grating/Mirror    Y location     Delta from Ideal 
                  (pixels)       (Y=1024 pixels)
Mirror           1090           +66
300/5000         1033            +9
600/5000         1003           -21
600/7500         1015            -9
1200/7500         999           -25

The LRIS optics were realigned in August 1997 to correct the pointing of this mirror. Hence the value adopted for AUTOSLIT3 is (mirror - grating) = 0 pixels in Y (as of August 1997).

The LRIS pointing origin was also redefined so as to point at the center of the mask in August 1997. Furthermore, the zero point of the Keck 2 Cass instrument rotator was adjusted at that time based on tests with star trails to determine the correct value. See Tom Bida of CARA for details.

Appendix G: Layout of the Mill Coordinate System

Mill Coordinate Systems