[数字信号处理]从傅里叶级数到傅里叶变换

序列傅里叶变换

三角函数

三角函数系

三角函数系,就是以下的一系列三角函数

[0(也就是sin(0x)),1(也就是cos(0x))\ sin(x),cos(x)\ sin(2x),cos(2x)\ ...\ sin(nx),cos(nx) ]

三角函数的正交性

以下的积分总是成立的,我们从以上的任取两个不同的三角函数,求他们相乘之后在([-pi,pi])的积分,他们总会等于(0),例如

[int_{-pi}^{pi}sin(nx)sin(mx)dx=0,n eq m\ int_{-pi}^{pi}sin(nx)cos(mx)dx=0,n eq m\ int_{-pi}^{pi}cos(nx)cos(mx)dx=0,n eq m\ ]

欧拉公式

众所周知,欧拉公式如下

[e^{i heta}=cos heta+isin heta\ ]

其中$i=sqrt{-1} $,

求导证明欧拉公式

[f( heta)=frac{e^{i heta}}{cos heta+isin heta}\ f'( heta)=frac{ie^{i heta}(cos heta+isin heta)-e^{i heta}(-sin heta+icos heta)}{(cos heta+isin heta)^2}\ =frac{ie^{i heta}cos heta-e^{i heta}sin heta+e^{i heta}sin heta-ie^{i heta}cos heta}{(cos heta+isin heta)^2}\ =0\ 导数=0,那么函数是一个参数\ 显然f( heta)=1\ 所以证明完成 ]

泰勒展开证明欧拉公式

[e^x=sum_{i=0}^{infty}frac{x^i}{i!}\ cosx=1-frac{x^2}{2!}+frac{x^4}{4!}...\ sinx=x-frac{x^3}{3!}+frac{x^5}{5!}...\ 所以e^{i heta}=cos heta+i*sin heta ]

三角函数变形

[1:e^{i heta}=cos heta+isin heta\ 2:e^{-i heta}=cos heta-isin heta\ 1-2:e^{i heta}-e^{-i heta}=2isin heta\ 1+2:e^{i heta}+e^{-i heta}=2cos heta ]

最终我们可以得到

[cos heta=frac{1}{2}(e^{i heta}+e^{-i heta})\ sin heta=-frac{1}{2}i(e^{i heta}-e^{-i heta}) ]

冷知识:

求解一个式子(sinx=C,Cin R).

在世俗的眼光看来,只有当(Cin [-1,1])的时候才能有解.

然而,如果(x)是虚数的话,对于任意的(Cin R)都有解.

特殊情况的傅里叶级数

如果有一个周期为(2pi)的函数,也就是$ f(x)=f(x+2pi)$.

那么它可以被转化为

[f(x)=sum_{n=0}^{infty}a_ncos(nx)+sum_{n=0}^{infty}b_nsin(nx) ]

为什么要用三角函数

  1. 他们有周期性
  2. 任意一个函数都满足(f(x)=frac{f(x)+f(-x)}{2}+frac{f(x)-f(-x)}{2}),也就是可以表达成一个偶函数和一个奇函数的和.而(sin(x))是一个奇函数,(cos(x))是一个偶函数,所以用他们可以构造出任意一个函数.

为什么要有a和b

(sin(x),cos(x))的值域在([-1,1]),非常有限,所以我们需要(a_n,b_n)来调节他的大小.

如果把(n=0)的那一项单独拿出来可以表示成

[f(x)=a_0cos(0)+b_0sin(0)+sum_{n=1}^{infty}a_ncos(nx+sum_{n=1}^{infty}b_nsin(nx)\ =a_0+sum_{n=1}^{infty}a_ncos(nx)+sum_{n=1}^{infty}b_nsin(nx) ]

如果我们对这个函数积分,最后会得到.

[a_0=frac{1}{2pi}int_{-pi}^{pi}f(x)dx ]

如果把公式改成

[f(x)==frac{a_0}{2}+sum_{n=1}^{infty}a_ncos(nx)+sum_{n=1}^{infty}b_nsin(nx) ]

这里就可以写成

[a_0=frac{1}{pi}int_{-pi}^{pi}f(x)dx ]

所以在很多地方,这个(a_0)会被写成$frac{a_0}{2} $

确定a0

由以上证明,我们可以知道

[a_0=frac{1}{pi}int_{-pi}^{pi}f(x)dx ]

确定an和bn

(a_n)的计算,如果有一个(cos(mx),m eq n),那么

[int_{-pi}^{pi}f(x)cos(mx)dx\ =int_{-pi}^{pi}frac{a_0}{2}cos(mx)dx+int_{-pi}^{pi}sum_{n=1}^{infty}a_ncos(nx)cos(mx)dx+int_{-pi}^{pi}sum_{n=1}^{infty}sin(nx)cos(mx)dx\ =int_{-pi}^{pi}sum_{n=1}^{infty}a_ncos(nx)cos(mx)dx\ 因为正交性,只有n=m的那一项不为0\ int_{-pi}^{pi}f(x)cos(nx)dx=int_{-pi}^{pi}a_ncos(nx)cos(nx)dx\ =a_npi\ a_n=frac{1}{pi}int_{-pi}^{pi}f(x)cos(nx)dx ]

(b_n)的计算同理.

[b_n=frac{1}{pi}int_{-pi}^{pi}g(x)sin(nx)dx ]

傅里叶级数

转换成特殊的周期

对于更一般的,如果一个函数的周期是(2L),也就是(f(t)=f(t+2L)).

考虑换元

[x=frac{pi}{L}t,t=frac{L}{pi}x ]

那么原式就变成(f(frac{L}{pi}x)=f(frac{L}{pi}x+2L)),他的周期就是(2pi)了.

假设(g(x)=f(frac{L}{pi}x)),那么根据上文,它可以转换成

[g(x)=frac{a_n}{2}+sum_{n=1}^{infty}a_ncos(nx)+sum_{n=1}^{infty}b_nsin(nx) ]

分别可以求出

[a_0=frac{1}{pi}int_{-pi}^{pi}g(x)dx\ a_n=frac{1}{pi}int_{-pi}^{pi}g(x)cos(nx)dx\ b_n=frac{1}{pi}int_{-pi}^{pi}g(x)sin(nx)dx ]

最终形式

之后把(x=frac{pi}{L}t)代进去,积分是上下界是

[int_{-pi}^{pi}dx=int_{-L}^{L}dfrac{pi}{L}t\ frac{1}{pi}int_{-pi}^{pi}dx=frac{1}{L}int_{-L}^{L}dt ]

上面的式子就变成了

[f(t)=frac{a_n}{2}+sum_{n=1}^{infty}a_ncos(frac{npi}{L}t)+sum_{n=1}^{infty}b_nsin(frac{npi}{L}t)\ a_0=frac{1}{pi}int_{-L}^{L}f(t)dt\ a_n=frac{1}{pi}int_{-L}^{L}f(t)cos(frac{npi}{L}t)dt\ b_n=frac{1}{pi}int_{-L}^{L}f(t)sin(frac{npi}{L}t)dt\ ]

其他符号

为了方便,在应用中会定义以下符号

[周期T=2L\ 角速度omega=frac{pi}{L}=frac{2pi}{T}\ 频率f=frac{1}{L} ]

所以傅里叶级数也可以表示成

[f(t)=frac{a_n}{2}+sum_{n=1}^{infty}a_ncos(nomega t)+sum_{n=1}^{infty}b_nsin(nomega t)\ ]

复数形式的傅里叶级数

把上面的三角函数的变形代入傅里叶级数

[cos heta=frac{1}{2}(e^{i heta}+e^{-i heta})\ sin heta=-frac{1}{2}i(e^{i heta}-e^{-i heta})\ f(t)=frac{a_n}{2}+sum_{n=1}^{infty}a_ncdotfrac{1}{2}(e^{inomega t}+e^{-inomega t})-sum_{n=1}^{infty}b_ncdotfrac{1}{2}i(e^{inomega t}-e^{-inomega t})\ =f(t)=frac{a_n}{2}+sum_{n=1}^{infty}frac{a_n-ib_n}{2}e^{inomega t}+sum_{n=1}^{infty}frac{a_n-ib_n}{2}e^{-inomega t}\ =frac{a_n}{2}+sum_{n=1}^{infty}frac{a_n-ib_n}{2}e^{inomega t}+sum_{n=-infty}^{-1}frac{a_{-n}-ib_{-n}}{2}e^{inomega t}\ =sum_{i=0}^{0}frac{a_n}{2}e^{inomega t}+sum_{n=1}^{infty}frac{a_n-ib_n}{2}e^{inomega t}+sum_{n=-infty}^{-1}frac{a_{-n}-ib_{-n}}{2}e^{inomega t}\ =sum_{n=-infty}^{infty}C_ne^{inomega t} ]

计算C的值

[C_0=frac{1}{T}int_{0}^{T}f(t)dt\ C_n=frac{1}{T}int_{0}^{T}f(t)e^{-inomega t}dt,nin(0,infty)\ C_n=frac{1}{T}int_{0}^{T}f(t)e^{-inomega t}dt,nin(-infty,0)\ ]

整理一下,其实

[C_n=frac{1}{T}int_{0}^{T}f(t)e^{-inomega t}dt ]

所以

[f(t)=sum_{n=-infty}^{infty}frac{1}{T}int_{0}^{T}f(t)e^{-inomega t}dtcdot e^{inomega t} ]

傅里叶变换

如果一个函数没有周期,就是说他一直不重复,即周期趋于无穷.

原本(frac{1}{T})是离散的,但是(T)趋向正无穷之后(sum_{n=-infty}^{infty}frac{1}{T})就可以当做是一个积分了,将它记做(int_{-infty}^{infty}du).

(nomega)也换成(u).

同时

[T->infty\ int_{-frac{T}{2}}^{frac{T}{2}}dt->int_{-infty}^{infty}dt\ ]

所以

[f(t)=frac{1}{2pi}int_{-infty}^{infty}int_{-infty}^{infty}f(t)e^{-iut}dtcdot e^{iut}du\ ]

提取出中间的积分出来

[f(t)=frac{1}{2pi}int_{-infty}^{infty}F(u)cdot e^{iut}du\ F(u)=int_{-infty}^{infty}f(t)cdot e^{-iut}dt ]

这里的(F(u))就是傅里叶变换,f(t)就是傅里叶变换的逆变换.

原文地址:https://www.cnblogs.com/zzidun-pavo/p/14277901.html