傅里叶级数和傅里叶变换(从线性代数角度)

这篇博客通过线性代数的角度探讨傅里叶级数和傅里叶变换。讲解了如何将函数转换为cos(x), sin(x)或e^(ix)的形式,以及如何利用正交向量的概念来理解傅里叶变换。博客提到了周期函数的傅里叶级数展开,以及当周期趋向于无穷时,如何得到傅里叶变换。还讨论了傅里叶变换的收敛条件和能量概念。" 126902499,13520627,Java中的Assert断言工具类详解,"['Java', '开发语言', 'JVM']

主要参考Stanford的公开课。

cos(x),sin(x), eixe^{ix}eix 的转换

周期是2π2 \pi2π 的情况
f(x)=a0+∑1∞akcos(kx)+∑1∞bksin(kx) f(x)=a_0+\sum\limits_{1}^{\infty} {a_k}cos(kx)+\sum\limits_{1}^{\infty}{b_k}sin(kx)f(x)=a0+1akcos(kx)+1bksin(kx)
f(x)=∑0∞ckeikx f(x)=\sum\limits_{0}^{\infty}{c_k}e^{ikx}f(x)=0ckeikx
ck=ak2−ibk2(k>0)c_k=\dfrac{a_k}{2}-i\dfrac{b_k}{2} (k>0)ck=2aki2bk(k>0)
由于c−k=ck‾c_{-k}=\overline{c_k}ck=ck,所以第二个式子中虚部最后是被消掉的。
假设
ck=a2−ib2c_k=\frac{a}{2}-i\frac{b}{2}ck=2ai2b
   ckeikx+c−ke−ikx\space\space\space c_ke^{ikx}+c_{-k}e^{-ikx}   ckeikx+ckeikx
=(a−ib)[cos⁡(kx)+isin⁡(kx)]+(a+ib)[cos⁡(kx)−isin⁡(kx)]2=\dfrac{(a-ib)[\cos(kx)+i\sin(kx)]+(a+ib)[\cos(kx)-i\sin(kx)]}{2}=2(aib)[cos(kx)+isin(kx)]+(a+ib)[cos(kx)isin(kx)]
=acos⁡kx+bsin⁡kx=a\cos{kx}+b\sin{kx}=acoskx+bsinkx

把函数和向量类比

首先是复变函数内积的定义,
∫f(x)g(x)‾dx\int f(x)\overline{g(x)}dxf(x)g(x)dx
有了内积之后,就可以定义正交了,
∫f(x)g(x)‾dx=0\int f(x)\overline{g(x)}dx=0f(x)g(x)dx=0
然后,
cos(x),cos(2x),cos(3x)...sin(x),sin(2x),sin(3x)...cos(x), cos(2x), cos(3x)... \\ sin(x), sin(2x),sin(3x)...cos(x),cos(2x),cos(3x)...sin(x),sin(2x),sin(3x)...
是一组正交向量,但是本科的时候就只理解到这里,其实还可以再向后想一点点的,
...,e−2ix,e−ix,e0ix,eix,e2ix,e3ix,......,e^{-2ix},e^{-ix},e^{0ix},e^{ix},e^{2ix},e^{3ix},......,e2ix,eix,e0ix,eix,e2ix,e3ix,...
也是一组正交的向量,但是后者更好,因为后面每个向量的长度是相同的,也就是,
∫02πcos⁡xcos⁡xdx=π\int_{0}^{2\pi}\cos{x}\cos{x}dx=\pi02πcosxcosxdx=π
∫02π1dx=2π\int_{0}^{2\pi}1dx=2\pi02π1dx=2π
∫02πeixe−ixdx=2π\int_{0}^{2\pi}e^{ix}e^{-ix}dx=2\pi02πeixeixdx=2π
还有一个小细节,这两组基的个数是相等的,都是整数的个数。
把一个函数转成一组正交函数的线性组合,相当于把这个函数向这些正交基投影,
ck2π=∫02πf(x)eikx‾2πdxc_k\sqrt{2\pi}=\int_{0}^{2\pi} f(x){\frac{\overline{e^{ikx}}}{\sqrt{2\pi}}}dxck2π=02πf(x)2πeikxdx
或者,
ck=12π∫02πf(x)e−ikxdxc_k=\frac{1}{2\pi}\int_{0}^{2\pi} f(x){e^{-ikx}}dxck=2π102πf(x)eikxdx
周期为TTT 时,
ck=1T∫0Tf(x)e−ik2πTxdxc_k=\frac{1}{T}\int_{0}^{T} f(x){e^{-ik\frac{2\pi}{T}x}}dxck=T10Tf(x)eikT2πxdx
然后是收敛条件,
lim⁡k→∞∫02π(f(x)−∑0kckeikx)2dx=0\lim\limits_{k\rightarrow\infty}\int_{0}^{2\pi}(f(x)-\sum\limits_{0}^{k}c_{k}e^{ikx})^2dx=0klim02π(f(x)0kckeikx)2dx=0
积分和差的平方和在一起是不是有最小二乘法的感觉,用向量的东西做类比就是f(x)是可以完全被这组有无穷个的正交的基表示。
然后是energy,
∑0∞∣ck∣2\sum\limits_{0}^{\infty}|c_k|^20ck2
或者,
∑0∞ckck‾\sum\limits_{0}^{\infty}c_k\overline{c_k}0ckck
也就是在取定基下,向量的长度。

