; Read a single V8 SBUV compressed ACSII file. ;************************ infile = ' ' read, 'Enter a file name (ex: sbuv_n11_19921209.txt) : ', infile ;**************** ; Read a header information first and ; print parameter names. ;**************** OPENR, 2, infile, error =err if err ne 0 then begin printf,-2,'Error in opening this file:', !err_string close, 2 STOP endif header = strarr(8) READF, 2, header print, header(0:6) ;************************** ; Read 39 values for 13 parameters shown in the header line as follows, ; year, day, gmt, Lat, Lon, SZA, Total Ozone, Refl, AI, Resqc, ; EFlag, 13 Layer Profile, 15 PPMV ;************************** data = fltarr(39) buf = fltarr(39,3000) n = 0L WHILE (NOT EOF(2)) DO BEGIN READF,2,data catch, error_status if error_status ne 0 then begin print, 'Error message : ', !err_string print, 'Try next day' Catch, /cancel close, 2 stop endif buf(*,n) = data n = n + 1L ENDWHILE close, 2 if n gt 0 then begin ; buf = buf(*,0:n-1) year = reform(buf(0,*)) day = reform(buf(1,*)) gmt = reform(buf(2,*)) Lat = reform(buf(3,*)) Lon = reform(buf(4,*)) SZA = reform(buf(5,*)) toto3 = reform(buf(6,*)) refl = reform(buf(7,*)) ai = reform(buf(8,*)) resqc = reform(buf(9,*)) eflag = reform(buf(10,*)) ;************* ; Retrieved profile layer ozone (D.U). ;************* lay13prf = reform(buf(11:23,*)) ; ppmv15 = reform(buf(24:38,*)) ; endif else print, 'Zero records found in this file' print, 'Number of records found in this file : ', n END