dustem_read_secteffuv.pro 1.18 KB
FUNCTION dustem_read_secteffuv,file,silent=silent

Ngrains=(*!dustem_params).Ngrains

str='readcol,file,wav_uv,'
FOR i=0L,Ngrains-1 DO BEGIN
  str=str+'sect_grain_'+strtrim(i+1,2)+','
ENDFOR
FOR i=0L,Ngrains-1 DO BEGIN
  str=str+'sect_'+strtrim(i+1,2)+','
ENDFOR
str=str+'silent=silent'
toto=execute(str)

;stop
;readcol,file,wav_uv,sect_pah,sect_vsg,sect_bg,sect_1,sect_2,sect_3,silent=silent

nlines=n_elements(wav_uv)

str='one_st={wav:0.,'
FOR i=0L,Ngrains-1 DO BEGIN
  str=str+'sect_abs_grain_'+strtrim(i+1,2)+':0.,'
ENDFOR
FOR i=0L,Ngrains-1 DO BEGIN
  str=str+'sect_diff_grain_'+strtrim(i+1,2)+':0.'
  IF i NE Ngrains-1 THEN str=str+','
ENDFOR
str=str+'}'
toto=execute(str)

;one_st={wav:0.,sect_abs_pah:0.,sect_abs_vsg:0.,sect_abs_bg:0.,sect_diff_pah:0.,sect_diff_vsg:0.,sect_diff_bg:0.}
st=replicate(one_st,Nlines)

st.wav=wav_uv
FOR i=0L,Ngrains-1 DO BEGIN
  str='st.(i+1)=sect_grain_'+strtrim(i+1,2)
  toto=execute(str)
ENDFOR
FOR i=0L,Ngrains-1 DO BEGIN
  str='st.(i+Ngrains+1)=sect_'+strtrim(i+1,2)
  toto=execute(str)
ENDFOR

;st.sect_abs_pah=sect_pah
;st.sect_abs_vsg=sect_vsg
;st.sect_abs_bg=sect_bg
;st.sect_diff_pah=sect_1
;st.sect_diff_vsg=sect_2
;st.sect_diff_bg=sect_3

return,st

END