编程:已知描述离散系统的差分方程为6y(n) − 5y(n −1) + 2y(n − 2) = x(n) + x(n − 2),系统输入序列x(n)=(3/4)nε(n). 用 MATLAB 绘出输入序列波形;求出输出序列(0-20)样值;绘出输出序列波形。
时间: 2023-11-18 15:06:23 浏览: 101
MATLAB.rar_matlab 中文_微分方程 离散_数学建模_数据 工具箱_统计
好的,以下是 MATLAB 代码:
```
% 定义差分方程
b = [1, 0, 1];
a = [6, -5, 2];
% 定义输入序列
n = 0:20;
x = (3/4).^n .* (n>=0);
% 计算输出序列
y = filter(b, a, x);
% 绘制输入序列波形图
subplot(2,1,1);
stem(n, x);
xlabel('n');
ylabel('x(n)');
title('输入序列波形');
% 绘制输出序列波形图
subplot(2,1,2);
stem(n, y);
xlabel('n');
ylabel('y(n)');
title('输出序列波形');
```
解释一下代码:
首先定义了差分方程的系数,其中 `b` 是分子系数,`a` 是分母系数。
然后定义输入序列 `x(n)`,这里用指数函数和阶跃函数相乘的方式生成。
接着利用 `filter` 函数求出输出序列 `y(n)`。
最后用 `subplot` 函数将输入序列波形图和输出序列波形图画在一张图上,分别用 `stem` 函数绘制。
阅读全文