You are on page 1of 7

DAOPHOT Quick-start Manual

Dale C. Jackson

Last Updated: March 1, 2007

This is meant to be a quick-start reference for members of the University of Minnesota
Infrared Group who are beginners to the DAOPHOT stellar photometry package. This
should by no means be the only reading you do before using DAOPHOT. The full manual is
not that long and is well written with lots of good examples, so read it before you start and
save yourself a headache. The main goal of this document is to explain a typical run-through
of DAOPHOT and to describe problems that I’ve run into and was able to solve.
IMPORTANT: The version of DAOPHOT currently installed on our network is the first
version ever created for LINUX. As such, it is still somewhat experimental. Peter Stetson, the
author of DAOPHOT, is very good about updating the code to get rid of bugs, HOWEVER,
he can do this only if he gets feedback from users. If you find something that doesn’t work
let me know and I’ll pass it on to him. If you find a useful tip that you think should be
in the manual let me know and I’ll pass it on to him. Under no circumstances should this
version of DAOPHOT be given to others outside our group. The author likes to keep up to
date with who has what version so if something needs fixing he can let you know. IRAF and
MOPEX suck because they are not managed in this fashion. Like Smokey says, “Only you
can prevent crappy software.”

1. Before You Start DAOPHOT

Unlike our good friend MOPEX, DAOPHOT has very few parameters that need to be
set before running the software. Before you start up DAOPHOT you need to have an ‘op-
tions’ file which lists the parameters DAOPHOT needs to run. At minimum you need to
know: the read-noise of your detector, the gain of your detector, the FWHM of the sources in
your image you wish to detect, and the maximum good value a pixel can have on the image
(defined either as the value your detector goes non-linear, or saturates, depending on what
you’re doing). Create a text file (in the directory where you will be running DAOPHOT)
called ’daophot.opt’. This text file should be of the format:


GAIN = 2.49
LS = 0.30
HS = 1.40
LR = -1.00
HR = 1.00
PSF RADIUS = 12.00
If this file doesn’t exist when you start DAOPHOT, it will immediately prompt you for
the information it needs. You can run it without this file but you will need to manually set
all of these parameters, which is unwieldy.
You should also have a ’photometry’ file (called photo.opt) which tells DAOPHOT how many
and what size apertures you want. This file should be of the format:

A1 = 0.5
A2 = 1
A3 = 1.5
A4 = 2
A5 = 2.5
A6 = 3
A7 = 4
A8 = 5
A9 = 6
AA = 7
AB = 8
AC = 9
IS = 10
OS = 20

Read about what these are for in the DAOPHOT manual under the PHOTOMETRY
routine description. It’s important that you set the apertures to sample your PSF ade-
quately, since it is these settings which will determine how accurate the model PSF created
for your image is.

2. Starting DAOPHOT

All you need to begin DAOPHOT is the .fits file you want to perform photometry
on, and your daophot.opt and photo.opt files. You either need to start DAOPHOT in the
directory where the fits file is or have a statement in your .cshrc which states something to
the effect of ’setenv CTIO /home/djackson/WLM/CTIO’ then you can simply refer to the
directory ’CTIO’ once inside DAOPHOT and it will know where you want to go. To start
DAOPHOT simply type ’daophot’. The software is now (I think) installed on both the new
astro network and the Linux machines on Chick’s network.
Once starting DAOPHOT, the first thing you need to do is look at your options to
make sure everything is set correctly. Type ‘op’ to see the options and their current val-
ues. Remember, DAOPHOT only cares about the first 2 letters of the command and is
case-insensitive so ‘op’ is the same as ‘options’ is the same as ‘OPTIONS’ is the same as
‘OpTiOnS’ is the same as ‘optimal face size’. You will be asked for the ‘File with parame-
ters’, if you named your options file ‘daophot.opt’ just do a carriage return and your options
will be listed, otherwise, you will need to enter the name of the options file you want to

use. To change the read-noise simply type ‘re = 2.5’ to change it to 2.5 from whatever it
previously was. Notice when your options are listed the command prompt goes from say-
ing ’COMMAND:’ to ’OPT>’. If you are at the ’Command:’ prompt and enter ’re = 2.5’
DAOPHOT doesn’t know what you are talking about, because it is expecting a command,
not an option. You must type ’op’ first to get to the ’OPT>’ prompt and then change the
options you need to.
NOTE: If you change an option via the OPTIONS command it does not update the
daophot.opt text file. I find it handy to just change the options by editing the text file
itself before starting DAOPHOT. That way you have a record of what options were used for
that reduction.

3. Becoming Scientifically Independent

