《DSP using MATLAB》Problem 5.3
这段时间爬山去了,山中林密荆棘多,沟谷纵横,体力增强不少。



代码:
%% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%% Output Info about this m-file
fprintf('\n***********************************************************\n');
fprintf(' <DSP using MATLAB> Problem 5.3 \n\n'); banner();
%% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ % ------------------------------------------
% 1 x1(n)=5sin(0.1pi*n) n=[0:19], N=40
% ------------------------------------------
L = 20; n = [0:L-1]; N = 40; k = [-N/2:N/2]; % wave parameters
xn_1 = [5*sin(0.1*pi*n), zeros(1, N-L)];
Xk_1 = dfs(xn_1, N); % DFS
magXk = abs( [Xk_1(N/2+1 : N) Xk_1(1 : N/2+1)] ); % DFS magnitude
angXk = angle( [Xk_1(N/2+1 : N) Xk_1(1 : N/2+1)] )/pi; % DFS angle figure('NumberTitle', 'off', 'Name', 'P5.3 xn_1')
set(gcf,'Color','white');
stem([0:N-1], xn_1);
xlabel('n'); ylabel('x(n)');
title('xn1 sequence, N=40'); grid on; %% ------------------------------------------------------
%% DFS(k) of xn1 sequence
%% ------------------------------------------------------
figure('NumberTitle', 'off', 'Name', 'P5.3 DFS(k) of xn_1')
set(gcf,'Color','white');
subplot(2,1,1); stem(k, 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(k, angXk); %axis([-N/2, N/2, -0.5, 50.5]);
xlabel('k'); ylabel('angle(k)');
title('DFS angle of xn1, N=40'); grid on; % ------------------------------------------
% 2 x2(n)=5sin(0.1pi*n) n=[0:19], N=80
% ------------------------------------------
L = 20; n = [0:L-1]; N = 80; k = [-N/2:N/2]; % wave parameters
xn_2 = [5*sin(0.1*pi*n), zeros(1, N-L)];
Xk_2 = dfs(xn_2, N); % DFS
magXk = abs( [Xk_2(N/2+1 : N) Xk_2(1 : N/2+1)] ); % DFS magnitude
angXk = angle([Xk_2(N/2+1 : N) Xk_2(1 : N/2+1)] )/pi; % DFS angle figure('NumberTitle', 'off', 'Name', 'P5.3 xn_2')
set(gcf,'Color','white');
stem([0:N-1], xn_2);
xlabel('n'); ylabel('x(n)');
title('xn2 sequence, N=80'); grid on; %% ------------------------------------------------------
%% DFS(k) of xn2 sequence
%% ------------------------------------------------------
figure('NumberTitle', 'off', 'Name', 'P5.3 DFS(k) of xn_2')
set(gcf,'Color','white');
subplot(2,1,1); stem(k, magXk); %axis([-N/2, N/2, -0.5, 50.5]);
xlabel('k'); ylabel('magnitude(k)');
title('DFS magnitude of xn2, N=80'); grid on;
subplot(2,1,2); stem(k, angXk); %axis([-N/2, N/2, -0.5, 50.5]);
xlabel('k'); ylabel('angle(k)');
title('DFS angle of xn2, N=80'); grid on;
运行结果:




这两个序列的基本周期不同,但是二者非零元素值相同。x2(n)相当于在x1的末尾进行补零操作,加了40个零。
《DSP using MATLAB》Problem 5.3的更多相关文章
- 《DSP using MATLAB》Problem 7.27
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...
- 《DSP using MATLAB》Problem 7.26
注意:高通的线性相位FIR滤波器,不能是第2类,所以其长度必须为奇数.这里取M=31,过渡带里采样值抄书上的. 代码: %% +++++++++++++++++++++++++++++++++++++ ...
- 《DSP using MATLAB》Problem 7.25
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...
- 《DSP using MATLAB》Problem 7.24
又到清明时节,…… 注意:带阻滤波器不能用第2类线性相位滤波器实现,我们采用第1类,长度为基数,选M=61 代码: %% +++++++++++++++++++++++++++++++++++++++ ...
- 《DSP using MATLAB》Problem 7.23
%% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output Info a ...
- 《DSP using MATLAB》Problem 7.16
使用一种固定窗函数法设计带通滤波器. 代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
- 《DSP using MATLAB》Problem 7.15
用Kaiser窗方法设计一个台阶状滤波器. 代码: %% +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
- 《DSP using MATLAB》Problem 7.14
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...
- 《DSP using MATLAB》Problem 7.13
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...
- 《DSP using MATLAB》Problem 7.12
阻带衰减50dB,我们选Hamming窗 代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...
随机推荐
- Asp.Net 中 HTTP 和 HTTPS 切换
Asp.Net 中 HTTP 和 HTTPS 切换 目的 HTTP,超文本传输协议,明文传输,无状态,服务器默认端口80 HTTPS,具有SSL加密的HTTP,加密传输,需要申请ca证书,服务器默 ...
- django搭建博客
https://andrew-liu.gitbooks.io/django-blog/content/index.html
- Saiku权限控制(四)
Saiku的权限控制主要包含两方面的权限: 数据源(Cube)权限控制 和 保存好的文件以及目录权限控制 一.新增Saiku用户信息与角色信息 Saiku默认的用户就是admin,这也是权限最高的一个 ...
- flask-admin有用的例子
flask-admin主页: https://github.com/flask-admin/flask-admin flask-admin克隆地址: https://github.com/flask- ...
- java Calendar类得到每个月的周末是几号的工具方法
public static List getWeekendInMonth(int year, int month) { List list = new ArrayList(); Calendar ca ...
- 向量空间模型(VSM)在文档相似度计算上的简单介绍
C#实现在: http://blog.csdn.net/Felomeng/archive/2009/03/25/4023990.aspx 向量空间模型(VSM:Vector space model)是 ...
- Linux学习: 触摸屏驱动
一.Linux输入子系统的结构: 二.触摸屏驱动代码: s3c_ts.c #include <linux/errno.h> #include <linux/kernel.h> ...
- gc图波峰波谷一直上升问题
垃圾回收曲线,波峰和波谷一直上升.正常是波峰波谷在同一水平线上,可以想象如果程序继续运行下去,老年代内存回收后也不断上升,当达到老年代满了的时候,就会报内存溢出错误. 用jmap -histo pid ...
- PE文件 03 重定位表
0x01 重定位表结构 重定位表是由数据目录表中的第六个成员指出的: typedef struct _IMAGE_DATA_DIRECTORY { DWORD VirtualAddress; D ...
- DevExpress ASP.NET Core Controls v18.2新功能详解
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Core ...