;+ ; NAME: ; rt_sread ; PURPOSE: (one line) ; read line listings for fundementals ; DESCRIPTION: ; read line listings for fundementals ; CATEGORY: ; RT ; CALLING SEQUENCE: ; sread=rt_sread(indx) ; INPUTS: ; indx - indices of line files ; OPTIONAL INPUT PARAMETERS: ; KEYWORD INPUT PARAMETERS: ; KEYWORD OUTPUT PARAMETERS: ; none ; OUTPUTS: ; structure with: ; nb - number of listings ; nlines[nb] - number of lines for each band ; stot[nb] ; wmean[nb] ; wstart[nb] ; wend[nb] ; nl - index into wav, str, wid, eng ; n - number of lines ; wav[n] wavenumber of line ; str[n] str of line in cm^-1/(molecule cm^-2) ; wid[n] pressure width in invcm at STP ; eng[n] lower state energy in invcm ; COMMON BLOCKS: ; None ; SIDE EFFECTS: ; RESTRICTIONS: ; None ; PROCEDURE: ; MODIFICATION HISTORY: ; Written 2004 Mar 20, Leslie Young SwRI ; based on sread, written by Roger Yelle, 1990 ;- function rt_sread, indx fn = [ $ ; CH4 = molecule 6, $ '/planet/hitran96/hitran96/by_molec/06_hit96.par', $ '/planet/hitran96/hitran96/by_molec/06_hit96.par', $ '/planet/hitran96/hitran96/by_molec/06_hit96.par', $ '/planet/hitran96/hitran96/by_molec/06_hit96.par', $ ; C2H2 = molecule 26, $ '/planet/hitran96/hitran96/by_molec/26_hit96.par', $ '/planet/hitran96/hitran96/by_molec/26_hit96.par', $ ; C2H6 = molecule 27, $ '/planet/hitran96/hitran96/by_molec/27_hit96.par', $ ; HCN = molecule 23, $ '/planet/hitran96/hitran96/by_molec/23_hit96.par', $ '/planet/hitran96/hitran96/by_molec/23_hit96.par' $ ] ; selmin = minimum wavenumber ; CH4 CH4a CH4b CH4c C2H2 C2H2a ; C2H6 HCNb HCNb selmin = [ 1071., 2809., 3900., 5891., 646., 3151., $ 720., 3158., 2.] ; selmax = maximum wavenumber ; CH4 CH4a CH4b CH4c C2H2 C2H2a ; C2H6 HCNb HCNb selmax = [ 1544., 3210., 4279., 6107., 811., 3398., $ 933., 3422., 132.] nb = n_elements(indx) nlines = intarr(nb) nl = intarr(nb) stot = dblarr(nb) wmean = dblarr(nb) wstart = dblarr(nb) wend = dblarr(nb) for ib=0,nb-1 do begin i = indx[ib] h = rt_hitran(fn[i], selmin[i], selmax[i]) if ib eq 0 then begin wav = h.wav str = h.str eng = h.eng wid = h.wid nl[ib] = 0 endif else begin wav = [wav,h.wav] str = [str,h.str] eng = [eng,h.eng] wid = [wid,h.wid] nl[ib] = nl[ib-1] + nlines[ib-1] end nlines[ib] = h.nlines stot[ib] = h.stot wmean[ib] = h.wav0 wstart[ib] = h.wmin wend[ib] = h.wmax end sread = { nb:nb, nl:nl, nlines:nlines, $ stot:stot, wmean:wmean, wstart:wstart, wend:wend, $ wav:wav, str:str, eng:eng, wid:wid } return, sread end