This tutorial for the Interactive Data Language (IDL) was developed for
graduate students in an introductory course on astronomical techniques
at the University of Virginia. It consists of a guide to the basic
functions of IDL and a set of exercises, both oriented toward
2-dimensional image processing:
Using the exercises:
Guide to IDL for Astronomers provides background information on
IDL and an overview of many of the commands used in the exercises.
exercises illustrate the interactive computational environment of
IDL and cover some of the basic IDL commands, utilities, and
procedures, including: the use of scalars, vectors, and arrays;
plotting; making graphics hardcopies; data I/O; 2-D image displays;
and simple image processing and photometry techniques. Sample
data sets are provided.
The tutorial is intended to be self-guiding. It is not specific to
the UVa IDL installation. Although the data sets are mostly astronomical,
the exercises should be useful to the general audience of potential
You will need a reference list of standard IDL commands to consult as
you go through the exercises. Most convenient is the printed "IDL
HandiGuide". Most thorough is the "IDL Reference Guide"
(printed or PDF version). Available during any IDL session is the IDL
HyperHelp system, which you invoke by typing
as the first element of a line.
All of these exercises could be completed using intrinsic IDL
routines and the RSI-supplied User's Library. However, in some
instances the built-ins can be awkward, and I have assumed
you have access to routines from the IDL Astronomy User's Library
(AstUseLib) and the MOUSSE routines from the UIT project. These are
pre-installed on the UVa Astronomy Department server.
Other users can obtain a gzipped UNIX tar file of the Astronomy User's
Library from the AstUseLib
Homepage. Selected MOUSSE routines are available individually or
in the form of a tar file in the
To execute the MOUSSE routines, you will also need a special "startup"
mousse_startup.pro, which will be executed at the beginning of
your IDL session if you point the UNIX environment variable
$IDL_STARTUP to it.
- Remember that the source code for any IDL program except the RSI intrinsic
routines is available for you to inspect at any time. To compile
a program and simultaneously list it to your terminal, type
.run -t [name].
- To see only the informational header of
non-intrinsic routines, use the AstUseLib command man,'[name].
- Most non-intrinsic
routines are coded such that if you simply type the name of the
routine without parameters, it will return a list of the expected
- For parameter lists of intrinsic routines, give the help,/rou command.
- Further information on
getting help is available in the
Guide to IDL.
- In the exercises, most commands are given in CAPITAL letters, so they
will stand out, but since IDL is case-insensitive (except for
file names), you needn't follow this convention.
The exercises were developed for a Unix workstation. Most should work
well in other environments (e.g. Linux, MAC OS-X, Microsoft Windows),
though there may be occasional hangups with windows and such.
Please let me know of errors or difficulties you encounter with
Last modified February 2013 by Robert W. O'Connell
All contents of this Tutorial are copyright © 2000-2013
by Robert W. O'Connell.
All rights reserved.