# SDSS Imaging Data (pydl.photoop)¶

## Introduction¶

The photoop package is used to process SDSS imaging data. This package is used to reduce, resolve and flux-calibrate the SDSS raw data, resulting in both flux-calibrated images and catalogs.

SDSS ceased taking imaging data in 2009, and there has only been one full processing of the imaging data since then, although adjustments have been made to the astrometry and flux calibration.

The primary emphasis of this implementation is:

1. Functions related to the SDSS photometric objID, which is a unique integer used in SDSS databases, constructed from quantities that specify a particular astronomical object on a particular image.

2. Functions related to finding SDSS photometric data on disk.

3. The SDSS “window” function, which defines what parts of the sky are covered by SDSS images. This can be used in conjunction with the mangle module to find points and regions that have SDSS imaging.

4. In general, functions that work with existing imaging data, rather than functions to reduce the data.

The photoop package is itself divided into a number of subpackages. Below we list the subpackages and the usability of the PyDL equivalent. The readiness levels are defined as:

Obsolete

No point in implementing because the purpose of the code lapsed many years ago.

Not Applicable (NA)

No point in implementing because another built-in or numpy/scipy/astropy package completely replaces this.

None

Not (yet) implemented at all.

Rudimentary

Only a few functions are implemented.

Fair

Enough functions are implemented to be useful, but some are missing.

Good

Pretty much anything you could do with the photoop code you can do with the equivalent here.

Subpackage

apache

Obsolete

Processing of “Apache Wheel” images, used for calibration.

astrom

None

Astrometry for SDSS images.

atlas

None

Construction of “atlas” images, small cutouts of individual objects.

bluetip

None

Tools for “blue-tip” photometry and extinction estimation.

compare

Obsolete

Compare the same images in two different data reductions.

database

Obsolete

flats

None

Analysis of flat-field files.

hoggpipe

Obsolete

Another version of “Apache Wheel” processing code.

image

Rudimentary

Tools for creating “corrected frame” images. These are flux-calibrated and sky-subtracted images with physical flux units.

ircam

Obsolete

Tools for processing all-sky “cloud camera” images, used to establish photometricity.

match

None

Tools for matching SDSS spectra to corresponding photometric objects.

misc

None

Code with no obvious home in any other category.

pcalib

None

Tools related to “ubercalibration”.

photoobj

Rudimentary

Tools for creating calibrated catalogs from images.

plan

Obsolete

Tools for planning photometric reductions.

plots

None

Plots for high-level quality assurance.

psf

None

ptcalib

Obsolete

Processing of “photometric telescope” data, an obsolete technique for flux-calibration.

resolve

None

Code for the resolve stage of image processing.

sdss3_runqa

Obsolete

Quality assurance tests from the most recent photometric reduction.

sdssio

Rudimentary

Tools for reading and writing various data files produced by the photometric reductions.

window

Rudimentary

Tools for determining the sky coverage of the survey.

## API¶

### pydl.photoop Package¶

This subpackage implements functions from the photoop package.

#### Classes¶

 PhotoopException Exceptions raised by pydl.photoop that don’t fit into a standard exception class like ValueError.

#### Class Inheritance Diagram¶

digraph inheritancef91f0b4a18 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "PhotoopException" [URL="../api/pydl.photoop.PhotoopException.html#pydl.photoop.PhotoopException",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Exceptions raised by :mod:pydl.photoop that don't fit into a"]; "PydlException" -> "PhotoopException" [arrowsize=0.5,style="setlinewidth(0.5)"]; "PydlException" [URL="../api/pydl.PydlException.html#pydl.PydlException",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Base class for exceptions raised in PyDL functions."]; }

### pydl.photoop.image Module¶

This module corresponds to the image directory in photoop.

#### Functions¶

 sdss_psf_recon(psfield, xpos, ypos[, …]) Reconstruct the PSF at position (xpos, ypos) in an SDSS field.

### pydl.photoop.photoobj Module¶

This module corresponds to the photoobj directory in photoop.

#### Functions¶

 Return calibration for velocities from pix/frame to deg/day. unwrap_objid(objid) Unwrap CAS-style objID into run, camcol, field, id, rerun.

### pydl.photoop.sdssio Module¶

This module corresponds to the sdssio directory of photoop.

#### Functions¶

 Return the name of a filter given its number. filternum([filt]) Return index number for SDSS filters either from a number or name. sdss_calib(run, camcol, field[, rerun]) Read photometric calibration solutions from calibPhotom or calibPhotomGlobal files. sdss_name(ftype, run, camcol, field[, …]) Return the name of an SDSS data file including path. sdss_path(ftype, run[, camcol, rerun]) Return the path name for SDSS data assuming SAS directory structure. sdssflux2ab(flux[, magnitude, ivar]) Convert the SDSS calibrated fluxes (magnitudes) into AB fluxes (magnitudes).

### pydl.photoop.window Module¶

This module corresponds to the window directory in photoop.

#### Functions¶

 sdss_score(flist[, silent]) Score a list of imaging fields from zero to one. window_read([flist, rescore, blist, bcaps, …]) Read window files in PHOTO_RESOLVE. window_score([rescore]) For uber-resolve, score all the fields from zero to one.