《DSP using MATLAB》示例Example 9.5
代码:
- %% ------------------------------------------------------------------------
- %% Output Info about this m-file
- fprintf('\n***********************************************************\n');
- fprintf(' <DSP using MATLAB> Exameple 9.5 \n\n');
- time_stamp = datestr(now, 31);
- [wkd1, wkd2] = weekday(today, 'long');
- fprintf(' Now is %20s, and it is %7s \n\n', time_stamp, wkd2);
- %% ------------------------------------------------------------------------
- n = 0:256; x = cos(pi*n); w = [0:100]*pi/100;
- %% -----------------------------------------------------------------
- %% Plot
- %% -----------------------------------------------------------------
- Hf1 = figure('units', 'inches', 'position', [1, 1, 8, 6], ...
- 'paperunits', 'inches', 'paperposition', [0, 0, 6, 4], ...
- 'NumberTitle', 'off', 'Name', 'Exameple 9.5');
- set(gcf,'Color','white');
- TF = 10;
- % (a) Interpolation by I = 2, L = 4
- I = 2; [y, h] = interp(x, I); H = freqz(h, 1, w); H = abs(H);
- subplot(2, 2, 1);
- plot(w/pi, H); axis([0, 1, 0, I+0.1]); grid on;
- xlabel('\omega in \pi units'); ylabel('Magnitude');
- title('I = 2, L = 4', 'fontsize', TF);
- set(gca, 'xtick', [0, 0.5, 1]);
- set(gca, 'ytick', [0:1:I]);
- % (b) Interpolation by I = 4, L = 4
- I = 4; [y, h] = interp(x, I); H = freqz(h, 1, w); H = abs(H);
- subplot(2, 2, 2);
- plot(w/pi, H); axis([0, 1, 0, I+0.2]); grid on;
- xlabel('\omega in \pi units'); ylabel('Magnitude');
- title('I = 4, L = 4', 'fontsize', TF);
- set(gca, 'xtick', [0, 0.25, 1]);
- set(gca, 'ytick', [0:1:I]);
- % (c) Interpolation by I = 8, L = 4
- I = 8; [y, h] = interp(x, I); H = freqz(h, 1, w); H = abs(H);
- subplot(2, 2, 3);
- plot(w/pi, H); axis([0, 1, 0, I+0.4]); grid on;
- xlabel('\omega in \pi units'); ylabel('Magnitude');
- title('I = 8, L = 4', 'fontsize', TF);
- set(gca, 'xtick', [0, 0.125, 1]);
- set(gca, 'ytick', [0:2:I]);
- % (d) Interpolation by I = 8, L = 10
- I = 8; [y, h] = interp(x, I, 10); H = freqz(h, 1, w); H = abs(H);
- subplot(2, 2, 4);
- plot(w/pi, H); axis([0, 1, 0, I+0.4]); grid on;
- xlabel('\omega in \pi units'); ylabel('Magnitude');
- title('I = 8, L = 10', 'fontsize', TF);
- set(gca, 'xtick', [0, 0.125, 1]);
- set(gca, 'ytick', [0:2:I]);
运行结果:
前三张图L=4,和想象的一样,滤波器是低通性质,其通带边界近似在π/I附近,并且幅度谱最大增益为I。另外注意到滤波器的过渡带和缓,
因此和理想滤波器相差较大。最后一张,L=10,和想象一样,过渡带比较陡。
任何超过L=10的情况都会导致滤波器不稳定,因此在设计过程中是必须避免的。
《DSP using MATLAB》示例Example 9.5的更多相关文章
- DSP using MATLAB 示例Example3.21
代码: % Discrete-time Signal x1(n) % Ts = 0.0002; n = -25:1:25; nTs = n*Ts; Fs = 1/Ts; x = exp(-1000*a ...
- DSP using MATLAB 示例 Example3.19
代码: % Analog Signal Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); % Discrete-time Signa ...
- DSP using MATLAB示例Example3.18
代码: % Analog Signal Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); % Continuous-time Fou ...
- DSP using MATLAB 示例Example3.23
代码: % Discrete-time Signal x1(n) : Ts = 0.0002 Ts = 0.0002; n = -25:1:25; nTs = n*Ts; x1 = exp(-1000 ...
- DSP using MATLAB 示例Example3.22
代码: % Discrete-time Signal x2(n) Ts = 0.001; n = -5:1:5; nTs = n*Ts; Fs = 1/Ts; x = exp(-1000*abs(nT ...
- DSP using MATLAB 示例Example3.17
- DSP using MATLAB示例Example3.16
代码: b = [0.0181, 0.0543, 0.0543, 0.0181]; % filter coefficient array b a = [1.0000, -1.7600, 1.1829, ...
- DSP using MATLAB 示例 Example3.15
上代码: subplot(1,1,1); b = 1; a = [1, -0.8]; n = [0:100]; x = cos(0.05*pi*n); y = filter(b,a,x); figur ...
- DSP using MATLAB 示例 Example3.13
上代码: w = [0:1:500]*pi/500; % freqency between 0 and +pi, [0,pi] axis divided into 501 points. H = ex ...
- DSP using MATLAB 示例 Example3.12
用到的性质 代码: n = -5:10; x = sin(pi*n/2); k = -100:100; w = (pi/100)*k; % freqency between -pi and +pi , ...
随机推荐
- Win7 64位安装VS2013无法连接远程数据库
win7 64位安装vs2013后连接远程数据库出现下面的问题:A first chance exception of type 'System.AccessViolationException' o ...
- 堆 Heap
2018-03-01 20:38:34 堆(Heap)是可以用来实现优先的队列的数据结构,而不是堆栈. 若采用数组或者链表实现优先队列 若采用树的结构 如果采用二叉搜索树,那么每次删除,比如删除最大值 ...
- OpenCL双边滤波实现美颜功能
OpenCL是一个并行异构计算的框架,包括intel,AMD,英伟达等等许多厂家都有对它的支持,不过英伟达只到1.2版本,主要发展自己的CUDA去了.虽然没有用过CUDA,但个人感觉CUDA比Open ...
- C#/JAVA 程序员转GO/GOLANG程序员笔记大全(DAY 03)
go语言当中,没有 class 的概念,那么面向对象的编程思想如何展现呢,go语言中对结构体的使用 struct. package main import "fmt" type P ...
- hack games
记下,有时间玩玩~ wargame http://www.wechall.net/lang_ranking/en --------------- Monyer系列(黑客游戏) 1. http://mo ...
- 从工程角度看C++观察者模式中的接口是否需要提供默认的实现
在C++中,我们会经常用到观察者模式(回调模式,Delegate模式等,意思都一样),比如当Source中的某个参数发生了变化时,我们通过观察者模式进行回调通知,下面是一个例子: class Sour ...
- Comprehensive Python Cheatsheet
ToC = { '1. Collections': [List, Dict, Set, Range, Enumerate, Namedtuple, Iterator, Generator], '2. ...
- Python内置函数详解-总结篇
参考链接:http://www.cnblogs.com/sesshoumaru/p/6140987.html
- 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境 项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿 ...
- nginx默认配置
user nobody; worker_processes 2; worker_cpu_affinity 000000001000 000000010000; worker_rlimit_nofile ...