初识傅里叶变换
博主还是高中生的时候,在B站上经常可以刷到“用傅里叶变换做XX曲线”。当时便对傅里叶变换充满好奇,一个变换居然可以做出这么多曲线,于是对傅里叶变换记忆比较深刻,后来从FFT算法再次与这个老朋友见面,就多了解了一下,这篇文章博主就尝试解释下傅里叶变换。另外函数线性空间是博主自己瞎取的名字,字面意思,具体是否恰当就不要深究了。
线性空间
博主从《线性代数》课程中已经了解过向量空间的概念。不难知道向量空间的元素都是形如
a
⃗
=
{
a
1
,
a
2
,
a
3
,
.
.
.
a
n
}
\vec{a} ={\{a_1,a_2,a_3,...a_n\}}
a={a1,a2,a3,...an}的数组,如果将
a
⃗
\vec{a}
a抽象成更一般的元素如函数,矩阵等即可构成更一般的线性空间。
类似的,向量空间的维数,基向量,线性相关,线性表示,正交向量等概念就可套用在线性空间上。但是在这之前,我们要先定义线性空间的概念:
定义1:若非空集合V中所有元素对加法和数乘封闭,并满足向量空间的八条公理则称V为线性空间。具体八条公理这里不在赘述,有兴趣的读者可以自行百度。
函数线性空间
有了定义,由于本文讨论的是函数线性空间,有前人的经验告诉我们,在实数域上的所有连续函数构成一个线性空间。另外需要申明的是,后文中的傅里叶变换会出现复数形式,不过由前人的经验,傅里叶变换的时候函数也是一个线性空间,我们可以放心使用这个结论。
线性无关
现在我们定义函数的线性无关:
定义2:若
k
1
f
(
x
1
)
+
k
2
f
(
x
2
)
+
.
.
.
+
k
n
f
(
x
n
)
=
0
k_1f(x_1)+k_2f(x_2)+...+k_nf(x_n)=0
k1f(x1)+k2f(x2)+...+knf(xn)=0恒成立,当且仅当常数
k
1
,
k
2
,
.
.
.
k
n
k_1,k_2,...k_n
k1,k2,...kn全部为0成立,则称
f
(
x
1
)
,
f
(
x
2
)
.
.
.
f
(
x
n
)
f(x_1),f(x_2)...f(x_n)
f(x1),f(x2)...f(xn)线性无关。
这里举例几组比较著名的线性无关的向量,由于第一组与第二组是我们讨论的重点。我们把这两个组编个号,第三组和第四组也是常见的线性无关的函数组,但具体通项公式较为复杂,这里抛砖引玉给出名称,有兴趣的读者可以补充。
第一组:G1:
1
,
x
−
x
0
,
(
x
−
x
0
)
2
,
.
.
.
(
x
−
x
0
)
n
.
(
x
0
为
常
数
)
1,x-x_0,(x-x_0)^2,...(x-x_0)^n.(x_0为常数)
1,x−x0,(x−x0)2,...(x−x0)n.(x0为常数)
第二组:G2:
s
i
n
π
T
x
,
c
o
s
π
T
x
,
s
i
n
2
π
T
x
,
c
o
s
2
π
T
x
,
.
.
.
.
.
.
.
.
.
.
s
i
n
n
π
T
x
,
c
o
s
n
π
T
x
.
(
T
)
为
常
数
。
sin \frac{\pi }{T}x,cos \frac{\pi }{T}x,sin \frac{2\pi }{T}x,cos \frac{2\pi }{T}x,..........sin \frac{n\pi }{T}x,cos \frac{n\pi }{T}x.(T)为常数。
sinTπx,cosTπx,sinT2πx,cosT2πx,..........sinTnπx,cosTnπx.(T)为常数。
第三组:(勒让德基)
f
1
=
1.
f1=1.
f1=1.
f
1
=
x
−
(
1
,
x
)
(
1
,
1
)
⋅
1
=
x
f1=x - \frac{(1,x)}{(1,1)}·1 = x
f1=x−(1,1)(1,x)⋅1=x
f
2
=
x
2
−
(
1
,
x
2
)
(
1
,
1
)
⋅
1
−
(
x
,
x
2
)
(
x
,
1
)
⋅
x
=
x
2
−
1
3
f2=x^2 - \frac{(1,x^2)}{(1,1)}·1 - \frac{(x,x^2)}{(x,1)}·x = x^2-\frac{1}{3}
f2=x2−(1,1)(1,x2)⋅1−(x,1)(x,x2)⋅x=x2−31
…
第四组:(切比雪夫基)
f
1
=
1.
f1=1.
f1=1.
f
2
=
x
.
f2=x.
f2=x.
f
3
=
2
x
2
−
1.
f3=2x^2-1.
f3=2x2−1.
f
4
=
4
x
3
−
3
x
.
f4=4x^3-3x.
f4=4x3−3x.
…
基
你已经看到了上文中出现了基的概念,这里的基与向量空间中的基概念完全对应。
定义3:若函数组
f
(
x
1
)
,
f
(
x
2
)
.
.
.
f
(
x
n
)
f(x_1),f(x_2)...f(x_n)
f(x1),f(x2)...f(xn)线性无关,且对于任意一个实函数
f
(
x
)
f(x)
f(x)都可以由
f
(
x
1
)
,
f
(
x
2
)
.
.
.
f
(
x
n
)
f(x_1),f(x_2)...f(x_n)
f(x1),f(x2)...f(xn)线性表示,则称
f
(
x
1
)
,
f
(
x
2
)
.
.
.
f
(
x
n
)
f(x_1),f(x_2)...f(x_n)
f(x1),f(x2)...f(xn)为函数线性空间的一个基。
线性表示概念与向量空间完全一致,这里不再赘述。
值得注意的是向量空间的基的元素一般为有限个,而函数线性空间的基的元素一般为无限个,这个概念博主也是才了解,具体证明欢迎读者补充。
因此由线性空间的维数定义,函数空间一般都是无穷维的。
现在你可以证明G1和G2都是实函数线性空间的一组基。G2与傅里叶级数有关,将在以后讨论。
由于G1:
1
,
x
−
x
0
,
(
x
−
x
0
)
2
,
.
.
.
(
x
−
x
0
)
n
.
(
x
0
为
常
数
)
1,x-x_0,(x-x_0)^2,...(x-x_0)^n.(x_0为常数)
1,x−x0,(x−x0)2,...(x−x0)n.(x0为常数)是一个基,因此对于任意实函数
f
(
x
)
f(x)
f(x),都可以由G1线性表示,即:
f
(
x
)
=
k
1
+
k
2
(
x
−
x
0
)
+
k
3
(
x
−
x
0
)
2
+
.
.
.
k
n
+
1
(
x
−
x
0
)
n
f(x) = k_1+k_2(x-x_0)+k_3(x-x_0)^2+...k_{n+1}(x-x_0)^n
f(x)=k1+k2(x−x0)+k3(x−x0)2+...kn+1(x−x0)n,这个式子即泰勒展开式,这时候是不是有点豁然开朗,别急,我们继续往下走。
正交
在定义正交前应先定义内积
定义4: 若
(
α
⃗
,
β
⃗
)
(\vec{\alpha},\vec{\beta})
(α,β)线性空间内积,则
(
α
⃗
,
β
⃗
)
(\vec{\alpha},\vec{\beta})
(α,β)应该满足:
1)(对称性):
(
α
⃗
,
β
⃗
)
=
(
β
⃗
,
α
⃗
)
(\vec{\alpha},\vec{\beta})= (\vec{\beta},\vec{\alpha})
(α,β)=(β,α)
2)(可加性):
(
α
⃗
+
β
⃗
,
γ
⃗
)
=
(
α
⃗
,
γ
⃗
)
+
(
β
⃗
,
γ
⃗
)
(\vec{\alpha}+\vec{\beta},\vec{\gamma})= (\vec{\alpha},\vec{\gamma})+(\vec{\beta},\vec{\gamma})
(α+β,γ)=(α,γ)+(β,γ)
3)(齐次性):
(
λ
α
⃗
,
β
⃗
)
=
λ
(
α
⃗
,
β
⃗
)
(\lambda\vec{\alpha},\vec{\beta})= \lambda(\vec{\alpha},\vec{\beta})
(λα,β)=λ(α,β)
4)(非负性):
(
α
⃗
,
α
⃗
)
≥
0
(\vec{\alpha},\vec{\alpha})\geq 0
(α,α)≥0
在函数中显然积分运算满足以上要求,我们可以定义
(
f
(
x
)
,
g
(
x
)
)
=
∫
a
b
f
(
x
)
g
(
x
)
f(x),g(x))=\int_a^{b} f(x)g(x)
f(x),g(x))=∫abf(x)g(x).
现在我们可以定义正交了。它和向量空间正交的定义类似。
定义5:若函数
f
(
x
)
,
g
(
x
)
f(x),g(x)
f(x),g(x)的内积为0,则称
f
(
x
)
,
g
(
x
)
f(x),g(x)
f(x),g(x)正交.
由以上定义可以证明当
x
∈
[
−
a
,
a
]
时
x \in [-a,a]时
x∈[−a,a]时,G2组:
s
i
n
π
T
x
,
c
o
s
π
T
x
,
s
i
n
2
π
T
x
,
c
o
s
2
π
T
x
,
.
.
.
.
.
.
.
.
.
.
s
i
n
n
π
T
x
,
c
o
s
n
π
T
x
sin \frac{\pi }{T}x,cos \frac{\pi }{T}x,sin \frac{2\pi }{T}x,cos \frac{2\pi }{T}x,..........sin \frac{n\pi }{T}x,cos \frac{n\pi }{T}x
sinTπx,cosTπx,sinT2πx,cosT2πx,..........sinTnπx,cosTnπx为一个正交基。正交基的定义感兴趣的读者可以自行百度。
傅里叶级数
现在我们得到了一组正交基G2,类比于G1可以得到:
对于任意一个函数
f
(
x
)
f(x)
f(x),
f
(
x
)
f(x)
f(x)可以表示为
f
(
x
)
=
k
0
+
k
1
s
i
n
π
T
x
+
k
2
c
o
s
π
T
x
+
k
3
s
i
n
2
π
T
x
+
c
o
s
2
π
T
x
+
.
.
.
.
.
.
.
.
.
.
k
2
n
−
1
s
i
n
n
π
T
x
+
k
2
n
c
o
s
n
π
T
x
f(x ) = k_0+k_1sin \frac{\pi }{T}x+k_2cos \frac{\pi }{T}x+k_3sin \frac{2\pi }{T}x+cos \frac{2\pi }{T}x+..........{k_{2n-1}}sin \frac{n\pi }{T}x+k_{2n}cos \frac{n\pi }{T}x
f(x)=k0+k1sinTπx+k2cosTπx+k3sinT2πx+cosT2πx+..........k2n−1sinTnπx+k2ncosTnπx。
将这个式子变下形:
f
(
x
)
=
a
0
+
∑
i
=
1
∞
(
a
i
s
i
n
π
T
x
)
+
∑
i
=
1
∞
(
b
i
c
o
s
π
T
x
)
f(x ) = a_0+\sum_{i=1}^{\infty}(a_isin \frac{\pi }{T}x)+\sum_{i=1}^{\infty}(b_icos \frac{\pi }{T}x)
f(x)=a0+∑i=1∞(aisinTπx)+∑i=1∞(bicosTπx).
现在我们就得到了傅里叶级数公式,它的本质就是函数空间基的线性组合。现在你也许还不会感到惊讶,现在我们继续往下走:
你可能会疑惑,为什么要强调
s
i
n
π
T
x
,
c
o
s
π
T
x
,
s
i
n
2
π
T
x
,
c
o
s
2
π
T
x
,
.
.
.
.
.
.
.
.
.
.
s
i
n
n
π
T
x
,
c
o
s
n
π
T
x
sin \frac{\pi }{T}x,cos \frac{\pi }{T}x,sin \frac{2\pi }{T}x,cos \frac{2\pi }{T}x,..........sin \frac{n\pi }{T}x,cos \frac{n\pi }{T}x
sinTπx,cosTπx,sinT2πx,cosT2πx,..........sinTnπx,cosTnπx是一组正交基,其实正交基的好处就是可以方便计算系数
a
0
,
a
1
,
b
1
,
a
2
,
b
2
.
.
.
.
.
.
.
.
.
a
n
,
b
n
a_0,a_1,b_1,a_2,b_2.........a_n,b_n
a0,a1,b1,a2,b2.........an,bn.
考虑$f(x) $和某一个 基的内积:
∫
f
(
x
)
c
o
s
n
π
T
x
d
x
=
∫
(
a
0
+
∑
i
=
1
∞
(
a
i
s
i
n
π
T
x
)
+
∑
i
=
1
∞
(
b
i
c
o
s
π
T
x
)
)
c
o
s
n
π
T
x
d
x
=
∫
b
n
c
o
s
2
n
π
T
x
d
x
=
π
b
n
\int f(x)cos\frac{n\pi }{T}xdx = \int( a_0+\sum_{i=1}^{\infty}(a_isin \frac{\pi }{T}x)+\sum_{i=1}^{\infty}(b_icos \frac{\pi }{T}x))cos\frac{n\pi }{T}x dx= \int b_ncos^2\frac{n\pi }{T}xdx = \pi b_n
∫f(x)cosTnπxdx=∫(a0+∑i=1∞(aisinTπx)+∑i=1∞(bicosTπx))cosTnπxdx=∫bncos2Tnπxdx=πbn.由此可以确定
b
n
=
1
π
∫
f
(
x
)
c
o
s
n
π
T
x
d
x
b_n = \frac{1}{\pi}\int f(x)cos\frac{n\pi }{T}xdx
bn=π1∫f(x)cosTnπxdx.
同样的方法,你可以确定每一个系数。
需要说明的是,这里
∫
b
n
c
o
s
2
n
π
T
x
d
x
\int b_ncos^2\frac{n\pi }{T}xdx
∫bncos2Tnπxdx是在区间
[
−
π
,
π
]
[-\pi,\pi]
[−π,π]上积分的,通过对于不同的区间
[
−
a
,
a
]
[-a,a]
[−a,a]可以区配不同的值
T
T
T。
傅里叶变换
终于要讨论傅里叶变换了。
首先我们祭出上帝公式欧拉方程:
e
i
θ
=
i
s
i
n
θ
+
c
o
s
θ
e^{i\theta} =isin\theta+cos\theta
eiθ=isinθ+cosθ.
可以得到
e
−
i
θ
=
−
i
s
i
n
θ
+
c
o
s
θ
e^{-i\theta} =-isin\theta+cos\theta
e−iθ=−isinθ+cosθ
两个方程组可以解得:(这里换了下元)
s
i
n
x
=
e
i
x
−
e
−
i
x
2
i
,
c
o
s
x
=
e
i
x
+
e
−
i
x
2
sinx = \frac{e^ix-e^{-ix}}{2i},cosx = \frac{e^ix+e^{-ix}}{2}
sinx=2ieix−e−ix,cosx=2eix+e−ix
把这个公式代入傅里叶级数:
故可得到:
f
(
x
)
=
c
0
+
c
1
e
i
π
T
x
+
c
−
1
e
−
i
π
T
x
+
c
2
e
i
n
π
T
x
+
c
−
2
e
−
i
2
π
T
x
+
.
.
.
f(x) = c_0+c_1e^{i\frac{\pi }{T}x}+c_{-1}e^{-i\frac{\pi }{T}x}+c_2e^{i\frac{n\pi }{T}x}+c_{-2}e^{-i\frac{2\pi }{T}x}+...
f(x)=c0+c1eiTπx+c−1e−iTπx+c2eiTnπx+c−2e−iT2πx+...
=
∑
−
∞
∞
c
n
⋅
e
i
n
π
T
x
=\sum_{-\infty}^{\infty}c_n·e^{i\frac{n\pi }{T}x}
=∑−∞∞cn⋅eiTnπx
当
f
(
x
)
f(x)
f(x)的定义区间
[
−
a
,
a
]
[-a,a]
[−a,a]趋近无穷大时,可以得到:
f
(
x
)
=
1
2
π
∫
−
∞
∞
F
(
ω
)
e
i
ω
x
d
ω
f(x) = \frac{1}{2\pi}\int_{-\infty}^{\infty} F(\omega) e^{i\omega x}d\omega
f(x)=2π1∫−∞∞F(ω)eiωxdω。其中
F
(
ω
)
=
∫
−
∞
∞
f
(
x
)
e
i
ω
x
d
x
F(\omega) = \int_{-\infty}^{\infty}f(x)e^{i\omega x}dx
F(ω)=∫−∞∞f(x)eiωxdx。这里用了
ω
\omega
ω表示频率。
这个式子其实很好理解,这个式子
e
i
ω
x
e^{i\omega x}
eiωx相当于对应了空间中的一个基的元素,
F
(
ω
)
F(\omega)
F(ω)作为了它的系数,而
f
(
x
)
=
1
2
π
∫
−
∞
∞
F
(
ω
)
e
i
ω
x
d
ω
f(x) = \frac{1}{2\pi}\int_{-\infty}^{\infty} F(\omega) e^{i\omega x}d\omega
f(x)=2π1∫−∞∞F(ω)eiωxdω用函数空间的一个基来线性表示,由于是无限个所以用了积分符号表示。
具体证明这里不再赘述。
傅里叶变换的应用
现在我们知道了任意一个函数都可以写作:
f
(
x
)
=
1
2
π
∫
−
∞
∞
F
(
ω
)
e
i
ω
x
d
ω
f(x) = \frac{1}{2\pi}\int_{-\infty}^{\infty} F(\omega) e^{i\omega x}d\omega
f(x)=2π1∫−∞∞F(ω)eiωxdω,这里的指数项
e
i
ω
x
e^{i\omega x}
eiωx本质上就是三角函数的不同形式,这样可以反解出三角函数的系数,进而可以用一系列三角函数去逼近这个函数。
其实这和泰勒展开类似,都是函数线性空间的一组基来表示函数。只不过泰勒展开是用多项式逼近而傅里叶变换是用三角函数逼近。
通过回想三角函数的由来,三角函数可以由一系列圆上一条向量不断旋转得到。因此我们可以用多个以不同频率旋转的不同半径的圆来作图得到函数。
一些感想
到了这里我所理解的傅里叶变换也就说完了,现在我想提一提这里面的我体会到的一种数学思维——举一反三,由此及彼,触类旁通。
由有理数到无理数,由水流到电流,由3维到n维……由向量线性空间到函数线性空间,它们都有一定的相似之处和不同之处。我在整个过程中,大部分时候我都在类比向量线性空间与函数线性空间,我觉得人类的在科学史上的每一次进步都是和类比有关的,因为如果一件事物在自然世界和已有理论体系中找不到一件事物与之类似,那必定会是晦涩难懂的。在日常学习中更不应该放弃比较事物的异同点,否则我们就会无法系统的建立的知识体系。同样的,如果我们可以对已学的知识加以推广,也许会发现一些困惑我们许久的东西会突然间豁然开郎。
若有错误或意见欢迎给出资料出处,理性讨论,觉得还不错的话请点个赞,谢谢大家。
本文作于2021年4月27日,介绍知识的同时杂糅了个人理解,作者知乎ID同名。其他平台均非作者本人