傅里叶分析之掐死教程(完整版)
积分变换第1讲----傅里叶(Fourier)级数展开

4个正弦波的逼近
100个正弦波的逼近
5
研究周期函数实际上只须研究其中的一个周期内
的情况即可, 通常研究在闭区间[-T/2,T/2]内函
数变化的情况. 并非理论上的所有周期函数都可 以用傅里叶级数逼近, 而是要满足狄利克雷
(Dirichlet)条件, 即在区间[-T/2,T/2]上
1, 连续或只有有限个第一类间断点 2, 只有有限个极值点 这两个条件实际上就是要保证函数是可积函
cn
=
1 8
sinc( wn )
(n
=
0,1,2,)
wn
=
nw
=
n 2p
16
=
np
8
, 再将cn以竖线标在频率图上
w
32
一般地, 对于周期T
cn
=
1 T
T
2 -T
fT (t)e- jwnt dt
2
= 1 1 e- jwnt dt
T -1
1
= 1 e- jwnt
= 1 e jwn - e- jwn
mwt cos nwt d t
=
m=1
2
= an
T
2 cos2 nwt d t
-T 2
=
an
T 2
即
an
=
2 T
T 2 -T 2
fT (t) cos nwt d t
16
同理, 为求bn, 计算[fT(t), sin nwt], 即
T 2 -T 2
fT (t) sin nwt d t =
T 2
T
2 -T
fT (t)e- jnwt d t
2
21
而
拟合傅里叶级数r语言

拟合傅里叶级数r语言拟合傅里叶级数是一种常用的信号处理方法,它可以将任意周期信号分解为一系列正弦和余弦波的叠加。
在R语言中,我们可以利用傅里叶级数拟合数据,从而对信号进行分析和预测。
我们需要导入R语言中的傅里叶级数拟合函数。
R语言中有多个包可以实现这一功能,例如“signal”包和“pracma”包。
这里我们选择使用“pracma”包来进行傅里叶级数拟合。
在使用“pracma”包之前,我们首先需要安装它。
在R语言中,可以通过以下命令来安装“pracma”包:```{r}install.packages("pracma")```安装完成后,我们可以通过以下命令来导入“pracma”包:```{r}library(pracma)```接下来,我们需要准备待拟合的数据。
假设我们有一个周期为T的信号,可以通过以下代码来生成对应的数据:```{r}T <- 2*pit <- seq(0, T, length.out = 100)x <- sin(t) + 0.5*cos(2*t) + 0.2*sin(3*t)```在这个例子中,我们生成了一个周期为2π的信号,该信号是三个正弦和余弦波的叠加。
其中,第一个正弦波的频率为1,振幅为1;第二个余弦波的频率为2,振幅为0.5;第三个正弦波的频率为3,振幅为0.2。
接下来,我们可以使用“pracma”包中的函数来进行傅里叶级数拟合。
在这个例子中,我们希望将信号拟合为n个正弦和余弦波的叠加。
可以通过以下代码来实现:```{r}n <- 3 # 拟合的正弦和余弦波的个数fit <- FourierFit(t, x, n)```在这个例子中,我们将信号拟合为3个正弦和余弦波的叠加。
拟合结果将保存在“fit”变量中。
通过拟合结果,我们可以得到每个正弦和余弦波的振幅和相位。
可以通过以下代码来获取这些信息:```{r}amplitudes <- fit$aphases <- fit$phi```在这个例子中,我们将每个正弦和余弦波的振幅保存在“amplitudes”变量中,将每个正弦和余弦波的相位保存在“phases”变量中。
傅里叶 股市 python

