设有一系统,其输入输出关系由以下差分方程确定: y(n)-1/2y(n-1)= x(n)+1/2x(n-1) 设系统是因果性的。 (1)求该系统的单位抽样响应; 《2)由(1)的结果,利用卷积和求输人x(n)=ejwn的响应。这个matlab实验代码
时间: 2024-04-04 20:32:35 浏览: 197
根据差分方程,该系统的传递函数为:
H(z) = Y(z) / X(z) = (1 + 0.5z^(-1)) / (1 - 0.5z^(-1))
为了求该系统的单位抽样响应,我们需要将传递函数 H(z) 中的 z 替换成单位抽样函数 u(z),即:
H(u) = Y(u) / X(u) = (1 + 0.5u^(-1)) / (1 - 0.5u^(-1))
将上述传递函数 H(u) 进行部分分式分解,得到:
H(u) = 1 + u^(-1) + 0.5(1 - u^(-1))
可以看出,该系统的单位抽样响应为:
h(n) = δ(n) + δ(n-1) + 0.5(δ(n) - δ(n-1))
其中,δ(n) 为单位脉冲函数。
为了求输入信号 x(n) = ejwn 的响应,我们需要将其与单位抽样响应进行卷积,即:
y(n) = x(n) * h(n)
代入 x(n) = ejwn 和 h(n) 的表达式,得到:
y(n) = ejwn(δ(n) + δ(n-1) + 0.5(δ(n) - δ(n-1)))
化简可得:
y(n) = ejwn(1 + 0.5δ(n-1))
以下是 MATLAB 实验代码:
% 定义输入信号 x(n)
n = 0:50;
w = pi/4;
x = exp(1j * w * n); % ejwn
% 求单位抽样响应 h(n)
h = [1, 1, 0.5, -0.5];
% 求输入信号 x(n) 的响应 y(n)
y = exp(1j * w) * [1, 0.5*exp(-1j*w), zeros(1, length(n)-2)];
% 绘制输入信号和系统响应图像
subplot(2,1,1);
stem(n, abs(x));
title('Input Signal x(n)');
xlabel('n');
ylabel('|x(n)|');
subplot(2,1,2);
stem(n, abs(y));
title('System Response y(n)');
xlabel('n');
ylabel('|y(n)|');
阅读全文