昨晚手机在看X信的时候突然黑屏,开机重启都没反应,今天维修师傅说使用时间太长了,还是买个新的吧,心疼银子啊!

这里只放前两个小题的图。

代码:

1、

  1. %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2. %% Output Info about this m-file
  3. fprintf('\n***********************************************************\n');
  4. fprintf(' <DSP using MATLAB> Problem 5.28 \n\n');
  5.  
  6. banner();
  7. %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  8.  
  9. % -------------------------------------------------------------------
  10. % Computer N-point Circular Convolution
  11. % -------------------------------------------------------------------
  12. n1 = [0:5];
  13. x1 = sin(pi*n1/3);
  14. N1 = length(x1);
  15.  
  16. n2 = [0:7];
  17. x2 = cos(pi*n2/4);
  18. N2 = length(x2);
  19.  
  20. % --------------------------------------------
  21. % 1st way TIME domain
  22. % --------------------------------------------
  23. N = 10;
  24. n = [0:N-1];
  25.  
  26. y1 = circonvt(x1, x2, N);
  27.  
  28. % --------------------------------------------
  29. % 2nd way ---- circular conv(FREQ domain)
  30. % --------------------------------------------
  31. y2 = circonvf(x1, x2, N);
  32.  
  33. % --------------------------------------------
  34. % 3rd way --- Cir Conv (Circulant Matrix)
  35. % --------------------------------------------
  36. y3 = circonvt_v3(x1, x2, N);
  37.  
  38. figure('NumberTitle', 'off', 'Name', 'P5.28.1 x1(n) and x2(n)')
  39. set(gcf,'Color','white');
  40. subplot(2,1,1); stem(n1, x1);
  41. xlabel('n'); ylabel('x1(n)');
  42. title('x1(n), N=6'); grid on;
  43. subplot(2,1,2); stem(n2, x2);
  44. %axis([-N/2, N/2, -0.5, 50.5]);
  45. xlabel('n'); ylabel('x2(n)');
  46. title('x2(n), N=8'); grid on;
  47.  
  48. figure('NumberTitle', 'off', 'Name', 'P5.28.1 Cir-Conv, N=10')
  49. set(gcf,'Color','white');
  50. subplot(3,1,1); stem(n, y1);
  51. xlabel('n'); ylabel('y1(n)');
  52. title('Time Domain, y1(n)'); grid on;
  53. subplot(3,1,2); stem(n, y2);
  54. %axis([-N/2, N/2, -0.5, 50.5]);
  55. xlabel('n'); ylabel('y2(n)');
  56. title('FREQ domain, y2(n)'); grid on;
  57. subplot(3,1,3); stem(n, y3);
  58. %axis([-N/2, N/2, -0.5, 50.5]);
  59. xlabel('n'); ylabel('y3(n)');
  60. title('Circulant Matrix, y3(n)'); grid on;

  运行结果:

计算圆周卷积的两序列

三种方法计算圆周卷积

2、

代码:

  1. %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2. %% Output Info about this m-file
  3. fprintf('\n***********************************************************\n');
  4. fprintf(' <DSP using MATLAB> Problem 5.28 \n\n');
  5.  
  6. banner();
  7. %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  8.  
  9. % -------------------------------------------------------------------
  10. % Computer N-point Circular Convolution
  11. % -------------------------------------------------------------------
  12. N = 32;
  13. n1 = [0:N-1];
  14. x1 = cos(2*pi*n1/N);
  15. N1 = length(x1);
  16.  
  17. n2 = [0:N-1];
  18. x2 = sin(2*pi*n2/N);
  19. N2 = length(x2);
  20.  
  21. % --------------------------------------------
  22. % 1st way TIME domain
  23. % --------------------------------------------
  24. %N = 10;
  25. n = [0:N-1];
  26.  
  27. y1 = circonvt(x1, x2, N);
  28.  
  29. % --------------------------------------------
  30. % 2nd way ---- circular conv(FREQ domain)
  31. % --------------------------------------------
  32. y2 = circonvf(x1, x2, N);
  33.  
  34. % --------------------------------------------
  35. % 3rd way --- Cir Conv (Circulant Matrix)
  36. % --------------------------------------------
  37. y3 = circonvt_v3(x1, x2, N);
  38.  
  39. figure('NumberTitle', 'off', 'Name', 'P5.28.2 x1(n) and x2(n)')
  40. set(gcf,'Color','white');
  41. subplot(2,1,1); stem(n1, x1);
  42. xlabel('n'); ylabel('x1(n)');
  43. title('x1(n)=cos(2*pi*n1/N), N=32'); grid on;
  44. subplot(2,1,2); stem(n2, x2);
  45. %axis([-N/2, N/2, -0.5, 50.5]);
  46. xlabel('n'); ylabel('x2(n)');
  47. title('x2(n)=sin(2*pi*n2/N), N=32'); grid on;
  48.  
  49. figure('NumberTitle', 'off', 'Name', 'P5.28.2 Cir-Conv, N=32')
  50. set(gcf,'Color','white');
  51. subplot(3,1,1); stem(n, y1);
  52. xlabel('n'); ylabel('y1(n)');
  53. title('Time Domain, y1(n)'); grid on;
  54. subplot(3,1,2); stem(n, y2);
  55. %axis([-N/2, N/2, -0.5, 50.5]);
  56. xlabel('n'); ylabel('y2(n)');
  57. title('FREQ domain, y2(n)'); grid on;
  58. subplot(3,1,3); stem(n, y3);
  59. %axis([-N/2, N/2, -0.5, 50.5]);
  60. xlabel('n'); ylabel('y3(n)');
  61. title('Circulant Matrix, y3(n)'); grid on;

  运行结果:

