Mercurial > hg > ishara
diff arrows/dsp/aspectrum.m @ 0:672052bd81f8
Initial partial import.
author | samer |
---|---|
date | Wed, 19 Dec 2012 22:38:28 +0000 |
parents | |
children | beb8a3f4a345 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/arrows/dsp/aspectrum.m Wed Dec 19 22:38:28 2012 +0000 @@ -0,0 +1,19 @@ +% aspectrum - frequency spectrum arrow +% +% aspectrum :: +% N:natural ~'size of waveform blocks to expect' +% options { +% specfn :: ([[N,T]]->[[dftbins(N),T]])/ @powspec ~'function to compute spectra'; +% window :: (N:natural->[[N]]) / @hanning ~'function to compute window' +% } +% -> arrow({[[N,T]]},{[[dftbins(N),T]]},empty). + +function o=aspectrum(N,varargin) + opts=prefs('specfn',@powspec,'window',@hanning,varargin{:}); + specfn=opts.specfn; + w=spdiag(opts.window(N)); + o=arr(@fn); + function y=fn(x) + y=specfn(w*x); + end +end