Using the image ‘WLM.fits’ in directory ‘CTIO’ as an example, now that your options
are set correctly you need to ATTACH the image you are going to operate on. Type ‘at
CTIO:WLM.fits’ (where I’ve already specified what the CTIO directory is in my .cshrc.
From here on out, you should be reading the DAOPHOT manual section entitled ’A typical
run of DAOPHOT II’. I will only provide tips where I see fit, and will reference the roman
numeral in the DAOPHOT manual that the tip refers to.
VI. Because I’m paranoid, I like to plot up all the detections that FIND found before I
run PHOTOMETRY. Ask me for the awk script ‘DAO find.awk’. It converts the .coo file
(FIND’s output) to a ‘region’ file that ds9 can handle. You can then plot up the detections
FIND found and make sure you are detecting the objects you think you should be.
VIII. Instead of choosing PSF stars as described in the manual (i.e., using PICK to
pick some number of stars as possible PSF stars and then using PSF to display and choose
which of the stars PICK picked that you actually want to use) I do the following: With
PICK, choose some number of possible PSF stars to select. In my experience with IRAC
data FIND will have found a large number of cosmic rays that it thinks are stars, so you may
want to PICK a fairly large number (3̃0) of possible PSF stars to begin with. Then, before
running PSF, plot up the objects PICK picked in ds9 (ask me for ‘DAO PSF find.awk’).
Open up ‘filename.lst’ and simply remove all of the objects PICK chose that you don’t
want to use as a PSF star. When that is done, run PSF and say yes to every star it asks
you about, since you’ve already gotten rid of the bad ones. After running PSF look at the
profile errors listed. Look for any stars with large profile errors (especially any with question
marks next to them). If you see any PSF stars with large errors, go back and remove it from
‘filename.lst’ and run PSF again to get a better PSF.

IX. ALLSTAR is a stand-alone program, separate from DAOPHOT. To run ALL-

STAR you need to have an options file, similar to that used in DAOPHOT. The default
filename ALLSTAR is expecting is ‘allstar.opt’. This file should be of the form:


PERCENT ERROR (in %) = 0.75
PROFILE ERROR (in %) = 5.00
IMPORTANT: Notice in particular here that the Inner and Outer sky radii are (or
at least should be) different than the values in your ‘daophot.opt’ file, which was used for
FIND and PHOTOMETRY. Read the manual for the appropriate values.
If you still have DAOPHOT running, exit out of it and start ALLSTAR. There is
nothing tricky here, just give it the filenames it wants and you’re done. If instead of running
ALLSTAR you want to run GROUP, NSTAR, and SUBSTAR, you can, but that would
be stupid.

4. Bandmerging

When you get to this point you have your output photometry (the .als file). Of course,
to do anything useful, like creating a color-magnitude diagram, you need to have magni-
tudes from multiple filters for each source. This can be done using the DAOMATCH and
DAOMASTER programs. In the version of DAOPHOT we received from Stetson, these
programs are described in the files ‘’ and ‘README.txt’. Unfortunately (???)
these programs were written to perform many more functions than the things that I actually
use them for, such as doing photometry on multiple, non-overlapping frames with the same
filter but different integration times and airmasses, and so on. As such, ‘’ and
the ‘README.txt’ don’t describe a typical run as we would use it, and to be honest, is
confusing as hell. So here is the bare bones description of how to merge your multi-filter
data into one big, beautiful photometry file.

To combine the photometry from multiple filters, you will use DAOMATCH, which
finds the tranlation, rotation, and scaling solution between your different photometry files,
and DAOMASTER, which does the actual file merging. Again, these are stand-alone
programs that need to be compiled on their own; they are not part of DAOPHOT proper.
Lucky for you, these programs are very smart and need essentially no input from you (there
are no .opt files for instance). Start DAOMATCH. It will ask you for the ‘Master input
file’. This should be the deepest (i.e., the file with the most detections) of the frames you
want to combine. Give DAOMATCH the names of the files you want to combine IN THE
In the limited testing I’ve done neither DAOMATCH or DAOMASTER seem to care if
the DAOPHOT header is in the files you are matching or not.
Something to watch out for: The output file you will eventually get from DAOMATCH
and DAOMASTER, does not retain the ‘chi’ and ‘sharp’ values for each photometered ob-
ject from the individual .als files. The only values that are retained are the ID (from which
ever file you told it to keep), X, Y, Mag, and Mag Error along with something like an average
‘chi’ and ‘sharp’ for the merged source, although I can find no explanation for where these
values came from. If you want to filter out things with unacceptable chi or sharp values,
this is done as you read in each file individually via characters appended to the end of the
filename. For example, when inside DAOMATCH:
Master input file: filename.als?##

where I am using ‘?’ as a dummy character to stand for one of these: ‘%’, ‘<’, ‘[’ ‘|’,
or ‘*’

and ## represents some number decided upon by you. The effects are

filename.als%## means ‘consider only stars with CHI < ##’ (CHI being the 8th column
of a .pk, .nst, .als or .alf file)

filename.als<## means ‘consider only stars with instrumental magnitude less than (brighter
than) ##’

filename.als[## means ‘consider only stars with sharpness index (column 9) in the interval
-## to +##

filename.als|## means ‘consider only stars with magnitude uncertainty (column 5) less than

filename.als* (not followed by a number) means ‘consider only stars contained within a
rectangular subarea’; the program with then prompt for xmin, xmax and ymin, ymax.

Alternatively you could filter your own .als files first, then merge them together. This
should be fine as long as you retain the format of the original .als file.
DAOMATCH calculates the shifts, rotations, etc. needed to merge the sources from
your individual photometry files, so it is not necessary for these files to be on a common
grid (although for Spitzer they probably will be anyway). DAOMATCH asks you for the
match-up radius you want to use, which is something like the amount of slop to allow in
trying to match up the photometry files. Based on this value DAOMATCH will solve for
the transformations to align the photometry files. The first solution is approximate, so after
giving it a reasonably large value (5 pixels or so), give it smaller and smaller radii to get a
more exact solution. Stetson recommends doing something like 5, 4, 3, 2, 1, 1, 1, 1. Each
iteration should give you a better solution to the transformation equations. Once you see
the number of matched sources converge, give it a match-up radius of 0 to exit. Now run
DAOMASTER. Again, there is nothing tricky here, not even any parameters to set. Page
8 of ‘’ lists the possible outputs DAOMASTER can give you, such as averaged
magnitudes of many images from the same filter, or raw magnitudes (which is what I have
it spit out).
As the magnitudes of the objects you found are still ’instrumental’ they need to be
corrected to ‘true’ apparent magnitudes. After you have run DAOMATCH and DAO-
MASTER, ask me for Spitzer unmagnitude.c and Spitzer magnitude.c, which convert from
DAOPHOT instrumental magnitudes to flux density units (microJanskies) and then to ‘true’
apparent magnitudes.