PRO aver5m,date,iaver,waver,daver ;Normalization and averaging over 5 minutes, ;i.e. summing 15 consecutive frames. ;INPUT: filtered and registered movies isi*.bin (IR) and ; wsi*.bin (WL). ; date = 23 or 25 ;OUTPUT: IAVER, WAVER, IR and WL movies averaged ; over 5-minute time intervals, to study motions ; in active regions. Their difference is in DAVER. ;PARAMETERS: on_error,1 if (date ne 23) and (date ne 25) then $ message,'Sorry, I do not know how to handle this dataset' dat=strtrim(date,2) if date eq 23 then begin sio=[3,408,320,118] lx1=10 ; clean subfield lx2=397 ly1=10 ly2=309 lz1=7 lz2=110 qx1=246 ; subfield of quiet region qx2=379 qy1=182 qy2=291 n=8 ;number of averaging intervals (in 1 movie) ;limits of averaging intervals (frames) bo=[[0,14],[12,26],[25,39],[38,52],[51,65],[64,78],[77,91],[89,103]] fact=2.3 ; factor for difference movie endif else begin sio=[3,388,300,150] lx1=10 ;clean subfield lx2=377 ly1=10 ly2=289 lz1=7 lz2=142 qx1=304 ; subfield of quiet region qx2=363 qy1=135 qy2=274 n=10 ;number of averaging intervals (in 1 movie) ;limits of averaging intervals (frames) bo=[[0,14],[13,27],[26,40],[40,54],[54,68],[68,82],[82,96],[95,109], $ [108,122],[121,135]] fact=2.3 ; factor for difference movie endelse mov=intarr(sio(1),sio(2),sio(3)) ;READING AND TRIMMING DATA - 1st part print,'reading *a.bin files' openr,1,'../irdata/isi'+dat+'a.bin' readu,1,mov close,1 iino=float(mov(lx1:lx2,ly1:ly2,lz1:lz2)) si=size(iino) openr,1,'../wldata/wsi'+dat+'a.bin' readu,1,mov close,1 wino=float(mov(lx1:lx2,ly1:ly2,lz1:lz2)) ;NORMALIZATION - 1st part print,'normalizing' for i=0,si(3)-1 do begin iino(0,0,i)=iino(*,*,i)/mean(iino(qx1:qx2,qy1:qy2,i)) wino(0,0,i)=wino(*,*,i)/mean(wino(qx1:qx2,qy1:qy2,i)) endfor ;AVERAGING OVER 5-MINUTE INTERVALS (summation of 15 frames) iaver=fltarr(si(1),si(2),2*n) ; OUTPUT arrays waver=iaver print,'averaging' for i=0,n-1 do begin iaver(0,0,i)=total(iino(*,*,bo(0,i):bo(1,i)),3)/15. waver(0,0,i)=total(wino(*,*,bo(0,i):bo(1,i)),3)/15. endfor ;----------------- ;READING AND TRIMMING DATA - 2nd part print,'reading *b.bin files' openr,1,'../irdata/isi'+dat+'b.bin' readu,1,mov close,1 iino=float(mov(lx1:lx2,ly1:ly2,lz1:lz2)) si=size(iino) openr,1,'../wldata/wsi'+dat+'b.bin' readu,1,mov close,1 wino=float(mov(lx1:lx2,ly1:ly2,lz1:lz2)) ;NORMALIZATION - 2nd part print,'normalizing' for i=0,si(3)-1 do begin iino(0,0,i)=iino(*,*,i)/mean(iino(qx1:qx2,qy1:qy2,i)) wino(0,0,i)=wino(*,*,i)/mean(wino(qx1:qx2,qy1:qy2,i)) endfor ;AVERAGING OVER 5-MINUTE INTERVALS (summation of 15 frames) print,'averaging' for i=0,n-1 do begin iaver(0,0,i+n)=total(iino(*,*,bo(0,i):bo(1,i)),3)/15. waver(0,0,i+n)=total(wino(*,*,bo(0,i):bo(1,i)),3)/15. endfor ;DIFFERENCING daver=(waver-1.)-(iaver-1.)*fact ; difference movie WL-IR END