傅里叶变换

从傅里叶级数到傅里叶变换,视频中老师用的办法是使 T→∞T\rightarrow\inftyT
具体是随便一个定义域是闭区间的函数,把这个函数的定义域扩大,扩大的地方函数值为0。由于周期越来越大,想要的傅里叶级数展开的每一项系数会越来越小,最终变为0。为了时傅里叶级数不为零,所以把求傅里叶级数的系数时前面要乘的1T\frac{1}{T}T1 去掉,于是变为,
ck=∫−∞+∞f(x)e−ikxdxc_k=\int_{-\infty}^{+\infty} f(x){e^{-ikx}}dxck=+f(x)eikxdx
其实,这里我还是没有想明白。
不过也许可以从另一个角度想,
f(x)f(x)f(x) 可以看成是一组自然基底δ(x−x0),x0∈R\delta(x-x_0),x_0\in Rδ(xx0),x0R 的线性组合,由于基是连续的,所以求和只好变为积分,
f(x)=∫−∞+∞f(x0)δ(x−x0)dx0f(x)=\int_{-\infty}^{+\infty}f(x_0)\delta(x-x_0)dx_0f(x)=+f(x0)δ(xx0)dx0
同时,f(x)f(x)f(x) 还可以看成是另一组基底ei2πsx,s∈Re^{i2{\pi} sx},s\in Rei2πsx,sR 的线性组合,
f(x)=∫−∞+∞csei2πsxdsf(x)=\int_{-\infty}^{+\infty}c_s e^{i2{\pi} sx}dsf(x)=+csei2πsxds
为了比较,把前面式子中的x0x_0x0 换成s,
f(x)=∫−∞+∞f(s)δ(x−s)dsf(x)=\int_{-\infty}^{+\infty}f(s)\delta(x-s)dsf(x)=+f(s)δ(xs)ds
这样就可以很清楚的看到:

  • f(s)f(s)f(s)csc_scs相对应,都是函数给定后,就确定的常数,只是前者是一眼就能看出的,后者需要傅里叶变换才能求出
  • δ(x−s)\delta(x-s)δ(xs)ei2πsxe^{i2{\pi} sx}ei2πsx 相对应 他们都是s 和 x 的函数,在x自由变化时,刚好组成两组正交的基底,并且两组基的个数是相同的,都是x可以取的值的个数,也就是实数的个数。

这里有个重要的等式,
∫−∞+∞eiasds=δ(a)\int_{-\infty}^{+\infty}e^{ias}ds=\delta(a)+eiasds=δ(a)
或者,
∫−∞+∞eisx1eisx2‾ds=∫−∞+∞eisx1e−isx2ds=∫−∞+∞eis(x1−x2)ds=δ(x1−x2)\int_{-\infty}^{+\infty}e^{isx_1}\overline{e^{isx_2}}ds= \int_{-\infty}^{+\infty}e^{isx_1}{e^{-isx_2}}ds=\int_{-\infty}^{+\infty}e^{is(x_1-x_2)}ds=\delta(x1-x2)+eisx1eisx2ds=+eisx1eisx2ds=+eis(x1x2)ds=δ(x1x2)

把逆变换公式代入变换

为了方便我们假设变换公式
F(w)=∫−∞+∞f(t)e−jwtdt F(w)=\int_{-\infty}^{+\infty}f(t)e^{-jwt}dt F(w)=+f(t)ejwtdt
逆变换公式 (其实,对比傅里叶级数,逆变换公式是更容易的理解的)
f(t)=∫−∞+∞F(w)ejwtdw f(t)=\int_{-\infty}^{+\infty}F(w)e^{jwt}dw f(t)=+F(w)ejwtdw
逆变换代入变换
F(w0)=∫−∞+∞[∫−∞+∞F(w)ejwtdw]e−jw0tdt F(w_0)=\int_{-\infty}^{+\infty} \left[ \int_{-\infty}^{+\infty}F(w)e^{jwt}dw \right] e^{-jw_0t}dt F(w0)=+[+F(w)ejwtdw]ejw0tdt
F(w0)=∫−∞+∞[∫−∞+∞F(w)ej(w−w0)tdw]dt F(w_0)=\int_{-\infty}^{+\infty} \left[ \int_{-\infty}^{+\infty}F(w)e^{j(w-w_0)t}dw \right] dt F(w0)=+[+F(w)ej(ww0)tdw]dt
交换内外积分,
=∫−∞+∞[∫−∞+∞F(w)ej(w−w0)tdt]dw=\int_{-\infty}^{+\infty} \left[ \int_{-\infty}^{+\infty}F(w)e^{j(w-w_0)t}dt \right] dw =+[+F(w)ej(ww0)tdt]dw
=∫−∞+∞F(w)[∫−∞+∞ej(w−w0)tdt]dw=\int_{-\infty}^{+\infty}F(w) \left[ \int_{-\infty}^{+\infty}e^{j(w-w_0)t}dt \right] dw=+F(w)[+ej(ww0)tdt]dw
=∫−∞+∞F(w)δ(w−w0)dw=\int_{-\infty}^{+\infty}F(w) \delta(w-w_0) dw =+F(w)δ(ww0)dw
=F(w0)=F(w_0)=F(w0)

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值