已知衰减正弦序列,用matlab绘出幅频特性曲线
时间: 2023-07-20 18:31:45 浏览: 449
可以使用MATLAB中的FFT函数来计算衰减正弦序列的频谱,然后绘制幅频特性曲线。具体步骤如下:
1. 定义衰减正弦序列,设其长度为N,采样频率为Fs,衰减因子为alpha,频率为f0,相位为phi。
```matlab
N = 1024; % 序列长度
Fs = 1000; % 采样频率
alpha = 0.8; % 衰减因子
f0 = 50; % 正弦波频率
phi = pi/4; % 正弦波相位
n = 0:N-1; % 时间序列
x = alpha.^n .* sin(2*pi*f0/Fs*n + phi); % 衰减正弦序列
```
2. 计算序列的频谱,得到幅度谱和相位谱。
```matlab
X = fft(x); % 计算FFT
f = (0:N-1)/N*Fs; % 频率序列
mag = abs(X); % 幅度谱
phase = angle(X); % 相位谱
```
3. 绘制幅频特性曲线。
```matlab
semilogx(f(1:N/2), 20*log10(mag(1:N/2))); % 绘制幅频特性曲线
xlabel('Frequency (Hz)');
ylabel('Magnitude (dB)');
```
其中,semilogx函数用于绘制对数坐标下的幅频特性曲线,20*log10函数用于将幅度谱转换为dB单位。绘制结果将显示在MATLAB的图形窗口中。
阅读全文