zoukankan      html  css  js  c++  java
  • 《DSP using MATLAB》Problem 4.11

    代码:

    %% ----------------------------------------------------------------------------
    %%            Output Info about this m-file
    fprintf('
    ***********************************************************
    ');
    fprintf('        <DSP using MATLAB> Problem 4.11 
    
    ');
    
    banner();
    %% ----------------------------------------------------------------------------
    
    format rat;
    %% -------------------------------------------------
    %%            1      X1(z)    rightsided
    %% -------------------------------------------------
    
    b = [1, -1, -4, 4];             nb = [0:3]; 
    a = [1, -11/4, 13/8, -1/4];     na = [0:3];                 
    
    %[p, r] = deconv(b, a)
    %[p, np, r, nr] = deconv_m(b, nb, a, na)
    [R, p, C] = residuez(b, a)
    
    %[delta, n] = impseq(0,0,7);
    %x = filter(b, a, delta)
    
    %[b,a] = residuez(R, p, C)
    
    %Mp = abs((p))'
    %Ap = angle((p))'
    
    figure('NumberTitle', 'off', 'Name', 'Problem 4.11.1  X1(z)')
    set(gcf,'Color','white'); 
    zplane(b, a);                                           % row vector
    title('Zero-Pole Plot');  xlabel('Re'); ylabel('Im'); grid on;
    
    
    
    fprintf('
    -------------------- X2(z) ------------------ 
    
    ');
    %% -------------------------------------------------
    %%            2      X2(z)    absolutely summable
    %% -------------------------------------------------
    
    b = [1, 1, -4, 4];              nb = [0:3]; 
    a = [1, -11/4, 13/8, -1/4];     na = [0:3];                 
    
    %[p, r] = deconv(b, a)
    %[p, np, r, nr] = deconv_m(b, nb, a, na)
    [R, p, C] = residuez(b, a)
    
    %[delta, n] = impseq(0,0,7);
    %x = filter(b, a, delta)
    
    %[b,a] = residuez(R, p, C)
    
    %Mp = abs((p))'
    %Ap = angle((p))'
    
    figure('NumberTitle', 'off', 'Name', 'Problem 4.11.2 X2(z)')
    set(gcf,'Color','white'); 
    zplane(b, a);                                           % row vector
    title('Zero-Pole Plot');  xlabel('Re'); ylabel('Im'); grid on;
    
    
    
    fprintf('
    -------------------- X3(z) ------------------ 
    
    ');
    %% -------------------------------------------------
    %%            3      X3(z)    leftsided
    %% -------------------------------------------------
    
    b = [1, -3, 4, 1];              nb = [0:3]; 
    a = [1, -4, 1, -0.16];          na = [0:3];                 
    
    %[p, r] = deconv(b, a)
    %[p, np, r, nr] = deconv_m(b, nb, a, na)
    [R, p, C] = residuez(b, a)
    
    %[delta, n] = impseq(0,0,7);
    %x = filter(b, a, delta)
    
    %[b,a] = residuez(R, p, C)
    
    Mp = abs((p))'
    Ap = angle((p))'/pi              % pole angle in pi units
    
    figure('NumberTitle', 'off', 'Name', 'Problem 4.11.3 X3(z)')
    set(gcf,'Color','white'); 
    zplane(b, a);                                           % row vector
    title('Zero-Pole Plot');  xlabel('Re'); ylabel('Im'); grid on;
    
    
    fprintf('
    -------------------- X4(z) ------------------ 
    
    ');
    %% -------------------------------------------------
    %%            4      X4(z)    leftsided
    %% -------------------------------------------------
    
    b = [0, 0, 1];                  nb = [0:2]; 
    a = [1, 2, 1.25, 0.25];         na = [0:3];                 
    
    %[p, r] = deconv(b, a)
    %[p, np, r, nr] = deconv_m(b, nb, a, na)
    [R, p, C] = residuez(b, a)
    
    %[delta, n] = impseq(0,0,7);
    %x = filter(b, a, delta)
    
    %[b,a] = residuez(R, p, C)
    
    %Mp = abs((p))'
    %Ap = angle((p))'
    
    figure('NumberTitle', 'off', 'Name', 'Problem 4.11.4 X4(z)')
    set(gcf,'Color','white'); 
    zplane(b, a);                                           % row vector
    title('Zero-Pole Plot');  xlabel('Re'); ylabel('Im'); grid on;
    
    
    fprintf('
    -------------------- X5(z) ------------------ 
    
    ');
    %% -------------------------------------------------
    %%            5      X5(z)    leftsided
    %% -------------------------------------------------
    
    b = [0, 0, 0, 1];                  nb = [0:3]; 
    a = [1, 0, -0.5, 0, 0.25*0.25];    na = [0:3];                 
    
    %[p, r] = deconv(b, a)
    %[p, np, r, nr] = deconv_m(b, nb, a, na)
    [R, p, C] = residuez(b, a)
    
    %[delta, n] = impseq(0,0,7);
    %x = filter(b, a, delta)
    
    %[b,a] = residuez(R, p, C)
    
    %Mp = abs((p))'
    %Ap = angle((p))'
    
    figure('NumberTitle', 'off', 'Name', 'Problem 4.11.5 X5(z)')
    set(gcf,'Color','white'); 
    zplane(b, a);                                           % row vector
    title('Zero-Pole Plot');  xlabel('Re'); ylabel('Im'); grid on;
    

      运行结果:

    牢记: 1、如果你决定做某事,那就动手去做;不要受任何人、任何事的干扰。2、这个世界并不完美,但依然值得我们去为之奋斗。
  • 相关阅读:
    char 型变量中能不能存贮一个中文汉字,为什么?
    du 和 df 的定义,以及区别?
    怎样查看一个 linux 命令的概要与用法?假设你在/bin 目录中偶然看到一个你从没见过的的命令,怎样才能知道它的作用和用法呢?
    把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?
    如何使用 Spring Boot 实现分页和排序?
    如何在 Spring Boot 中禁用 Actuator 端点安全性?
    Dubbo 集群容错有几种方案?
    Collection和 Collections的区别?
    当你需要给命令绑定一个宏或者按键的时候,应该怎么做呢?
    怎样一页一页地查看一个大文件的内容呢?
  • 原文地址:https://www.cnblogs.com/ky027wh-sx/p/8531386.html
Copyright © 2011-2022 走看看