function ADDRSP : add one response matrix to another procedure ADJUSTIE : adjust fit parameters to reflect imposed constraints function ALALOESS : lowess-like local polynomial smoothing procedure APEDANCE : remove or correct abundance factor in APED emissivities function ARITHTOGRAM : perform arithmetic ops on freq. distributions of lists function ARRAYEQ : checks whether two numerical arrays are equal function B11001001 : convert byte arrays to binary function BAMABS : Balucinska-Church & McCammon (1992) absorption cross-sections function BEHR_HUG : wrapper for BEHR (Bayesian Estimate of Hardness Ratios) function BINERSP : determine position indices of photons wrt RMF grid function BLAND : computes blending factor for given set of line emissivities function BREAK_RMF : extracts a subset of an RMF function CALC_FTEST : compute significance using F test function CAT_ID : concatenate/filter ID structures function CAT_LN : concatenate/filter emissivity structures function CHANARF : compute an average effective area in each detector channel function CHANDRA_STATUS_BIT : filter Chandra events on status bits script CHIPOACOM : compare CHIANTI output with PoA calculations script CHIOMPRESS : compress CHIANTI database to include locally strong lines function CLTSMOOTH : removes -ves from background-subtracted spectra or LCs function COLBEHR : wrapper for BEHR to get color-color diagrams (see BEHR_HUG) function CONV_RMF : convolve model spectrum with response matrix function COLOURCURVE : compute log(S/H) for different T, given NH function CURVESECT : returns points of intersection of two curves function CUT_ID : add/delete line identifications to existing ID structure function DATE2DECIMAL : convert YYYY-MM-DDThh:mm:ss[.s*] to decimal year function DATE2TIMESTAMP : convert decimal year to YYYY-MM-DDThh:mm:ss[.s*] function DEG2HRS : convert decimal degrees to sexagesimal function DEMACS : interactive DEM editor function DETECT_LIMIT : derive upper limits to source counts for detection procedure DID2EMIS2EM : compute EmissionMeasure, EM=EM(n_e) for ID'd lines function DISCRIMINATEMP : test how well the chosen emissivities discriminate T procedure DORREN : compute spot modulated stellar light curve (Dorren 1987) function DOVE_CICLO : identify and return pixels that form loops in solar images procedure DRAKOPY : set up environment for different plot preferences function DRAT : compute line flux ratios for various densities function DUMMYID : convert a line emissivity structure to an ID structure script EG_IDSTR : break up an ID structure into its constituent parts function EQT_INTERVAL : return equal-tailed intervals procedure ERORS : determine asymmetric error-bars by projecting chi-sq surface procedure EXAPED : extract emissivities from APED files procedure FIDGIT : digitally morph a DEM to the desired shape script FIND_WVL_NOLINE : locate bins in spectra that are line-free function FINDSCALE : returnds the lengthscale in pixels at each point on a curve procedure FIT_LEVMAR : Levenberg-Marquardt optimization function FITLINES : fit profiles to features in spectrum procedure FITLINES_EVENT : widget event handler for FITLINES script FITLINES_UNDUMP : restore and continue from saved FITLINES environment function FLARECLASS : convert GOES class to flare peak flux in physical units function FLUX_TO_EM : EmissionMeasure(T) for given line fluxes and emissivities procedure FLUXCURVE : compute fluxed light curve for low-spectral-res events data function FOLD_IONEQ : impose ion balance on bare line emissivities procedure GENERATIO : generalized routine constructs flux ratios and errors function GETPOADEF : default values for PINTofALE directories function GET_IONLIST : return list of all ions in CHIANTI distribution function GET_PIMMS_FILE : return full pathname of PIMMS effective area file function GETABUND : returns abundances function HASTOGRAM : makes frequency histogram over an uneven grid function HEXED : converts decimal tuples to hex color strings function HINODE_XRT_EMIS : makes custom XRT temperature responses function HIPD_INTERVAL : return confidence range containing highest prob density procedure HIRES2LOWRES : convert hi-res HETG grating spectra to low-res (X-Atlas) function HRS2DEG : convert sexagesimal to decimal degrees function HSV2RGB : convert Hue,Saturation,Value to Red,Green,Blue 3-tuple function HULLSORT : reorders a 2D list of points from the outside in function ID2EMIS2ID : updates emissivities in ID structure procedure ID_TO_FITPAR : constraints and initial parameters for set of IDs function IDLABEL : makes labels for IDs procedure INICON : define atomic and other variables script INITALE : initializes environment procedure INTERSECT : return intersections of two lists of numbers function IONABS : cross-sections using ion fractions (Verner et al) function IS_KEYWORD_SET : a pre-IDL5.6 compatible wrapper to keyword_set function ISMTAU : compute ISM optical depth procedure KABOOM : visual error reporter procedure KILROY : marker routine function UNKINK : removes kinks in curves by sweeping line segments function LAT2ARAB : return arabic equivalent of roman numeral function LEGALVAR : determines whether a variable name is legal in IDL or no procedure LEVMARQ : Levenberg-Marquardt stepping routine procedure LIBMODEL : calls various multi-parameter family of curves procedure LICOSPEC : compute summed line and continuum emissivity over passband function LIKELI : returns the likelihood of observing the data for given data function LINE_CHIANTI : read in CHIANTI database function LINEFLX : compute theoretical line flux function LINEID : obtain IDs of features in spectrum function LINEID_MENU : subroutine to set up widget for LINEID function LINEREM : remove lines from input spectrum function LINESPEC : compute theoretical line spectrum for given DEM function LINESPEC_EM : compute theoretical line spectrum for given EM procedure LMCOEFF : evaluate Levenberg-Marquardt coefficients function LNPOISSON : return log Poisson likelihood of Data given Model intensity function LNPPOI : return cumulative or differential Poisson likelihood function LOCMAX : compute local maxima of 1D array procedure LOCUS_ELLIPSE : compute the locus of an ellipse function LOGIT : returns the logit function function LOOPEM : compute DEM a la RTV loop for given EM and Tmax script LOSRAD : compute radiative loss function function LSD : obtain list of density sensitive lines script MAKE_SPECTRUM : make spectrum including line and continuum emissivities procedure MAKE_LOWRES : X-Atlas wrapper script to run HIRES2LOWRES function MARFRMF : return instrument response, product of ARF and RMF procedure MC_EROR : return asymmetric error-bars given Monte-carlo of data procedure MCERROR : determine asymmetric error-bars a la ERORS via Monte-carlo of data function MCMC_ABUND : compute abundances for given DEM solution function MCMC_DEM : Markov-Chain Monte-Carlo [Metropolis] DEM reconstruction function MCMC_DEM_ONLY : dedicated subroutine to MCMC_DEM for readability function MCMC_DEM_POST : compute statistical summaries of output from MCMC_DEM procedure MCMC_DEM_WHISKERPLOT : make a nice whiskerplot of output of MCMC_DEM function MCMC_PLOT : plots Monte-Chain Monte Carlo DEM reconstruction results function MDLPOLY : computes minimum description length stat for polynomial models function MID2BOUND : convert mid-bin values to bin-boundaries function MIXIE : computes contamination corrections to a line from other lines function MK_3MODEL : make compound model out of several 3-parameter functions function MK_ABSORB : make multiplicative model for insterstellar transmission function MK_BBANG : make blackbody photon model B(lambda) function MK_BBKEV : make blackbody photon model B(keV) function MK_BKNPOWER : make a broken-power-law model function MK_DEM : create DEMs of various ilk function MK_EFOLD : make exponential function function MK_GAUSS : make Gaussians function MK_IDENT : identity operator function MK_LCECLIPSE : make light curve for an eclipse script MK_LCOOL_APED : generates APED line database script MK_LCOOL_CHIANTI : generates CHIANTI line database function MK_LINSTR : create a standard emissivity structure function MK_LORENTZ : make modified Lorentzians function MK_POLY1D : make N-th order polynomials function MK_POWLAM : make power-law model spectrum function MK_ROGAUSS : make rotationally broadened Gaussians function MK_RECIPROCALPOW : make reciprocal power-law mixture model function MK_SINUSOID : make sinusoid function MK_SLANT : make shifted Lorentzian function MODALPOINT : return the mode of a distribution defined by an array function MORFO_CIRCOLARE : morphological open with circular element function MORFO_POTARE : morphologically prune skeletons function MORFO_ROTTANGOLI : morphological open with rectangular element function MORFO_SCHELETRO : generate morphological skeletons function MORFO_SEGMENTO : percolate to find contiguous region blobs function MORFO_SOGLIA : generalized thresholding procedure MUNGE_LIST : generate ID structure out of list of IDs procedure NARY2DEC : convert from n-ary number to decimal function NENH : calculate n_e/n_H for plasma of given temperature function NOISMOOTH : adaptively smooth a spectrum for better visuals procedure NRG2CHAN : convolves model spectrum with OGIP-style RMF function NUM2STR : converts integers to strings procedure OGIPZIP : compress an array, OGIP RMF style procedure PEASECOLR : load a useful set of colors into the color table function PICKRANGE : interactive array viewer and selector procedure PLOTEM : plot EM(T) obtained via POTEM_TOOL. procedure PLOTFIT : makes nice plots of the line profiles fit with FITLINES script POA_CONSTRUCTOR : front-end to INITALE, for older versions of IDL procedure POAINTSYM : define useful plotting symbols function POPSOL : solves for atomic level populations function POTEM_TOOL : compute EmissionMeasure(T) for specified lines function POTTASCH : get correction factor for EM due to width of emissivities function PPD_SRC : return probability of source strength, \int db p(s,b|Ns,Nb,I) function PRED_FLX : compare predicted and observed line fluxes for given DEM function PROB_GAMMADIST : make gamma(x;alpha,beta) probability distributions procedure PROPERMOTION_CORRECTOR : corrects coordinates for proper motion function RADPROJECT : project ray from arbitrary point on orb onto plane function RANDOMPOW : draw intensities/amplitudes from a power-law distribution function RD_APED : read APED-style FITS line list function RD_CHANDRA_GEOM : reads in the contents of Chandra's geometry file function RD_CHIANTI : read CHIANTI database function RD_COCO : read emissivities from APEC continuum fits file function RD_CONT : read emissivities from continuum database function RD_IONEQ : read ion-balance data function RD_LINE : read emissivities from line database function RD_LIST : return emissivities for specified line list function RD_OGIP_RMF : read OGIP-style RMF data into IDL variables procedure RD_PIMMS_FILE : read effective area values from PIMMS file function RDABUND : read abundance values from file function RDARF : read OGIP-style ancillary response file function RDB : read RDB-format ASCII files function RDPHA : read spectrum from XSPEC-type file function RDRESP : read OGIP-compliant response file function REBINW : rebin spectra into arbirary bins while conserving flux function REBINX : rebin 2D arrays (e.g., emissivities) into arbirary bins script REFITLINES : rerun FITLINES function REGROUP : regroups a counts array to have minimum number in each bin function REGROUP_RMF : modify the channel grid in an RMF to have just one group function RENORMOD : rescale model normalization to match data values function ROI_SELEZIONI : interactively select regions of interest in integer map function ROOFN : find integers nearest to powers of N function RUNDENS : compute running density of a set of point measurements procedure SCRMF : spectral convolution with RMF, faster version of CONV_RMF function SDSS2FLUX : converts SDSS magnitudes to flux in physical units function SETABUND : widget-based editor to set abundances function SETCONT : interactively determine a continuum level procedure SETKOLOR : load specified colors into specified indices procedure SETSYSVAL : set value of system variable procedure SHOW_LINE : plot locations of lines or other features procedure SKYPOS : convert sky positions to various formats procedure SMOOTHIE : adaptively smooth spectra procedure SMUDGE : read in labels to mark specific wavelengths function SOLAR_TRESP : returns temperature response for common solar missions function SPHTRIG_TRANSLB : (l,b) transform from inclined sphere to observer frame procedure SPLAC : compute segmented piecewise linear approximation to curve function SQUISHEM : replace multiple IDs with single nominal ID in structure procedure STAMPLE : brand plots with time stamp and user name function STARFLUX : flux in passband for given line and continuum emissivities function STR_2_ARR : break a string of numbers into array procedure SYMB2ZION : determine atomic number and ionic state from symbol function SYZE : determine what type of number is masquerading as a string function TEKHI : converts spectroscopic terms and configurations to LaTex form procedure TEKKU : write out a LaTeX table summarizing ID's function THERMAL_EMIS : compute count rates for given effective area procedure TI_AND : intersection of two sets of GTI's procedure TI_CLEAN : cleans up start and stop times into GTI's function TI_COVER : coverage fraction for bins of a light curve function TI_DEGTI : artificially removes data gaps from time array function TI_FILTER : filter an event list through a GTI procedure TI_OR : union of two sets of GTI's procedure TI_WRITE : write out GTI script TIEUP1 : determine fit constraints on IDs script TIEUP2 : determine fit constraints on IDs function TIMEVARKS : returns the Poisson calibrated K-S significance function TIMEVARVK : computes significance of smoothed deviations function TRANSLABEL : determine CHIANTI line transition labels function UNLOGIT : returns the inverse logit function function ULIM_SIMPLEPOI : returns upper limit when background is known function UPDATID : update the values in an ID structure function VARSMOOTH : return array smoothed at different scales function VOORSMOOTH : return array smoothed by kernel of choice procedure VRDB : view selected rows and columns of RDB file function WEE_PARAMESRAN : computes sharpness of an image function WC : determines number of lines, words, characters in file procedure WHEE : wheel to denote passage of computing time function WHEREIS : finds file in !PATH procedure WHICH : determines path to IDL program file (obsolete) procedure WRT_LN_APED : write APED emissivities in PoA format procedure WRT_LN_CHIANTI : write CHIANTI emissivities in PoA format procedure WRT_LN_GENERIC : write emissivities to disk in PoA format procedure WRT_OGIP_RMF : write an OGIP-compliant RMF function WVLT_SCALE : returns lengthscales on curves using MexHat procedure X3MODEL : calls various 3.5-parameter family of curves function X3MODEL_F : calls various 3.5-parameter family of curves function XARDANO : computes roots for cubics procedure XSPECPLOT : generalized XSPEC style double panel plots procedure XSPLOT : make XSPEC style double panel plots procedure ZION2SYMB : make symbol out of atomic number and ionic state