;+ ; NAME: ; EFAREA ; PURPOSE: ; Calculate the FCS effective area ; CATEGORY: ; Calibration ; CALLING SEQUENCE: ; area=efarea(wavlen,ichan,xtemp) ; INPUTS: ; wavlen= wavelength scalar (A) ; ichan = FCS detector (1-7) ; xtemp = XTAL bank temperature ; OPTIONAL INPUT PARAMETERS: ; none ; OUTPUTS: ; FCS effective area (cm^2) ; OPTIONAL OUTPUT PARAMETERS: ; none ; SIDE EFFECTS: ; none ; RESTRICTIONS: ; none ; PROCEDURE: ; EFAREA now calls the function FCS_WINDOW to compute ; the window transmission. ; MODIFICATION HISTORY: ; 9 Jun 1982, Fortran Program: Written, J.W. Leibacher, LPARL ; 20 Jun 1985, Written, R.A. Stern, LPARL ; 25 Feb 1988, J.R. Lemen, LPARL ;- FUNCTION EFAREA, WAVLEN, ICHAN, XTEMP ;corrected version AREA = [REPLICATE (46.68,4),REPLICATE( 8.72,3)] ; geometric area COLLIM = [ 0.12, 0.13, 0.14, 0.13, 0.11, 0.11, 0.12 ] ; collimator transmission ; ; note that this version uses 2d correction as in WLFCS by Lemen (TWOD.PRO). ; SINE = WAVLEN / TWOD ( ICHAN, XTEMP) ; temp corrected 2d THETA = ASIN(SINE) COSINE = COS( THETA ) S2 = 2. * SINE * COSINE C2 = COSINE^2 - SINE^2 WL = WAVLEN ; ; ; Beam cutoff by detector window at log wavelength ; ; ; from J. Leibacher, 4 June, 1982 ; X = [80., 130., 142., 101., 85., 107., 112.] Y = [REPLICATE( 112.,4),REPLICATE(147.,3)] ; VW = 1. < ( 0.5 + ( Y(ICHAN-1) * C2 + X(ICHAN-1) * S2 ) / 102.6 ) ; ; ; Shadowing by windowing support bars ; ; ; from J. Leibacher, 4 June, 1982 ; CASE 1 OF ICHAN LE 4: BEGIN A = 3.5 B = 10. END ; ELSE : BEGIN A = 3. B = 4. END ENDCASE ; VBFACT = ( A * S2 + B * ABS(C2) ) / 102.6 ; ; ; ; Vignetting by window mesh ; ; ; from J. Leibacher, 4 June, 1982 ; CASE 1 OF ICHAN LE 4: VM = 0.695 * ( 1. - ABS( C2 / ( 3. * S2 ) ) ) ELSE: VM = 1. ENDCASE ; ; ; Thermal filter transmission ; ; ; J. Leibacher, 4 June, 1982 ; 16 June, 1982 modified for new thermal filter ; values from CGR ; F = [REPLICATE(0.44,5),REPLICATE(1.0,3)] S = [ 7.8E-2, 8.4E-2, 8.0E-2, 8.0E-2, 8.6E-2, REPLICATE(2.34,3)] A = [ 1.183, 1.165, 1.190, 14.100, 14.273, REPLICATE(3.371,3)] B = [ 2.51, 2.58, 2.73, 2.58, 2.60, REPLICATE(2.96,3)] ; OLD DATA .. A/ 1183., 1165., 1190., 14100., 14273., 3*3371./, ; ; allow for WL to be scalar or vector ; TEST = SIZE (WL) CASE TEST(0) OF 0: BEGIN CASE 1 OF WL LT 8.: INDEX = ICHAN WL GE 8.: INDEX = ICHAN-1 ENDCASE END ELSE: BEGIN SMALL = WHERE (WL LT 8., scnt) LARGE = WHERE (WL GE 8., lcnt) INDEX = INTARR (N_ELEMENTS(WL)) IF scnt gt 0 THEN INDEX (SMALL) = ICHAN IF lcnt gt 0 THEN INDEX (LARGE) = ICHAN - 1 END ENDCASE ; TF = F(INDEX) * EXP( -S(INDEX) * A(INDEX) * ( WL / 12.4 )^B(INDEX) ) ; ; ; Crystal cutoff at short wavelengths ; ; ; J. Leibacher, 4 June, 1982 ; XL = [200., 150., 150., 170., 180., 170., 170.] ; VX = 1. < XL(ICHAN-1) * SINE / 102.6 ; ; ; Transmission of detector window ; ; TW = FCS_WINDOW(ICHAN,WL,S2) ; Uses Henke absorption coefficients ; ; ; Absorbtion in detector gas ; AT = [ 2.263, 2.157, 2.250, 2.329, 0.641, 0.600, 0.332] ;AT = [ 2.3028, 2.2155, 2.2480, 2.3149, 0.641, 0.600, 0.332] ; A/ 2.263, 2.157, 2.250, 2.329, 0.641, 0.600, 0.332/,; old data BT = [ 2.573, 2.714, 2.908, 2.972, 3.109, 3.060, 2.733 ] ;BT = [ 2.6095, 2.7770, 2.8841, 2.9403, 3.109, 3.060, 2.733 ] ; B/ 2.573, 2.714, 2.908, 2.972, 3.109, 3.060, 2.733/ ; old data ; CASE 1 OF ICHAN LE 4: $ G = 1. - EXP( -5.6 * 0.82 * AT(ICHAN-1) * ( WL / 12.4 )^BT(ICHAN-1)/S2 ) ELSE: G = 1. ENDCASE ; VB = 1. - VBFACT / ( VW * VX ) ; ; combined calculation of all factors to get effective area ; ; EF = AREA(ICHAN-1) * TF * COLLIM(ICHAN-1) * VX * VW * VB * VM * TW * G RETURN, EF END