代码结构都一样

圆周卷积结果

《DSP using MATLAB》Problem 5.28的更多相关文章

  1. 《DSP using MATLAB》Problem 8.28

    代码: %% ------------------------------------------------------------------------ %% Output Info about ...

  2. 《DSP using MATLAB》Problem 7.28

    又是一年五一节,朋友圈都是晒名山大川的,晒脑袋的,我这没钱的待在家里上网转转吧 频率采样法设计带通滤波器,过渡带中有一个样点 代码: %% ++++++++++++++++++++++++++++++ ...

  3. 《DSP using MATLAB》Problem 7.36

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...

  4. 《DSP using MATLAB》Problem 7.27

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...

  5. 《DSP using MATLAB》Problem 7.26

    注意:高通的线性相位FIR滤波器,不能是第2类,所以其长度必须为奇数.这里取M=31,过渡带里采样值抄书上的. 代码: %% +++++++++++++++++++++++++++++++++++++ ...

  6. 《DSP using MATLAB》Problem 7.25

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...

  7. 《DSP using MATLAB》Problem 7.24

    又到清明时节,…… 注意:带阻滤波器不能用第2类线性相位滤波器实现,我们采用第1类,长度为基数,选M=61 代码: %% +++++++++++++++++++++++++++++++++++++++ ...

  8. 《DSP using MATLAB》Problem 7.23

    %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output Info a ...

  9. 《DSP using MATLAB》Problem 7.16

    使用一种固定窗函数法设计带通滤波器. 代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...

随机推荐

  1. react中用pace.js

    pace.js不支持npm, 所以只能直接下载下来,当作普通js引入 我在用的时候怎么都引不到组件里去用 后来终于找到方法了,直接上图了 1.先将pace文件下载来放在公共js目录下,pace.les ...

  2. oracle servicename 与SID的区别

    http://blog.csdn.net/z69183787/article/details/25706269

  3. jsp自定义标签开发

    参考:http://blog.csdn.net/lw001x/article/details/7589302

  4. ORM版学员管理系统1

    ORM版学员管理系统 班级表 表结构 class Class(models.Model): id = models.AutoField(primary_key=True) # 主键 cname = m ...

  5. net core 获取网站目录

    AppContext.BaseDirectory 获取项目的根目录

  6. minifilter

    暑假刚开始的时候,参照<寒江独钓>这本书,用VS2015写过的一个minifilter的框架,今天在博客上分享出来. VS2015已经有了minifilter的框架模板,直接生成了mini ...

  7. Gym - 100971J (思维+简单bfs)

    题目链接:http://codeforces.com/gym/100971/problem/J J. Robots at Warehouse time limit per test 2.0 s mem ...

  8. MYSQL锁表问题解决

    本文实例讲述了MYSQL锁表问题的解决方法.分享给大家供大家参考,具体如下: 很多时候!一不小心就锁表!这里讲解决锁表终极方法! 案例一 ? 1 mysql>show processlist; ...

  9. MacBookPro-OSX

    修改用户名 sudo hostname macbookpro sudo scutil --set HostName macbookpro sudo scutil --set LocalHostName ...

  10. Day8作业及默写

    1,有如下文件,a1.txt,里面的内容为: 老男孩是最好的培训机构, 全心全意为学生服务, 只为学生未来,不为牟利. 我说的都是真的.哈哈 分别完成以下的功能: 将原文件全部读出来并打印. with ...