PRO markion, zel, xlo, xhi, listn, listwav, listion, listlab, listmlt, listfr, thresh, wl,lab,mlt ; thresh - value relative to strongest line in spectrum __of that element__ ; for which ion identifiers are to be printed out. ; ; thresh - if -ve, only mark lines with EW > |thresh| Angstroms colors = GetColor(/Load) idcolor = colors.red frmax = -99. z_valid = where( fix(listion) EQ fix(zel), z_count ) wl=fltarr(z_count+1) lab=strarr(z_count+1) mlt=strarr(z_count+1) IF ( z_count GT 0 ) THEN BEGIN frmax = max ( listfr(z_valid) ) IF ( thresh LT 0 ) THEN frmax = 1.0 thresh_l = thresh IF ( thresh LT 0 ) THEN thresh_l = - thresh ij = 0L FOR i_z = 0L,z_count-1 DO BEGIN i = z_valid(i_z) IF fix(zel) EQ fix(listion(i)) AND listfr(i)/frmax GT thresh_l THEN BEGIN wl(ij) = listwav(i) IF xlo LT wl(ij) AND wl(ij) LT xhi THEN BEGIN ; print the label lab(ij) = listlab(i) ; print the multiplet number (if known) zmu = listmlt(i) xmu = fix(zmu) IF zmu-xmu LT 0.001 THEN wmu = string(xmu,format='(i3)') $ ELSE wmu = string(zmu,format='(f6.2)') IF xmu > 0 THEN $ mlt(ij) = wmu ij=ij+1 ; xyouts, wl,1.80, wmu , orientation=90, noclip=0, color=idcolor, charsize=0.7 ; print the wavelength ; wls = string(listwav(i),format='(f7.2)') ; xyouts, wl,1.95, wls , orientation=90, noclip=0, color=idcolor, charsize=1.0 ENDIF ENDIF ENDFOR ij=max([ij,1]) wl=wl(0:ij-1) lab=lab(0:ij-1) mlt=mlt(0:ij-1) ENDIF END