对于一个变量a,matlab中定义需要这样 syms a;

定义之后就可以写由变量组成的式子,比如 c=(1+a^-1)^5;

可以用expand(c) 就能把c展开成多项式,每一项的系数就可以看到。

freqz的用法

MATLAB提供了专门用于求离散系统频响特性的函数freqz(),调用freqz()的格式有以下两种:

l        [H,w]=freqz(B,A,N)

B和A分别为离散系统的系统函数分子、分母多项式的系数向量,N为正整数,返回量H则包含了离散系统频响 在 0——pi范围内N个频率等分点的值,向量w则包含 范围内N个频率等分点。调用中若N默认,默认值为512。

l        [H,w]=freqz(B,A,N,’whole’)

该调用格式将计算离散系统在0—pi范内的N个频率等分店的频率响应的值。

因此,可以先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数及plot()函数,即可绘制出系统在 或 范围内的频响曲线。

绘制如下系统的频响曲线

H(z)=(z-0.5)/z

MATLAB命令如下:

B=[1 -0.5];

A =[1 0];

[H,w]=freqz(B,A,400,'whole');

 H是频率响应的幅度,w是0---pi内的400个点

Hf=abs(H);

Hx=angle(H);

clf

figure(1)

plot(w,Hf)

title('离散系统幅频特性曲线')

figure(2)

plot(w,Hx)

title('离散系统相频特性曲线')

这样画出来的是线性的,要想获得db格式的幅度,需要转换 20*log10(Hf)

之后再画就是db格式的

也可以直接用freqz(b,a)这样就会画出幅频响应和相频响应,幅频响应直接是db格式的幅度。

在输入数据中,b,a的数据应该按照如下格式写下系数

z^0,z^-1,z^-2,z^-3......z^-m。

也就是先写常数,再写z^-1的系数再写z^-2的系数。。。。。

最新文章

  1. (转)socket Aio demo
  2. should be mapped with insert="false" update="false
  3. UML基础系列:用例图
  4. 实用js代码大全
  5. Java Web开发之Servlet获取ckeditor内容
  6. POJ 2503 字典树
  7. Deep Learning 6_深度学习UFLDL教程:Softmax Regression_Exercise(斯坦福大学深度学习教程)
  8. 线程入门之start()和run()的区别
  9. [C++基础]随机数,随机种子数
  10. 阿里巴巴2013年实习生笔试题A
  11. 关于如果修改 ie 浏览器 文本模式
  12. 获取Delphi所有类的类信息
  13. [每日一题] 11gOCP 1z0-052 :2013-09-2 ADDM(Automatic Database Diagnostic Monitor)...................A28
  14. Sqlserver in 实现 参数化查询 XML类型
  15. Solr入门指南
  16. .NET对象占内存多少
  17. Ionic在线打包IOS平台应用
  18. Java兔子问题
  19. MYSQL 内存模型
  20. 强迫症犯了,忍不住赞一下slf4j包Logger.java的优雅代码

热门文章

  1. JMeter并发性测试
  2. const,var,let笔记
  3. [mongodb] MMAP 和wiredTiger 的比较
  4. Linux系统运行级别配置
  5. 高亮显示UILabel中的子串
  6. ACM-ICPC北京站总结
  7. 计算机网络 - IP和端口
  8. cmake的使用方法
  9. 图示:DOM元素各种位置属性
  10. 深入理解Lambda