; con_width_2.pro ; Computes SUMER Line Width Output from Input Width (Detector A and B) ; Klaus Wilhelm 03 September 1997 ; Based on P. Lemaire's calculations of 28 August 1997 ; Renamed from con_width_test.pro 27 November 1997 ; Table extended to narrower widths 03 December 1997 ; (without changing the old data for wider lines) ; Magnification adjusted to flight S/W procedures 23 September 1998 #### ; Changes are less than 0.38 % and thus not significant in this context #### ; The Full Width at Half-Maximum is obtained at three wavelengths in the first ; order of the grating (to obtain the second order the width in angstrom must be ; divided by 2). ; Lambda 680 A 1080 A 1488 A ; slit=0.3" ; Detector A ; FWHM, mA 75 77 78 mean 76.7 ; delta_lam, mA mean 46 ; Detector B ; FWHM, mA 128 110 95 ; delta_lam, mA 77 66 57 ; The calculated values agree reasonably well with widths obtained in a ; systematic study of SUMER line widths by Chae, Schuehle, and Lemaire ; (in preparation). ; Measured slit widths: ; Slit no. 1 = 26.04 micro m +- 0.8% max. +- 0.5% probable error ; Slit no. 2 = 6.23 micro m +- 3.2% max. +- 1.6% probable error ; Slit no. 4(3,5) = 6.27 micro m +- 3.2% max. +- 1.6% probable error ; Slit no. 7(6,8) = 1.76 micro m +- 11 % max. +- 5.7% probable error ; 1 arcsec corresponds to 6.316 micro m ;------------------------------------------------------------------------------- ; What to do? ; IDL> con_width_2 ; This builds up 16 look-up tables for the de-convolution. ; The tables for detector A do not depend on the wavelength. ;------------------------------------------------------------------------------- ;******************************************************************************* ; Definition of procedures ;******************************************************************************* ; Magnification_0.pro Calculates the SUMER Magnification ; Klaus Wilhelm 05 Jan 1994 ; Rev. 2 (Mean pixel size: 26.5 micro m) 10 Dec 1994 ; Here given for detector A and 1200 A 19 January 1997 ; and for detector B at 680, 1080, and 1488 A 02 September 1997 ; Software error in magnification.pro (detector B) corrected 26 March 1998 ; Rev. 3 Procedure written according to flight S/W 23 Sep. 1998 #### pro magnification_0,mag,d_lam,wavelength,detector ; Mag: Magnification slit plane/detector plane ; d_lam: Wavelength interval per pixel order=1 ; in first order d=2777.45d0; Angstroem (Grating constant) px_s_a=0.0266; mean spectral pixel size Detector A #### ; px_s_b=0.0265 used for mean pixel size of Detector B #### ra=3200.78; mm radius of grating fc=399.60; mm focal length of collimator sin_theta=order*wavelength/d cos_theta=sqrt(1-sin_theta^2) f_lambda=ra/(1+cos_theta) mag=f_lambda/fc d_lam=d*px_s_a/order/f_lambda if detector eq 'det_b' then begin case 1 of (wavelength le 880) : wave=680 (wavelength gt 880) and (wavelength le 1284): wave=1080 (wavelength gt 1284) : wave=1488 endcase lambda_n,wave,lambda_n ; #### grating_b_511,lambda_n,d_lam,mag ; #### endif return end ;******************************************************************************* pro con_width_2 for n=0,3 do begin case 1 of (n eq 0): begin slit_width=26.04 slit=1 end (n eq 1): begin slit_width=6.23 slit=2 end (n eq 2): begin slit_width=6.27 slit=4 end (n eq 3): begin slit_width=1.76 slit=7 end endcase for d=0,1 do if d eq 0 then begin detector='det_a' delta_lam=46 wavelength=1200 magnification_0,mag,d_lam,wavelength,detector half_slit_width=fix(500.*d_lam*slit_width*mag/26.5) ; in mA kernel=fltarr(500) kernel(250-half_slit_width)=fltarr(2*half_slit_width)+1 fwhm_out_c=fltarr(400) ; calculated width (FWHM) to be observed kernel_i=exp(-((findgen(500)-249.)/delta_lam)^2) for i=1.,400. do begin gauss=exp(-((findgen(2000)-999.)/i)^2) a=convol(gauss,kernel); introduces the slit effect a=convol(a,kernel_i); introduces the instrumental width p0=min(where(a gt max(a)/2.)) p0 = interpol([p0-1,p0],[a(p0-1),a(p0)],max(a)/2.) p1=max(where(a gt max(a)/2.)) p1 = interpol([p1,p1+1],[a(p1),a(p1+1)],max(a)/2.) fwhm_out_c(i-1)=p1-p0 endfor d_lam_d_in=1+indgen(400) fwhm_in=d_lam_d_in/0.6006 save,filename=$ 'con_'+strtrim(fix(slit),2)+detector+strtrim(wavelength,2)+'.rst',$ fwhm_out_c,fwhm_in,d_lam_d_in,/xdr endif else begin detector='det_b' for m=0,2 do begin case 1 of (m eq 0): begin wavelength=680 delta_lam=77 end (m eq 1): begin wavelength=1080 delta_lam=66 end (m eq 2): begin wavelength=1488 delta_lam=57 end endcase magnification_0,mag,d_lam,wavelength,detector half_slit_width=fix(500.*d_lam*slit_width*mag/26.5) ; in mA kernel=fltarr(500) kernel(250-half_slit_width)=fltarr(2*half_slit_width)+1 fwhm_out_c=fltarr(400) ; calculated width (FWHM) to be observed kernel_i=exp(-((findgen(500)-249.)/delta_lam)^2) for i=1.,400. do begin gauss=exp(-((findgen(2000)-999.)/i)^2) a=convol(gauss,kernel); introduces the slit effect a=convol(a,kernel_i); introduces the instrumental width p0=min(where(a gt max(a)/2.)) p0 = interpol([p0-1,p0],[a(p0-1),a(p0)],max(a)/2.) p1=max(where(a gt max(a)/2.)) p1 = interpol([p1,p1+1],[a(p1),a(p1+1)],max(a)/2.) fwhm_out_c(i-1)=p1-p0 endfor d_lam_d_in=1+indgen(400) fwhm_in=d_lam_d_in/0.6006 save,filename=$ 'con_'+strtrim(fix(slit),2)+detector+strtrim(wavelength,2)+'.rst',$ fwhm_out_c,fwhm_in,d_lam_d_in,/xdr endfor endelse endfor ; fwhm_out_c: FWHM of line as observed. ; d_lam_d_in, fwhm_in: Doppler width or FWHM of line (mÅ) without instrumental ; width and slit effects. return end