Appendix B UIDL ROUTINES COBE Data Input BUILDMAP provides user-friendly access to COBE archive maps. DATAIN is a routine which reads in FITS and other format files in UIDL DATAOUT is a routine which writes out FITS files or CISS files. DBERROR separates the SIGNAL and QUAL_FLAG from PhotQual. DECOMPRESS_MF decompresses DIRBE data read from BLI_TOIRSCLD. DIRBE_GAINS returns the auto or commanded gain ratios per detector. DIRBE_MEPS returns the MUX sequence and prints it out. DIRBE_RAWTOD returns auto-gain corrected data in process order. DIRBE_READ_PIXEL gets data for a single pixel within a time range. DIRBE_READ_PIXSTR gets time strings through a central pixel. DIRBE_TOD reads DIRBE data and corrects for order and gains. DO_MEPS applies MUX sequence to one major frame of DIRBE data. FIRASMOD: used to read in the FIRAS Calibration Model IPs, FIRAS Line Profile PDSs, and other FIRAS PDS. FITSHDR: reads and displays the primary fits header. GET_RESOLUTION returns the skymap's resolution. IPINFO reads the PDS/IP FITS header and displays field and frequency info. READ_COVAR used to read in the FIRAS Covariance matrix. READ_DMR_TOD used to validate the COBE DMR Time-Ordered Data. READ_MAP_FACE returns data for a face from a Skymap dataset. READ_RDF returns field descriptions from RDF files. READ_RMS returns data for multiple fields from an RMS data set. READ_SKYMAP returns data for multiple fields from a skymap data set. READ_TOD returns data for multiple fields from a time-ordered data set. SCDTT makes short term statistical analysis of Spacecraft data simple and easy. SET_RDF defines an alternate Record Definition File. General Data I/O CHECK_FITS checks that FITS header is appropriate for a given array. CONV_UNIX_VAX converts UNIX IDL data types to VAX IDL data types. CONV_VAX_UNIX converts VAX IDL data types to UNIX IDL data types. DATAIN is a routine which reads in FITS and other format files in UIDL DATAOUT is a routine which writes out FITS files or CISS files. FIRASMOD: used to read in the FIRAS Calibration Model IPs, FIRAS Line Profile PDSs, and other FIRAS PDS. FITS2X (VMS only) reads a FITS header and array from tape and puts it into IDL arrays. FITS_INFO extracts header and data information about a FITS file. FITSBYTE byteswaps between FITS and internal machine formats. FITSLIST (VMS) reads FITS files from tape and writes headers to disk or screen. FITSTAPE performs magnetic tape FITS format I/O. FXBREAD Read a data array from a disk FITS binary table file. FXBWRITE Write a binary data array to a disk FITS binary table GETNAME searches for specified file name, returns full name & path. HEADFITS reads a FITS header from a disk FITS file. HOST_TO_IEEE converts IDL var. from IEEE-754 to host machine type. IEEE_TO_HOST converts IDL var. from host machine type to IEEE-754. IPINFO reads the PDS/IP FITS header and displays field and frequency info. MKHDR makes a FITS image header with required keywords. RDFITS_STRUCT reads an entire FITS file into an IDL structure. READCOL reads an ASCII data file into IDL variables. READFITS reads FITS disk file data and header into IDL. READFMT reads a fixed format ASCII data file into IDL variables. UGETDATA copies data from the UIMAGE environment to a UIDL variable. UPUTDATA copies data from a UIDL variable to the UIMAGE environment. WRITEFITS writes an IDL array into a FITS format disk file. Image and Plot BAR draws a color bar on the display. BITRANGE takes an arbitrary range of bits from an array for display. CLEANPLOT resets IDL system plotting variables to defaults. COLORBAR puts a color bar of any size, anywhere with the mouse GAPFILL interpolates across gaps in an unfolded skycube. LABEL_DATE is a function to label axes with dates. LABELIT is a graph labeling procedure for IDL Version II. MARKMAP places source position labels on images PIX2DAT extracts a data list from a rasterized skycube by x-y coordinates. PLTIME adds a date and time to a pre-existing plot. PROJBLD generates projection lookup tables. PROJGRID overlays coordinate grids on projections. PSIMAGE sets optimum size and displays (TVSCL) image in PostScript. PUT_OWNER_ID puts owner ID and system time on hard-copy plots. REPROJ is a general reprojection facility for skycubes. SETUP_PS configures for production of landscape PostScript plot files. SKYCUT extracts sky data along a cross-sectional cut. UIMAGE is a package that allows one to manipulate COBE data. USRPROJ generates projections from user-generated lookup tables. VTGREY displays grey-scale images on graphics terminals (e.g., VT240). WINLABEL uses a GUI to position labels in a window with the cursor. ZOOMW zooms window and alters color tables on windowing devices. Analysis Tools AREA_AVG returns the pixels and area ave of a polygonal region. AVG calculates the average over one dimension of an array. AVGAREA finds the average over a circle or annulus BOSE_EIN returns a Bose-Einstein spectrum with a chemical potential. CAPTURE copies an image from a workstation window to disk. DIPOLE subtracts a dipole term from a scalar skymap. FITMU is a Bose_Einstein / Dust Residual fitting facility. FITSPEC is a multiple blackbody fitting facility. FLUX2MAG converts flux in ergs/s/cm^2/angstroms to magnitude. FULLMAP creates a full DSK7 skymap file from a partial one. GFIT fits a Gaussian plus an optional baseline to a spectrum. HELIO computes (low-precision) heliocentric coordinates for the planets. IMSTAT returns useful statistics on an image. MAG2FLUX converts magnitude to flux in ergs/s/cm^2/angstroms. MIN_CURVE_SURF interpolate points with minimum curvature spline surface. MKBGRMOD is a general 2-D background modeling tool. MOONPOS returns the apparent RA and Declination of the Moon. MULTIPOLE subtracts dipole + quadrupole terms from a scalar sky map. NICE_HISTO returns a histogram and corresponding x-vector. NYQUIST returns the Nyquist frequency of a FIRAS spectrum. PLANCK returns the spectral radiance of a blackbody. REPLAY redisplays an image previously stored using CAPTURE.PRO. SKY determines the sky level in an image using MMM on 4000 pixels. SPFILTER is a general spatial filtering tool. SUM totals an array over one of its dimensions. SUNPOS returns the apparent RA and Declination of the Sun. UIMAGE is a package that allows one to manipulate COBE data. Utilities ADDX performs extended word integer addition. BATCHCUT extracts skycuts defined by a lon/lat array. BUILDTEE takes 1-6 cube faces and places them into an unfolded T. COORCONV is a shell routine for coordinate conversion procedures. CPUSEC returns the amount of CPU time consumed as a FLOAT. DOWNRES coarsens the resolution of a skycube or cube face. EDIV performs quadword integer division. EMUL performs quadword integer multiplication. FDECOMP decomposes a file name into its components. GET_COORDS input angular coordinates and return floating-point values. GET_DATE returns the current date in DD/MM/YY format. GETOPT converts a response string into a scalar or vector. GETPRO copies IDL procedure into current default directory. GETTOK retrieves a segment of a character string. GRABFACE grabs a cube face from an unfolded T or sixpack HELIO computes (low-precision) heliocentric coordinates for the planets. LATCIRC generates a 'latitude' circle LATCUT selects data from a map in a specified latitude range. LEAPCHK determines if a year is a leap year. MERGE combines two vectors into one, eliminating duplicates. MONTHDAYS gives number of days in a month, given year and month. MOONPOS returns the apparent RA and Declination of the Moon. PIX2XY creates a skycube or face from a pixel or data list. PIXINFO returns lon/lat, x/y, pixel number, and data value PRECESS precesses coordinates from one equinox to another. PROJGRID overlays coordinate grids on projections. PXINCIRC generates pixels within a given circle. PXINPOLY generates pixels within a given spherical polygon. PXINRING generates pixels within a given ring. QS1_L shifts quadword integer 1 bit to left. QS1_R shifts quadword integer 1 bit to right. REMCHAR removes all appearances of a character from a string. REPCHR replaces one character with another in a text string. ROUND rounds data to the nearest absolute integer. SIGMA calculates the standard deviation value of an array. SINCE_VERSION determines if current IDL release comes after user's. SIXPACK packs an unfolded skycube into 3 x 2 format (no wasted space). SIXUNPACK restores the packed skycube created by SIXPACK to a T. SMOOTHCUBE convolves an unfolded skycube with an arbitrary kernel. SORTIT sorts vector in ascending order of contents of second vector. SPEC_DIR expands a partial file specification into a full one. STRFORM forms right-justified string of given length from input no. STRN converts a number to an unpadded string. STRNUMBER determines if a string is a valid numeric value. STRPARSE returns an array of non-blank entities extracted from an input string. SUBX performs extended word integer subtraction. SUNPOS returns the apparent RA and Declination of the Sun. TEN Converts sexigesimal number to decimal. TIMECONV is the shell routine for time conversion procedures. UNITSTR returns a string with units corresponding to the units code. UPKWHERE unpacks a 'where' vector into cube,level,col,row. WHERENAN finds pos'ns of all vals. in array corr. to IEEE NaN vals. XY2PIX calculates pixel numbers from input x-y raster coordinates. ZPARCHECK verifies data type of parameters in a procedure call.