;+ ;NAME: IRATL ; ;PURPOSE: Extract data from KITT PEAK PHOTATLAS ; (disk centre, 1.1 - 5.0 mu ) ; ;CALLING SEQUENCE: ; IRATL, WLA, WLE, LAMBDA, SPOBS, SIGMA, SPSOL=SPSOL, SPAIR=SPAIR ; ;INPUT: WLA - begin of wavelength range to be extracted. ; WLE - end of wavelength range. ; ;OUTPUT: LAMBDA - vector with wavelength (not equidistant). ; SPOBS - observed spectrum. ; SIGMA - wavenumbers (equidistant). ; ;KEYWORDS: SPAIR - telluric spectrum. ; SPSOL - pure solar spectrum. ; INTERP - interpolation for equalspaced lambda, ; delta lambda in [pm] ; ;RESTRICTIONS: ; These data are freely available with one restriction: If you use the data ; or some product based on the data in a published paper, we ask that you ; include an acknowledgement as follows: ; ; NSO/Kitt Peak FTS data used here were produced by NSF/NOAO. ; ; ;CREATOR: SEBASTIAN HASINGER, JANUAR, 27, 1999, POTSDAM ; ;MODIFICATIONS: H. Balthasar, March 25, 1999 ; April 25, 2003 ; May 09, 2006 ; Feb. 09, 2011 ;CONTACT: hbalthasar@aip.de ; ; ;- pro iratl, wla, wle, lambda, spobs, sigma, spsol=spsol, spair=spair, INTERP=INTERP ; on_error, 2 ; wl = dblarr (800000) a = dblarr (800000) b = dblarr (800000) c = dblarr (800000) d = dblarr (800000) an = 0 en = 0 if keyword_set (interp) then begin nwl = 1000.d0*(wle - wla)/interp lambdaint = interp*findgen (nwl)/1000.d0 + wla endif if wla le 1110.56 or wle ge 5398.06 or wle le wla then begin print, 'Wrong input parameters.' print, 'Atlas range: 1110.56 - 5398.06' print, 'received parameters: ', wla, wle return endif openr, unit, 'D:\idlpro\kp_iratl.dat', $ /get_lun,/swap_endian ; wl0 = 1. i = 0l while wl0 ge 1 do begin readu, unit, v, w, x, y, z wl [i] = v a [i] = w b [i] = x c [i] = y d [i] = z wl0 = v if wla le v then an = i + 1 if wle le v then en = i i = i + 1 endwhile free_lun,unit last = round (w) -1 lambda = reverse (wl [en:an]) spsol = reverse (a [en:an]) spair = reverse (b [en:an]) spobs = reverse (c [en:an]) sigma = reverse (d [en:an]) ; if keyword_set (interp) then begin spair = spline (lambda, spair, lambdaint) spobs = spline (lambda, spobs, lambdaint) spsol = spline (lambda, spsol, lambdaint) sigma = spline (lambda, sigma, lambdaint) lambda = lambdaint endif end