傅里叶变换在股市分析中的应用引言傅里叶变换是一种将时域信号转换为频域信号的数学工具。
它可以将一个复杂的波形分解成一系列简单的正弦函数,从而帮助我们理解信号中的周期性和频率成分。
在股市分析中,傅里叶变换可以用来研究股价波动和市场走势,为投资者提供有关市场行为的重要信息。
傅里叶变换原理傅里叶变换基于以下原理:任何周期性函数都可以表示为一系列正弦和余弦函数的线性组合。
具体而言,对于一个连续时间域上的函数f(t),它的傅里叶变换F(ω)定义如下:∞(t)e−iωt dtF(ω)=∫f−∞其中,ω是角频率,i是虚数单位。
该公式表示将时域上的函数f(t)转化为频域上的函数F(ω)。
股价波动分析股价波动通常包含了多个不同频率成分的信号。
通过对股价数据进行傅里叶变换,我们可以获得其频谱信息,进而了解股价波动中的主要周期性成分。
以下是使用Python进行股价波动分析的示例代码:import numpy as npimport pandas as pdfrom scipy.fft import fft, fftfreqimport matplotlib.pyplot as plt# 读取股价数据data = pd.read_csv('stock_price.csv')# 提取收盘价数据列close_prices = data['Close'].values# 计算傅里叶变换和频率N = len(close_prices)T = 1.0 / 252.0 # 假设交易日为252天yf = fft(close_prices)xf = fftfreq(N, T)[:N // 2]# 绘制频谱图plt.plot(xf, 2.0 / N * np.abs(yf[0:N // 2]))plt.xlabel('Frequency')plt.ylabel('Amplitude')plt.title('Stock Price Spectrum')plt.grid()plt.show()上述代码首先读取了一个包含股价数据的CSV文件,然后提取了收盘价数据列。
傅里叶配点法

傅里叶配点法傅里叶配点法是一种用于描述和分析信号的数学工具,它利用傅里叶变换将一个时域信号转换为频域信号,从而可以对信号的频谱进行分析。
傅里叶配点法在信号处理、图像处理、通信等领域有着广泛的应用。
傅里叶配点法的基本思想是将一个周期性信号分解成一系列简单的正弦和余弦函数的叠加,每个正弦和余弦函数都有不同的频率和振幅。
通过分析这些正弦和余弦函数的频率和振幅,我们可以得到信号的频谱信息,从而了解信号中包含的不同频率成分的贡献。
傅里叶配点法的过程可以分为三个步骤:采样、变换和重构。
首先,对信号进行采样,将连续的时间域信号转换为离散的采样信号。
然后,对采样信号进行傅里叶变换,将其转换为频域信号。
最后,对频域信号进行反变换,将其恢复为时域信号。
通过傅里叶配点法,我们可以得到信号的频谱信息,包括频率和振幅。
频率表示信号中不同频率成分的出现频率,振幅表示各个频率成分的贡献程度。
通过分析频谱信息,我们可以了解信号中包含的主要频率成分和它们的强度,从而对信号进行分析和处理。
傅里叶配点法在信号处理中有着广泛的应用。
例如,在音频处理中,我们可以利用傅里叶配点法对音频信号进行频谱分析,从而了解音频中主要的频率成分和它们的强度,进而实现音频信号的降噪、音乐合成等功能。
在图像处理中,我们可以利用傅里叶配点法对图像进行频谱分析,从而实现图像的滤波、增强等功能。
在通信中,傅里叶配点法也被广泛应用于信号调制、解调、信号传输等方面。
傅里叶配点法的优点是能够将复杂的时域信号转换为简单的频域信号,从而方便对信号进行分析和处理。
它可以将信号中的噪声、干扰等无关信息滤除,突出信号中的主要成分。
此外,傅里叶配点法还具有高效、稳定的特点,可以快速而准确地对信号进行处理。
傅里叶配点法是一种重要的数学工具,它在信号处理、图像处理、通信等领域有着广泛的应用。
通过傅里叶配点法,我们可以将复杂的时域信号转换为简单的频域信号,从而方便对信号进行分析和处理。
傅里叶变换为0

