Документ взят из кэша поисковой машины. Адрес оригинального документа : http://star.arm.ac.uk/~csj/idl/IDLINES/markion.pro
Дата изменения: Wed Apr 29 21:02:05 2009
Дата индексирования: Tue Oct 2 07:47:20 2012
Кодировка:
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.
msk = WHERE ( FIX(listion) EQ FIX(zel), cnt )

wl=fltarr(cnt+1)
lab=strarr(cnt+1)
mlt=strarr(cnt+1)


IF ( cnt GT 0 ) THEN BEGIN
frmax = max ( listfr(msk) )
IF ( thresh LT 0 ) THEN frmax = 1.0
IF ( thresh LT 0 ) THEN thresh = - thresh

ij = 0L
FOR i = 0L,listn-1 DO BEGIN
IF fix(zel) EQ fix(listion(i)) AND listfr(i)/frmax GT thresh 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