用matlab画出连续时间信号的时域波形及其幅频特性曲线,信号为f(t)= sin(2*pi*100*t)+sin(2*pi*500*t),t的取值范围为[0,0.1]
时间: 2024-12-08 21:17:29 浏览: 97
熟悉MATLAB软件的相关函数的使用方法各种信号的时域波形.doc
在MATLAB中,你可以使用`plot`函数来绘制连续时间信号的时域波形,并通过`fft`函数计算其幅度频率特性(即频谱)。下面是创建给定信号`f(t)`= `sin(2*pi*100*t) + sin(2*pi*500*t)`在0到0.1秒范围内时域波形和幅频特性的步骤:
```matlab
% 定义时间变量
t = linspace(0, 0.1, 1000); % 生成1000个等间距点,0到0.1秒
% 创建信号
f_t = sin(2*pi*100*t) + sin(2*pi*500*t);
% 绘制时域波形
figure;
plot(t, f_t);
xlabel('Time (s)');
ylabel('Amplitude');
title('Continuous-Time Signal - Time Domain');
% 计算并绘制幅频特性
F = abs(fft(f_t));
df = freqz(f_t, 1, length(F)); % 使用fftshift和abs得到幅频数据
fs = 1/(t(2)-t(1)); % 采样率
freq_axis = df(1:length(df)/2) / fs; % 只保留正频率部分
magnitude_axis = F(1:length(F)/2) ./ length(f_t); % 幅度归一化
figure;
plot(freq_axis, magnitude_axis);
xlabel('Frequency (Hz)');
ylabel('Magnitude');
title('Continuous-Time Signal - Frequency Domain');
grid on;
阅读全文