;1/29/14 DMS -- added normalization constant ;8/17/14 DMS -- Take it out again with correctly normalized v4 DRM. pro barrel_sp_make_drm, ss, altitude=altitude, angledist=angledist, whichone=whichone if not keyword_set(angledist) then angledist=1 case angledist of 1: pitch='iso' 2: pitch='mir' else: message,'invalid value for angular distribution index.' endcase if keyword_set(altitude) then ss.altitude=altitude else altitude=ss.altitude if altitude eq -1. then message,'altitude undefined.' if not keyword_set(whichone) then whichone=1 if whichone ne 1 and whichone ne 2 then message,'bad response matrix ID number.' ;Set up the response matrix ctbins = ss.ebins elebins = ss.elebins nct = n_elements(ctbins) nel = n_elements(elebins) edge_products,ctbins,mean=ctmean,width=ctwidth edge_products,elebins,mean=elmean,width=elwidth drm = fltarr(nel-1,nct-1) ;Build the DRM row by row: for i=0, nel-2 do begin row = barrel_sp_drm_row(altitude,elmean[i],ctbins,pitch=pitch) drm[i,*] = row endfor ss.elebins = elebins if whichone eq 1 then begin ss.drm = drm ss.drmtype = angledist endif else begin ss.drm2 = drm ss.drm2type = angledist endelse end