samer@0: % apowspec - Arrow to compute power spectra samer@0: % samer@0: % apowspec :: samer@0: % [[N]] ~'analysis window' samer@0: % -> arrow( {[[N]]}, {[[dftbins(N)]]}, empty). samer@0: % samer@0: % apowspec :: samer@0: % [[M]] ~'analysis window', samer@0: % N ~'size for FFT' samer@0: % -> arrow( {[[M]]}, {[[dftbins(N)]]}, empty). samer@0: function [o,fx]=apowspec(window,N) samer@0: W=spdiag(window); samer@0: if nargin<2, N=length(window); end samer@0: fx=(0:dftbins(N)-1)/N; samer@0: o=arr(@ps); samer@0: function y=ps(x) samer@0: y=powspec(W*x,N); samer@0: end samer@0: end