使用MATLAB编写程序,能够接受从键盘输入的系统函数的分子分母多项式系数向量,并绘制 出系统的零极点图、系统的单位冲激响应、系统的幅度频率响应和相位频率相应的图形。
时间: 2023-11-27 18:50:52 浏览: 120
(完整word)信号与系统matlab实验-习题4-连续系统的零极点分布与频响特性的关系.doc
这是一个比较复杂的问题,需要用到MATLAB的信号处理和控制工具箱。我们可以先分步骤实现每个功能,再组合起来。
以下是一个基本的程序框架,供参考:
```
% 从键盘读取分子分母多项式系数向量
num = input('请输入系统的分子多项式系数向量:');
den = input('请输入系统的分母多项式系数向量:');
% 计算系统的零极点
z = roots(num);
p = roots(den);
% 绘制零极点图
figure;
zplane(z, p);
title('零极点图');
% 计算系统的单位冲激响应
h = impz(num, den);
% 绘制单位冲激响应图
figure;
stem(h);
title('单位冲激响应');
% 计算系统的频率响应
[H, w] = freqz(num, den);
% 绘制幅度频率响应图
figure;
plot(w, abs(H));
title('幅度频率响应');
xlabel('频率(rad/s)');
ylabel('幅度');
% 绘制相位频率响应图
figure;
plot(w, angle(H));
title('相位频率响应');
xlabel('频率(rad/s)');
ylabel('相位(rad)');
```
需要注意的是,这个程序只能处理离散时间系统。如果需要处理连续时间系统,需要使用MATLAB的控制工具箱中的函数。另外,输入的多项式系数向量需要按照从高到低的次数排列。
阅读全文