用MATLAB实现单位阶跃信号时域波形图、频域图
单位阶跃信号的数学表达式为:
$$u(t)=\begin{cases}0, & t<0\1, & t\geq0\end{cases}$$
使用MATLAB可以通过以下代码生成单位阶跃信号的时域波形图和频域图:
% 生成时间轴
t = -5:0.01:5;
% 生成单位阶跃信号
u = zeros(size(t));
u(t>=0) = 1;
% 绘制时域波形图
subplot(2,1,1);
plot(t, u);
axis([-5 5 -0.2 1.2]);
grid on;
xlabel('Time (s)');
ylabel('Amplitude');
title('Step Function');
% 计算信号的傅里叶变换
U = fftshift(fft(u));
% 生成频率轴
N = length(t);
f = (-N/2:N/2-1)/(N*0.01);
% 绘制频域图
subplot(2,1,2);
plot(f, abs(U));
grid on;
xlabel('Frequency (Hz)');
ylabel('Amplitude');
title('Frequency Spectrum of Step Function');
运行上述代码,得到的结果如下图所示:

其中,上面的图为单位阶跃信号的时域波形图,下面的图为其频域图。
可以看到,单位阶跃信号在时域上表现为一个从 $t=0$ 开始的跳跃,而在频域上表现为一个包含所有频率成分的宽带信号
原文地址: https://www.cveoy.top/t/topic/hxml 著作权归作者所有。请勿转载和采集!