傅立叶变换常常应用于在信号处理,其在信号处理中有着很重要的位置。下面我们就介绍一种最简单的傅立叶变换,即单位阶跃函数的傅立叶变换。然后用matlab实现单位阶跃函数的傅立叶变换。
1.傅立叶变换简介
傅立叶变换是一种线性的积分变换,常在将信号在时域(或空域)和频域之间变换时使用,在物理学和工程学中有许多应用。时域中的信号函数f(t)与他在频域中的傅立叶变换F(w)可用如下图的数学表达式表示他们之间的关系。
2.函数指令简介:在matlab中提供了两种完成傅立叶变换的途径,可以直接调用指令fourier和ifourier进行傅立叶变换。此外用户还可以利用第一步的定义,利用积分指令int进行傅立叶变换。下面是fourier和ifourier指令的调用语法。下图是matlab提供的帮助信息。
Fw=fourier(ft,t,w) %求“时域”函数ft的Fourier变换Fw
ft=ifourier(Fw,w,t) %求“频域”函数Fw的Fourier反变换ft
3.利用指令求傅立叶变换,这里我们先用heaviside(单位阶跃函数)指令生成了单位阶跃函数,然后用fourier指令进行傅立叶
变换。具体指令及结果如下(下图):
ut=heaviside(t);
UT=fourier(ut)
pi*dirac(-w) - i/w
4.求傅立叶反变换进行验算,这一步我们用反傅立叶变换指令ifourier,进行反变换来验证,然后简化表达式。结果如下图:
SUt=simple(Ut)
(pi + pi*(2*heaviside(t) - 1))/(2*pi)
SUt =
heaviside(t)
5.%画单位阶跃函数曲线(代码)
ut=heaviside(t);
kk=find(t==0);
plot(double(t(kk)),double(ut(kk)),'.r','MarkerSize',30)
hold on
ut(kk)=NaN;
plot(double(t),double(ut),'-r','LineWidth',3)
plot(double([t(kk),t(kk)]),double([ut(kk-1),ut(kk+1)]),'or','MarkerSize',10)
hold off
grid on
axis([-2,2,-0.2,1.2])
xlabel('\fontsize{14}t'),ylabel('\fontsize{14}ut')
title('\fontsize{14}Heaviside(t)')
6.画单位阶跃函数曲线(图像)下图就是 Heaviside(t) 定义的单位阶跃函数。