CHIRPZT Chirped Z-transform Usage: c = chirpzt(f,K,fdiff) c = chirpzt(f,K,fdiff,foff) c = chirpzt(f,K,fdiff,foff,fs) Input parameters: f : Input data. K : Number of values. fdiff : Frequency increment. foff : Starting frequency. fs : Sampling frequency. Output parameters: c : Coefficient vector. c = CHIRPZT(f,K,fdiff,foff) computes K samples of the discrete-time fourier transform DTFT c of f at values c(k+1)=F(2pi(f_{off}+kf_{diff})) for k=0,dots,K-1 where F=DTFT(f). Values foff and fdiff should be in range of 0-1. If foff is ommited or empty, it is considered to be 0. If fdiff is ommited or empty, K equidistant values c(k+1)=F(2pi k/K) are computed. If even K is ommited or empty, input length is used instead resulting in the same values as fft does. c = CHIRPZT(f,K,fdiff,foff,fs) computes coefficients using frequency values relative to fs c(k+1)=F(2pi(f_{off}+kf_{diff})/fs) for k=0,dots,K-1. The input f is processed along the first non-singleton dimension or along dimension dim if specified. Examples: --------- Calculating DTFT samples of interest (aka zoom FFT): % Generate input signal fs = 8000; L = 2^10; k = (0:L-1).'; f1 = 400; f2 = 825; f = 5*sin(2*pi*k*f1/fs + pi/4) + 2*sin(2*pi*k*f2/fs - pi/3); % This is equal to fft(f) ck = chirpzt(f,L); %chirpzt to FFT error: norm(ck-fft(f)) % Frequency "resolution" in Hz fdiff = 0.4; % Frequency offset in Hz foff = 803.9; % Number of frequency values K = 125; % DTFT samples. The frequency range of interest is 803.9-853.5 Hz ckchzt = chirpzt(f,K,fdiff,foff,fs); % Plot modulus of coefficients figure(1); fax=foff+fdiff.*(0:K-1); hold on; stem(k/L*fs,abs(ck),'k'); stem(fax,abs(ckchzt),'r:'); set(gca,'XLim',[foff,foff+K*fdiff]); set(gca,'YLim',[0 1065]); xlabel('f[Hz]'); ylabel('|ck|'); % Plot phase of coefficients figure(2); hold on; stem(k/L*fs,angle(ck),'k'); stem(fax,angle(ckchzt),'r:'); set(gca,'XLim',[foff,foff+K*fdiff]); set(gca,'YLim',[-pi pi]); xlabel('f[Hz]'); ylabel('angle(ck)'); References: L. Rabiner, R. Schafer, and C. Rader. The chirp Z-transform algorithm. Audio and Electroacoustics, IEEE Transactions on, 17(2):86--92, 1969.
Url: http://ltfat.github.io/doc/fourier/chirpzt.html
See also: gga.
Package: ltfat