clear; close all; % alpha = 0;%方形窓のときα=0 % alpha = 5.4414;%ハミング窓のときα=5.4414 % alpha = 8.885;%ブラックマン窓のときα=8.885 N = 127; M = (N-1)/2; n = -M:M; T=1; A =@(alpha) alpha * sqrt(1-(2*n/(N-1)).^2); Den =@(alpha) besseli(0, A(alpha)); Num =@(alpha) besseli(0,alpha); w9 = @(alpha) Den(alpha)/Num(alpha); plot(n,w9(0),'DisplayName','α=0(方形窓)'); hold on; plot(n,w9(5.4414),'DisplayName','α=5.4414(ハミング窓)'); plot(n,w9(8.885),'DisplayName','α=8.885(ブラックマン窓)'); title('カイザー窓'); legend(); figure(); omega = linspace(0,pi,1000); W9 = 0; a = 0; for n=-M:M A =@(alpha) alpha * sqrt(1-(2*n/(N-1)).^2); Den =@(alpha) besseli(0, A(alpha)); Num =@(alpha) besseli(0,alpha); w9 = @(alpha) Den(alpha)/Num(alpha); W9 = W9 + w9(a)*exp(-j*n*omega*T); end lab = sprintf('alpha=%g',a); plot(omega*T, 20*log10(abs(W9)/max(abs(W9))),'DisplayName',lab); hold on; a = 5.4414; for n=-M:M A =@(alpha) alpha * sqrt(1-(2*n/(N-1)).^2); Den =@(alpha) besseli(0, A(alpha)); Num =@(alpha) besseli(0,alpha); w9 = @(alpha) Den(alpha)/Num(alpha); W9 = W9 + w9(a)*exp(-j*n*omega*T); end lab = sprintf('alpha=%g',a); plot(omega*T, 20*log10(abs(W9)/max(abs(W9))),'DisplayName',lab); a = 8.885; for n=-M:M A =@(alpha) alpha * sqrt(1-(2*n/(N-1)).^2); Den =@(alpha) besseli(0, A(alpha)); Num =@(alpha) besseli(0,alpha); w9 = @(alpha) Den(alpha)/Num(alpha); W9 = W9 + w9(a)*exp(-j*n*omega*T); end lab = sprintf('alpha=%g',a); plot(omega*T, 20*log10(abs(W9)/max(abs(W9))),'DisplayName',lab); legend; big;
ωT=0近傍