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

    代码:

    %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    %%            Output Info about this m-file
    fprintf('
    ***********************************************************
    ');
    fprintf('        <DSP using MATLAB> Problem 5.5 
    
    ');
    
    banner();
    %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    
    % ----------------------------------------------
    %    1  x1(n)=5sin(0.1pi*n)   n=[0:19], N=40
    % ----------------------------------------------
    L = 20; n = [0:L-1]; N = 40; %k1 = [0 : N-1];             % wave parameters
    
    xn_1 = [5*sin(0.1*pi*n), zeros(1, N-L)];
    
    N3 = 2*length(xn_1);
    xn_3 = [xn_1 xn_1];
    
    figure('NumberTitle', 'off', 'Name', 'P5.5 xn_1 and xn_3')
    set(gcf,'Color','white'); 
    subplot(2,1,1); stem([0:N-1], xn_1);
    xlabel('n'); ylabel('x(n)');
    title('xn1 sequence in Problem 5.3, N=40');  grid on;
    subplot(2,1,2); stem([0:N3-1], xn_3);
    xlabel('n'); ylabel('x(n)');
    title('xn3 sequence, N=80');  grid on;
    
    
    %% ------------------------------------------------------
    %%                 DFS(k) of xn1 sequence
    %% ------------------------------------------------------
    k1 = [0 : length(xn_1)-1];
    %k2 = [-N : N-1];
    %k3 = [-N/2 : N/2];
    Xk_1 = dfs(xn_1, N);                                         % DFS
    magXk = abs( [ Xk_1 ] );          % DFS magnitude
    angXk = angle( [Xk_1] )/pi;       % DFS angle
    
    figure('NumberTitle', 'off', 'Name', 'P5.5 DFS(k) of xn_1')
    set(gcf,'Color','white'); 
    subplot(2,1,1); stem(k1, magXk); %axis([-N/2, N/2, -0.5, 50.5]);
    xlabel('k'); ylabel('magnitude(k)');
    title('DFS magnitude of xn1, N=40');  grid on;
    subplot(2,1,2); stem(k1, angXk); %axis([-N/2, N/2, -0.5, 50.5]);
    xlabel('k'); ylabel('angle(k)');
    title('DFS angle of xn1, N=40');  grid on;
    
    
    %% ------------------------------------------------------------
    %%                 DFS(k) of xn3 sequence
    %% ------------------------------------------------------------
    k1 = [0 : N3-1];
    %k2 = [-N : N-1];
    %k3 = [-N3/2 : N3/2];
    Xk_3 = dfs(xn_3, N3);
    magXk_3 = abs( [Xk_3]);
    angXk_3 = angle( [Xk_3])/pi;
    
    figure('NumberTitle', 'off', 'Name', 'P5.5 DFS(k) of xn_3')
    set(gcf,'Color','white'); 
    subplot(2,1,1); stem(k1, magXk_3); %axis([-N/2, N/2, -0.5, 50.5]);
    xlabel('k'); ylabel('magnitude(k)');
    title('DFS magnitude of xn3, N=80');  grid on;
    subplot(2,1,2); stem(k1, angXk_3); %axis([-N/2, N/2, -0.5, 50.5]);
    xlabel('k'); ylabel('angle(k)');
    title('DFS angle of xn3, N=80');  grid on;
    

      运行结果:

            这里假设M=2,即原序列x1重复出现2次得到新序列x3。

     

    牢记: 1、如果你决定做某事,那就动手去做;不要受任何人、任何事的干扰。2、这个世界并不完美,但依然值得我们去为之奋斗。
  • 相关阅读:
    粘包_Server
    初见UDP_Server
    初见UDP_Client
    TCP/UDP协议
    网络编程相关概念
    mmap实现大文件快速拷贝
    生成这消费者问题(多线程实现)
    线程同步互斥实现资源访问
    信号灯(线程互斥)
    线程属性
  • 原文地址:https://www.cnblogs.com/ky027wh-sx/p/9293076.html
Copyright © 2011-2022 走看看