傅里叶变换为0介绍傅里叶变换是一种将信号从时域转换到频域的数学工具。
它是以法国数学家约瑟夫·傅里叶的名字命名的,用于分析周期性信号和非周期性信号的频谱成分。
傅里叶变换的主要思想是将一个信号分解为一系列正弦和余弦函数的叠加,从而得到信号的频谱信息。
在某些情况下,我们希望对一个信号进行傅里叶变换后,得到的频谱信息中某些频率成分的幅值为0。
这种情况下,我们可以使用傅里叶变换为0的方法来实现。
傅里叶变换为0的方法1. 频谱修剪法频谱修剪法是一种简单有效的傅里叶变换为0的方法。
它的基本思想是将信号的频谱图像进行修剪,将不需要的频率成分的幅值设为0。
具体步骤如下:1.对信号进行傅里叶变换,得到频谱图像。
2.根据需要,选择需要保留的频率范围。
3.将不需要的频率范围内的幅值设为0。
4.对修剪后的频谱进行逆傅里叶变换,得到修剪后的信号。
频谱修剪法的优点是简单易懂,可以直观地控制信号的频率成分。
但是它也有一些限制,例如无法处理非周期性信号和频率范围过宽的信号。
2. 频谱滤波法频谱滤波法是一种更加灵活的傅里叶变换为0的方法。
它的基本思想是通过设计一个滤波器,只保留需要的频率成分,将其他频率成分的幅值设为0。
具体步骤如下:1.对信号进行傅里叶变换,得到频谱图像。
2.根据需要,设计一个滤波器,将需要保留的频率范围设为1,其他频率范围设为0。
3.将滤波器应用到频谱图像上,得到滤波后的频谱图像。
4.对滤波后的频谱进行逆傅里叶变换,得到滤波后的信号。
频谱滤波法的优点是可以更加精确地控制信号的频率成分,适用于各种类型的信号处理。
然而,设计一个合适的滤波器需要一定的专业知识和经验。
应用场景傅里叶变换为0的方法在信号处理和图像处理等领域有着广泛的应用。
下面列举几个常见的应用场景。
1. 信号去噪在信号传输和采集过程中,常常伴随着噪声的干扰。
通过对信号进行傅里叶变换,可以将噪声的频率成分滤除,从而实现信号的去噪。
2. 图像压缩在图像压缩中,傅里叶变换被广泛应用。
基于EMI仿真的Saber傅里叶分解使用教程

