;+ ; NAME: ; rt_szss96_kcoefv4 ; PURPOSE: (one line) ; return the k-coefficients for the CH4 nu4 band ; DESCRIPTION: ; return the k-coefficients for the CH4 nu4 band ; CATEGORY: ; RT ; CALLING SEQUENCE: ; kcoef = rt_szss96_coefv4(t, icon) ; INPUTS: ; t - temperature (K) [nz array] ; icon - 1 for band A, 2 for band B ; OPTIONAL INPUT PARAMETERS: ; KEYWORD INPUT PARAMETERS: ; codetype ; 'FORTRAN' - call routines from plutot.f ; 'FORTEST' - native IDL routines that reproduce the fortran ; 'IDL' - idl code, without the restriction of needing to reproduce fortran ; KEYWORD OUTPUT PARAMETERS: ; none ; OUTPUTS: ; kcoeff number column density [nz,ng] (cm^2) ; COMMON BLOCKS: ; SIDE EFFECTS: ; RESTRICTIONS: ; Modifies atm ; PROCEDURE: ; ; EXAMPLE: ; ; atm = rt_szss96_atmread('',0,code='FORTRAN') ; kcoef = rt_szss96_kcoefv4(atm.t, 2L) ; ; MODIFICATION HISTORY: ; Written 2007 Aug 31, Leslie Young SwRI ; based on plutot.f, written by Zun Zhu ;- function rt_szss96_kcoefv4, t, icon fcn = 'rt_szss96_kcoefv4' if not keyword_set(codetype) then codetype = 'FORTRAN' case codetype of 'FORTRAN': begin get_ch4all,GG,WW,TREF if tref[0] ne 40.d then begin input6 endif KM = n_elements(t) zkintemat,t,KM,XKZ,icon xkz_cgs = XKZ * 10.d ; mass of an AMU = k/R, using values of k, R from plutot.f kcoef = xkz_cgs * 16 * (1.3804D-16/8314d4) return, kcoef end ; 'FORTEST': begin ; get_ch4all,GG,WW,TREF ; if tref[0] ne 40.d then begin ; input6 ; get_ch4all,GG,WW,TREF ; endif ; get_ch4v4,SIG4A,SIG4B ; if icon eq 1 then lsig = alog(SIGA) else sig = alog(SIGB) ; nz = n_elements(t) ; ng = n_elements(gg) ; for iz = 0, ; case (0) of ; ; endcase ; end else: begin print, fcn, ': code type ', codetype, ' not implemented' return, -1 end endcase end