已知离散时间系统差分方程y(n)-0.5y(n-1)+0.06y(n-2)=x(n)+x(n-1),求该系统系统函数,并画极零点图,并通过freqz函数求频率响应
时间: 2024-12-26 14:30:02 浏览: 5
为了求出离散时间系统的系统函数,我们首先需要将差分方程转换为Z域表达式。给定的差分方程是:
\[ y(n) - 0.5y(n-1) + 0.06y(n-2) = x(n) + x(n-1) \]
对方程两边进行Z变换,得到:
\[ Y(z)(1 - 0.5z^{-1} + 0.06z^{-2}) = X(z)(1 + z^{-1}) \]
因此,系统函数 \( H(z) \) 为输入 \( X(z) \) 与输出 \( Y(z) \) 之比:
\[ H(z) = \frac{Y(z)}{X(z)} = \frac{1 + z^{-1}}{1 - 0.5z^{-1} + 0.06z^{-2}} \]
接下来,我们需要绘制该系统的极零点图。极点是使分母为零的 \( z \) 值,而零点是使分子为零的 \( z \) 值。
对于极点:
\[ 1 - 0.5z^{-1} + 0.06z^{-2} = 0 \]
解这个二次方程可以得到极点的位置。假设根为 \( z_1 \) 和 \( z_2 \),则:
\[ z^2 - 0.5z + 0.06 = 0 \]
使用求根公式:
\[ z = \frac{0.5 \pm \sqrt{0.25 - 4 \times 0.06}}{2} = \frac{0.5 \pm \sqrt{0.25 - 0.24}}{2} = \frac{0.5 \pm \sqrt{0.01}}{2} = \frac{0.5 \pm 0.1}{2} \]
所以,极点为:
\[ z_1 = 0.3, \quad z_2 = 0.2 \]
对于零点:
\[ 1 + z^{-1} = 0 \]
解得:
\[ z = -1 \]
因此,零点为:
\[ z = -1 \]
现在我们可以绘制极零点图。在复平面上标出极点 \( z_1 = 0.3 \), \( z_2 = 0.2 \) 和零点 \( z = -1 \)。
最后,通过 `freqz` 函数求频率响应。在MATLAB中,可以使用以下代码:
```matlab
% 定义系统函数的分子和分母系数
b = [1 1]; % 分子系数
a = [1 -0.5 0.06]; % 分母系数
% 计算频率响应
[H, f] = freqz(b, a, 512);
% 绘制幅度响应
figure;
plot(f, abs(H));
title('Frequency Response');
xlabel('Frequency (normalized)');
ylabel('Magnitude');
grid on;
```
这段代码将计算并绘制系统的频率响应。
阅读全文