pro zonalwvnall,un,nx,ny,nz,nwvn,uspc,uphs,uwv ;; zonal wavenumber analyzer at a given altitude and latitude base on zonalwvn. ;; Hanli Liu, 2/00 uspc = fltarr(nx,ny,nz) uphs = uspc ;Mean flow and wave number nwvn components. Add 1 to last dimension to get wavenumber to match index number uwv = fltarr(nx,ny,nz,nwvn+1) ;Mask array wvmask = fltarr(nx) for j = 0,ny-1 do begin for k = 0,nz-1 do begin fftmp = fft(un(*,j,k)) uspc(*,j,k) = abs(fftmp)*2 uphs(*,j,k) = -atan(fftmp,/phase)/!DTOR fftmp1 = complexarr(nx) uwv(*,j,k,0) = float(fftmp1(0)) FOR iwvn = 1, nwvn DO BEGIN wvmask[iwvn] = 1. wvmask[nx-iwvn] = 1. ; wave number iwvn ;print, 'j,k,iwvn,nx-iwvn,wvmask ',j,k,iwvn,nx-iwvn,wvmask fftmp1 = fftmp*wvmask uwv(*,j,k,iwvn) = float(fft(fftmp1,1)) wvmask[iwvn] = 0. wvmask[nx-iwvn] = 0. ENDFOR endfor endfor uspc(0,*,*)=uspc(0,*,*)/2. return end