编制程序求解下列两个系统的单位冲激响应与阶跃冲激响应,并绘出其图形。y[n]+0.75y[n-1]+0.125y[n-2]=x[n]-x[n-1]; y[n]=0.25{x[n-1]+x[n-2]+x[n-3]+x[n-4]}
时间: 2023-10-04 17:12:17 浏览: 196
二阶系统单位阶跃响应
好的,以下是MATLAB程序的实现:
```matlab
%定义系统的差分方程
b = [1 -1];
a = [1 -0.75 -0.125];
h = impz(b,a); %求解单位冲激响应
t = 0:length(h)-1; %时间轴
%绘制单位冲激响应
subplot(2,1,1);
stem(t,h);
title('Unit impulse response');
xlabel('Time (n)');
ylabel('Amplitude');
grid on;
%求解阶跃响应
n = 0:50;
u = ones(size(n));
y = filter(b,a,u);
%绘制阶跃响应
subplot(2,1,2);
stem(n,y);
title('Step impulse response');
xlabel('Time (n)');
ylabel('Amplitude');
grid on;
```
程序的实现步骤如下:
1. 定义系统的差分方程,使用impz函数求解单位冲激响应h,并定义时间轴t。
2. 绘制单位冲激响应的图形,使用stem函数。
3. 定义阶跃信号u和时间轴n,并使用filter函数求解系统的阶跃响应y。
4. 绘制阶跃响应的图形,使用stem函数。
程序运行后,将会分别绘制出单位冲激响应和阶跃响应的图像。
阅读全文