《DSP using MATLAB》示例Example4.14


代码:
b = [1]; a = [1, -1.5, 0.5];               %  
[R, p, C] = residuez(b,a)
Mp = (abs(p))'
Ap = (angle(p))'/pi
% check
n = [0:7]; x = (1/4).^n; xic = [1, -2];
format long;  
y1 = filter(b,a,x,xic)
y2 = (1/3)*(1/4).^n + (1/2).^n + (2/3)*ones(1,8)    
Y = [4, 10]; xic = filtic(b,a,Y);
%% ----------------------------------------------
%%   START a    determine H(z) and sketch    
%% ----------------------------------------------
figure('NumberTitle', 'off', 'Name', 'Example4.14 H(z) its pole-zero plot')
set(gcf,'Color','white'); 
zplane(b,a);
title('pole-zero plot'); grid on;
%% ----------------------------------------------
%%    END
%% ----------------------------------------------
%% --------------------------------------------------------------
%%    START    b   |H|   <H
%%    1st form of freqz
%% --------------------------------------------------------------
[H,w] = freqz(b,a,500);                 % 1st form of freqz
magH  = abs(H);  angH  = angle(H);  realH  = real(H);  imagH  = imag(H);
%% ================================================
%%              START H's  mag ang real imag
%% ================================================
figure('NumberTitle', 'off', 'Name', 'Example4.14 H its mag ang real imag');
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 H's  mag ang real imag
%% ==================================================
%% ---------------------------------------------------------------
%%    END    b   |H|   <H
%% ---------------------------------------------------------------
%% --------------------------------------------------------------
%%    START    b   |H|   <H
%%    3rd form of freqz
%% --------------------------------------------------------------
w = [0:1:500]*pi/500;     H = freqz(b,a,w); 
%[H,w] = freqz(b,a,200,'whole');                 % 3rd form of freqz
magH  = abs(H);  angH  = angle(H);  realH  = real(H);  imagH  = imag(H);
%% ================================================
%%              START H's  mag ang real imag
%% ================================================
figure('NumberTitle', 'off', 'Name', 'Example4.14  using 3rd form freqz ');
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 H's  mag ang real imag
%% ==================================================
%% ---------------------------------------------------------------
%%    END    b   |H|   <H
%% ---------------------------------------------------------------
结果:





    牢记:
1、如果你决定做某事,那就动手去做;不要受任何人、任何事的干扰。2、这个世界并不完美,但依然值得我们去为之奋斗。
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号