首页 > 代码库 > DSP using MATLAB示例Example3.16
DSP using MATLAB示例Example3.16
代码:
b = [0.0181, 0.0543, 0.0543, 0.0181]; % filter coefficient array b a = [1.0000, -1.7600, 1.1829, -0.2781]; % filter coefficient array a m = 0:length(b)-1; l = 0:length(a)-1; % index arrays m and l K = 500; k = 0:1:K; % index array k for frequencies w = k*pi/500; % freqency between 0 and +pi, [0,pi] axis divided into 501 points. num = b * exp(-j*m‘*w); % Numerator calculations den = a * exp(-j*l‘*w); % Denominator claculations H = num ./ den; % Frequency response magH = abs(H); angH = angle(H); realH = real(H); imagH = imag(H); %% -------------------------------------------------------------------- %% START H‘s mag ang real imag %% -------------------------------------------------------------------- figure(‘NumberTitle‘, ‘off‘, ‘Name‘, ‘Example3.16‘); set(gcf,‘Color‘,‘white‘); subplot(2,2,1); plot(w/pi,magH); grid on; axis([0,1,0,1.5]); title(‘Magnitude Response‘); xlabel(‘frequency in \pi units‘); ylabel(‘Magnitude |H|‘); subplot(2,2,3); plot(w/pi, angH/pi); grid on; % axis([-1,1,-1,1]); title(‘Phase Response‘); xlabel(‘frequency in \pi units‘); ylabel(‘Radians/\pi‘); subplot(‘2,2,2‘); plot(w/pi, realH); grid on; title(‘Real Part‘); xlabel(‘frequency in \pi units‘); ylabel(‘Real‘); subplot(‘2,2,4‘); plot(w/pi, imagH); grid on; title(‘Imaginary Part‘); xlabel(‘frequency in \pi units‘); ylabel(‘Imaginary‘); %% ------------------------------------------------------------------- %% END X‘s mag ang real imag %% -------------------------------------------------------------------
运行结果:
上图看出,是个低通滤波器。
DSP using MATLAB示例Example3.16
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。