编写MATLAB程序,已知离散线性时不变系统的系统函数,分别用impz函数和dstep函数求解系统的冲激响应和阶跃响应。
时间: 2024-10-18 10:08:12 浏览: 166
matlab.rar_impz 函数_impz在MATLAB中_matlab impz_matlab冲激串_冲激响应
5星 · 资源好评率100%
在MATLAB中,`impz`函数用于计算传递函数的零、极点以及单位脉冲响应(Impulse Response),而`dstep`函数则是用来直接计算传递函数对应的单位阶跃响应。下面是使用这两个函数的基本步骤:
假设我们已经有一个系统的传递函数 `H(s)`,它可以用 `num` 和 `den` 这两个向量表示分子多项式和分母多项式。例如:
```matlab
num = [1 2]; % 分子多项式的系数
den = [1 0.5 1]; % 分母多项式的系数
sys = tf(num, den); % 创建传递函数对象
```
**1. 使用 `impz` 函数求冲激响应**:
```matlab
h_impulse = impz(sys); % 计算单位冲激响应
```
`h_impulse` 就是系统的冲激响应向量。
**2. 使用 `dstep` 函数求阶跃响应**:
```matlab
h_step = dstep(sys); % 计算单位阶跃响应
```
`h_step` 则是系统的阶跃响应序列。
注意,`impz` 和 `dstep` 都返回的是离散时间信号,如果需要将其可视化,可以使用 `plot` 或 `stem` 函数。
阅读全文