基于EMI仿真的Saber傅里叶分解使用教程
方式一:使用计算器
(1)选定要分解的信号
(2)选择wave,点击后选择第一个FFT
(3)仿真参数设计,第一个是显示的点数,点数越多,频率越大;第二个是开始时间结束时间,时间跨度可以任意取,但是一定要至少有一个周期;第三个是显示方式,line为线性,相当于将峰值连起来,同时还显示相位,spectral为柱状图,该方式用得比较多。
参数设定完,点击OK
(4)选择波形显示
(5)选中波形,鼠标右键,选择view->vertical value->dbu(y),这样就将纵坐标改成了dbu的格式。
(6)双击恒坐标,出现如右图所示框图,先将坐标点击log,再设置所需要显示的频率范围。
(7)双击纵坐标,将显示方位修改为0到100
方式二
(1)仿真结束后点击cmd
(2)选择analyses->Fourier->Fourier
(3)第一个设置谐波数,第二个设置基波频率,第三个点击箭头,可以选择开始和结束选项,分别设置时间,任是可以任意取值,但是时间跨度至少要满足一个周期。
第四个选择显示。
出来结果如右图所示,单独一个显示框,里面的所有值都是已经直接傅里叶分解好了
(4)选择所需观察的波形,出来结果如下图所示,选中波形,鼠标右键,选择view->vertical value->dbu(y),这样就将纵坐标改成了dbu的格式。
恒坐坐标显示范围的修改,参考方式1的(5)(6)(7)步骤。
MATLAB实验二 傅里叶分析及应用复习课程
M A T L A B实验二傅里叶分析及应用实验二傅里叶分析及应用一、实验目的(一)掌握使用Matlab进行周期信号傅里叶级数展开和频谱分析1、学会使用Matlab分析傅里叶级数展开,深入理解傅里叶级数的物理含义2、学会使用Matlab分析周期信号的频谱特性(二)掌握使用Matlab求解信号的傅里叶变换并分析傅里叶变换的性质1、学会运用Matlab求连续时间信号的傅里叶变换2、学会运用Matlab求连续时间信号的频谱图3、学会运用Matlab分析连续时间信号的傅里叶变换的性质(三)掌握使用Matlab完成信号抽样并验证抽样定理1、学会运用MATLAB完成信号抽样以及对抽样信号的频谱进行分析2、学会运用MATLAB改变抽样时间间隔,观察抽样后信号的频谱变化3、学会运用MATLAB对抽样后的信号进行重建二、实验条件Win7系统,MATLAB R2015a三、实验内容1、分别利用Matlab符号运算求解法和数值计算法求下图所示信号的FT,并画出其频谱图(包括幅度谱和相位谱)[注:图中时间单位为:毫秒(ms)]。
Code:ft = sym('(t+2)*(heaviside(t+2)-heaviside(t+1))+(heaviside(t+1)-heaviside(t-1))+(2-t)*(heaviside(t-1)-heaviside(t-2))');fw = simplify(fourier(ft));subplot(2, 1, 1);ezplot(abs(fw)); grid on;title('amp spectrum');phi = atan(imag(fw) /real(fw));subplot(2, 1, 2);ezplot(phi); grid on;符号运算法Code:dt = 0.01;t = -2: dt: 2;ft = (t+2).*(uCT(t+2)-uCT(t+1))+(uCT(t+1)-uCT(t-1))+(2-t).*(uCT(t-1)-uCT(t-2));N = 2000;k = -N: N;w = pi * k / (N*dt);fw = dt*ft*exp(-i*t'*w);fw = abs(fw);plot(w, fw), grid on;axis([-2*pi 2*pi -1 3.5]);t(20 π ex p(-3 t) heaviside(t) - 8 π ex p(-5 t) heaviside(t))/(2 π)数值运算法2、试用Matlab 命令求ωωωj 54-j 310)F(j ++=的傅里叶反变换,并绘出其时域信号图。
第四五讲二维-傅里叶变换
当f(x)=g(x)时,互相关变为复函数f(x)的自相关, 定义为
rff (x)
f (x)★f (x)
f ( ) f *( x)d
或:
rff (x)
f (x)★f (x)
f ( 'x) f *( ')d '
由(4)式立即可得:
rff(x)= rff*(-x)
F(,)一般是复函数, F(,) =A(,)e jf (,)
位相谱 振幅谱
描述了各频率分量的相对幅值和相移.
§1-5二维傅里叶变换 2-D Fourier Transform
广义 F.T.
对于某些不符合狄氏条件的函数, 求F.T.的方法.
对某个可变换函数组成的系列取极限不符合狄氏条件的函数, 函数系列变换式的极限原来函数的广义F. T.
宽度 =1/2
周期 t =1
a0
2
t
t
1
2 g(t)dt 2 4 dt 1
t 2
1 4
频率 f0 =1
an
2
t
t 2
t 2
g(t) cos(2nt)dt
2
1
4 cos(2nt)dt
1 4
sin(2nt) n
1/ 4 1/ 4
sinc
n 2
bn
2
t
t
2 t 2
g (t
)
sin(2nf0t)dt
( ) ( )d 2
2
( ) d
2
( ) d
其中与一般为复函数,且仅当=k 时,等号成立。
令()=f(-x), ()=g(),则施瓦兹不等式为:
傅里叶变换符号手写
傅里叶变换符号手写 傅里叶变换是一种重要的数学工具,用于将一个函数表示为一系列正弦和余弦函数的和。它在信号处理、图像处理、物理学等领域中广泛应用。傅里叶变换的符号由于其特殊性质,需要特殊的手写方式来表示。下面将详细介绍傅里叶变换符号的手写方式。 1. 傅里叶变换表达式 傅里叶变换可以用以下表达式表示: F(ω) = ∫[−∞, ∞] f(t)e^(−jωt) dt 其中,F(ω)表示频域上的函数,f(t)表示时域上的函数,e^(−jωt)是复指数函数。 2. 傅里叶变换符号手写方式 在手写傅里叶变换符号时,需要注意以下几个方面: 2.1 手写字母 在手写过程中,我们需要使用特定的字母来表示不同的变量。通常情况下,我们使用小写字母来表示时域上的函数,如f(t),g(t),h(t)等;使用大写字母来表示频域上的函数,如F(ω),G(ω),H(ω)等。 2.2 手写运算符号 在傅里叶变换中常用到积分运算符号和指数运算符号。积分运算符号通常用∫表示,指数运算符号通常用e表示。 2.3 手写指数函数 复指数函数e^(−jωt)是傅里叶变换中的重要组成部分。在手写过程中,我们需要注意几个方面:小写字母e需要写得清晰,并且与其他字母有明显的区分;指数部分需要写在右上角,并且与底部的变量之间用水平线隔开;需要注意ω和t之间的位置关系,以及负号的位置。 3. 分层次排版方式 为了更好地展示傅里叶变换符号的手写方式,可以采用分层次排版方式来进行分段输出。下面是一个示例: 3.1 傅里叶变换表达式 F(ω) = ∫[−∞, ∞] f(t)e^(−jωt) dt 3.2 手写字母 时域函数:f(t) 频域函数:F(ω) 3.3 手写运算符号 积分运算符:∫ 指数运算符:e 3.4 手写指数函数 复指数函数:e^(−jωt) 通过以上的分层次排版方式,可以清晰地展示傅里叶变换符号的手写方式。在实际应用中,可以根据个人的书写习惯和需求进行适当的调整和优化。 总结: 傅里叶变换符号的手写方式需要注意字母、运算符号和指数函数等方面。采用分层次排版方式可以更好地展示傅里叶变换符号的结构和特点。手写傅里叶变换符号时,需要保持清晰、准确,并且与其他部分有明显的区分。熟练掌握傅里叶变换符号的手写方式对于深入理解和应用傅里叶变换具有重要意义。
高等数学(3年专科)第六节 傅里叶 (Fourier) 级数-精选文档
1 , x 0, f( x ) 1 , 0 x .
试将函数 f (x) 展开成傅里叶级数 . 解 函数 f(x) 的图形如图所示 ,
f(x)
O
2
x
这是一个矩形波,它显然满足收敛定理的条件 , 由公式
1 a ( x )cos nx d x n f
4 1 ,3 ,5 , , 2 , n n [ 1 ( 1 ) ] n n 0 2 , 4 , 6 , . ,n
根据收敛定理可知, 当 x k (k = 0 , 1 ,
( m 1 ,2 ,
3, ,n 1 ,2 ,3 , m n ) ;
m sin xnx d x 0 sin
( m 1 ,2 ,
3, ,n 1 ,2 ,3 , m n ) ;
m cos xnx d x 0 sin
( m 1 ,2 ,
3, ,n 1 ,2 ,3 , ) .
以上结果,证明从略 .
二、傅里叶级数
如下形式的函数项级数
a 0 ( a cos nx b sin nx ) n n 2 n 1
,a ,b ( n 1 ,2 , ) 为常数 . 称为三角级数 . a 0 n n
为了求得系数a0,an,bn,我们先假定
10 1 1 1) d x d x 0 . a x )d x ( 0 f( 0
又
1 b x )s in nx d x n f( 10 1 ( 1 ) sin nx d x sin nx d x 0 1 1 11 0 cos nx [ cos nx ] n n 0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
傅里叶分析之掐死教程(完整版) 投递人 itwriter 发布于 2014-06-07 10:50 评论(24) 有34667人阅读 原文链接 [收藏] « »
作者:韩昊 知乎:Heinrich 微博:@花生油工人 知乎专栏:与时间无关的故事
谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师,王新年老师以及张晶泊老师。 转载的同学请保留上面这句话,谢谢。如果还能保留文章来源就更感激不尽了。 ——更新于 2014.6.6,想直接看更新的同学可以直接跳到第四章————
我保证这篇文章和你以前看过的所有文章都不同,这是 12 年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯,我是拖延症患者……
这篇文章的核心思想就是: 要让读者在不看任何数学公式的情况下理解傅里叶分析。 傅里叶分析不仅仅是一个数学工具,更是一种可以彻底颠覆一个人以前世界观的思维模式。但不幸的是,傅里叶分析的公式看起来太复杂了,所以很多大一新生上来就懵圈并从此对它深恶痛绝。老实说,这么有意思的东西居然成了大学里的杀手课程,不得不归咎于编教材的人实在是太严肃了。(您把教材写得好玩一点会死吗?会死吗?)所以我一直想写一个有意思的文章来解释傅里叶分析,有可能的话高中生都能看懂的那种。所以,不管读到这里的您从事何种工作,我保证您都能看懂,并且一定将体会到通过傅里叶分析看到世界另一个样子时的快感。至于对于已经有一定基础的朋友,也希望不要看到会的地方就急忙往后翻,仔细读一定会有新的发现。
————以上是定场诗———— 下面进入正题: 抱歉,还是要啰嗦一句:其实学习本来就不是易事,我写这篇文章的初衷也是希望大家学习起来更加轻松,充满乐趣。但是千万!千万不要把这篇文章收藏起来,或是存下地址,心里想着:以后有时间再看。这样的例子太多了,也许几年后你都没有再打开这个页面。无论如何,耐下心,读下去。这篇文章要比读课本要轻松、开心得多……
p.s.本文无论是 cos 还是 sin,都统一用“正弦波”(Sine Wave)一词来代表简谐波。 一、什么是频域 从我们出生,我们看到的世界都以时间贯穿,股票的走势、人的身高、汽车的轨迹都会随着时间发生改变。这种以时间作为参照来观察动态世界的方法我们称其为时域分析。而我们也想当然的认为,世间万物都在随着时间不停的改变,并且永远不会静止下来。但如果我告诉你,用另一种方法来观察世界的话,你会发现世界是永恒不变的,你会不会觉得我疯了?我没有疯,这个静止的世界就叫做频域。
先举一个公式上并非很恰当,但意义上再贴切不过的例子: 在你的理解中,一段音乐是什么呢?
这是我们对音乐最普遍的理解,一个随着时间变化的震动。但我相信对于乐器小能手们来说,音乐更直观的理解是这样的: 好的!下课,同学们再见。 是的,其实这一段写到这里已经可以结束了。上图是音乐在时域的样子,而下图则是音乐在频域的样子。所以频域这一概念对大家都从不陌生,只是从来没意识到而已。
现在我们可以回过头来重新看看一开始那句痴人说梦般的话:世界是永恒的。 将以上两图简化: 时域:
频域:
在时域,我们观察到钢琴的琴弦一会上一会下的摆动,就如同一支股票的走势;而在频域,只有那一个永恒的音符。
所以 你眼中看似落叶纷飞变化无常的世界,实际只是躺在上帝怀中一份早已谱好的乐章。 抱歉,这不是一句鸡汤文,而是黑板上确凿的公式:傅里叶同学告诉我们,任何周期函数,都可以看作是不同振幅,不同相位正弦波的叠加。在第一个例子里我们可以理解为,利用对不同琴键不同力度,不同时间点的敲击,可以组合出任何一首乐曲。
而贯穿时域与频域的方法之一,就是传中说的傅里叶分析。傅里叶分析可分为傅里叶级数(Fourier Serie)和傅里叶变换(Fourier Transformation),我们从简单的开始谈起。
二、傅里叶级数(Fourier Series)的频谱 还是举个栗子并且有图有真相才好理解。 如果我说我能用前面说的正弦曲线波叠加出一个带 90 度角的矩形波来,你会相信吗?你不会,就像当年的我一样。但是看看下图:
第一幅图是一个郁闷的正弦波 cos(x) 第二幅图是 2 个卖萌的正弦波的叠加 cos (x) +a.cos (3x) 第三幅图是 4 个发春的正弦波的叠加 第四幅图是 10 个便秘的正弦波的叠加 随着正弦波数量逐渐的增长,他们最终会叠加成一个标准的矩形,大家从中体会到了什么道理?
(只要努力,弯的都能掰直!) 随着叠加的递增,所有正弦波中上升的部分逐渐让原本缓慢增加的曲线不断变陡,而所有正弦波中下降的部分又抵消了上升到最高处时继续上升的部分使其变为水平线。一个矩形就这么叠加而成了。但是要多少个正弦波叠加起来才能形成一个标准 90 度角的矩形波呢?不幸的告诉大家,答案是无穷多个。(上帝:我能让你们猜着我?)
不仅仅是矩形,你能想到的任何波形都是可以如此方法用正弦波叠加起来的。这是没 有接触过傅里叶分析的人在直觉上的第一个难点,但是一旦接受了这样的设定,游戏就开始有意思起来了。
还是上图的正弦波累加成矩形波,我们换一个角度来看看: 在这几幅图中,最前面黑色的线就是所有正弦波叠加而成的总和,也就是越来越接近矩形波的那个图形。而后面依不同颜色排列而成的正弦波就是组合为矩形波的各个分量。这些正弦波按照频率从低到高从前向后排列开来,而每一个波的振幅都是不同的。一定有细心的读者发现了,每两个正弦波之间都还有一条直线,那并不是分割线,而是振幅为 0 的正弦波!也就是说,为了组成特殊的曲线,有些正弦波成分是不需要的。
这里,不同频率的正弦波我们成为频率分量。 好了,关键的地方来了!! 如果我们把第一个频率最低的频率分量看作“1”,我们就有了构建频域的最基本单元。 对于我们最常见的有理数轴,数字“1”就是有理数轴的基本单元。 时域的基本单元就是“1 秒”,如果我们将一个角频率为的正弦波 cos(t)看作基础,那么频域的基本单元就是 。
有了“1”,还要有“0”才能构成世界,那么频域的“0”是什么呢?cos(0t)就是一个周期无限长的正弦波,也就是一条直线!所以在频域,0 频率也被称为直流分量,在傅里叶级数的叠加中,它仅仅影响全部波形相对于数轴整体向上或是向下而不改变波的形状。
接下来,让我们回到初中,回忆一下已经死去的八戒,啊不,已经死去的老师是怎么定义正弦波的吧。
正弦波就是一个圆周运动在一条直线上的投影。所以频域的基本单元也可以理解为一个始终在旋转的圆 想看动图的同学请戳这里: File:Fourier series square wave circles animation.gif
以及这里: File:Fourier series sawtooth wave circles animation.gif 点出去的朋友不要被 wiki 拐跑了,wiki 写的哪有这里的文章这么没节操是不是。 介绍完了频域的基本组成单元,我们就可以看一看一个矩形波,在频域里的另一个模样了: 这是什么奇怪的东西? 这就是矩形波在频域的样子,是不是完全认不出来了?教科书一般就给到这里然后留给了读者无穷的遐想,以及无穷的吐槽,其实教科书只要补一张图就足够了:频域图像,也就是俗称的频谱,就是——
再清楚一点: 可以发现,在频谱中,偶数项的振幅都是0,也就对应了图中的彩色直线。振幅为 0 的正弦波。
动图请戳: File:Fourier series and transform.gif 老实说,在我学傅里叶变换时,维基的这个图还没有出现,那时我就想到了这种表达方法,而且,后面还会加入维基没有表示出来的另一个谱——相位谱。
但是在讲相位谱之前,我们先回顾一下刚刚的这个例子究竟意味着什么。记得前面说过的那句“世界是静止的”吗?估计好多人对这句话都已经吐槽半天了。想象一下,世界上每一个看似混乱的表象,实际都是一条时间轴上不规则的曲线,但实际这些曲线都是由这些无穷无尽的正弦波组成。我们看似不规律的事情反而是规律的正弦波在时域上的投影,而正弦波又是一个旋转的圆在直线上的投影。那么你的脑海中会产生一个什么画面呢? 我们眼中的世界就像皮影戏的大幕布,幕布的后面有无数的齿轮,大齿轮带动小齿轮,小齿轮再带动更小的。在最外面的小齿轮上有一个小人——那就是我们自己。我们只看到这个小人毫无规律的在幕布前表演,却无法预测他下一步会去哪。而幕布后面的齿轮却永远一直那样不停的旋转,永不停歇。这样说来有些宿命论的感觉。说实话,这种对人生的描绘是我一个朋友在我们都是高中生的时候感叹的,当时想想似懂非懂,直到有一天我学到了傅里叶级数……
三、傅里叶级数(Fourier Series)的相位谱 上一章的关键词是:从侧面看。这一章的关键词是:从下面看。 在这一章最开始,我想先回答很多人的一个问题:傅里叶分析究竟是干什么用的?这段相对比较枯燥,已经知道了的同学可以直接跳到下一个分割线。
先说一个最直接的用途。无论听广播还是看电视,我们一定对一个词不陌生——频道。频道频道,就是频率的通道,不同的频道就是将不同的频率作为一个通道来进行信息传输。下面大家尝试一件事:
先在纸上画一个 sin(x),不一定标准,意思差不多就行。不是很难吧。 好,接下去画一个 sin(3x)+sin(5x)的图形。 别说标准不标准了,曲线什么时候上升什么时候下降你都不一定画的对吧? 好,画不出来不要紧,我把 sin(3x)+sin(5x)的曲线给你,但是前提是你不知道这个曲线的方程式,现在需要你把 sin(5x)给我从图里拿出去,看看剩下的是什么。这基本是不可能做到的。
但是在频域呢?则简单的很,无非就是几条竖线而已。 所以很多在时域看似不可能做到的数学操作,在频域相反很容易。这就是需要傅里叶变换的地方。尤其是从某条曲线中去除一些特定的频率成分,这在工程上称为滤波,是信号处理最重要的概念之一,只有在频域才能轻松的做到。
再说一个更重要,但是稍微复杂一点的用途——求解微分方程。(这段有点难度,看不懂的可以直接跳过这段)微分方程的重要性不用我过多介绍了。各行各业都用的到。但是求解微分方程却是一件相当麻烦的事情。因为除了要计算加减乘除,还要计算微分积分。而傅里叶变换则可以让微分和积分在频域中变为乘法和除法,大学数学瞬间变小学算术有没有。
傅里叶分析当然还有其他更重要的用途,我们随着讲随着提。 ———————————————————————————————————— 下面我们继续说相位谱: