傅里叶级数?哦,这可是个好东西,尤其是在处理周期性信号或者想把一个复杂的函数拆成简单的正弦余弦波时。你想怎么用它呢?一般来说,我们用傅里叶级数做事情,无非就是这几件事:
1. 信号分析:看看一个信号里到底藏着多少种不同频率的成分,以及它们的“量”有多大。这就像给一个乐队里的每种乐器单独录音,然后分析每个乐器的音量和音色。
2. 信号滤波:把信号里不需要的频率成分“筛掉”。比如,你听收音机,只想听某个台的声音,就把其他台的声音给滤掉了。
3. 求解微分方程:很多工程问题最后都会归结到微分方程,而傅里叶级数可以把复杂的微分方程变成一系列更容易处理的代数方程。
4. 函数逼近:用一系列简单的正弦和余弦函数去“拼凑”出一个复杂的函数。
说到具体怎么“做”,核心就是傅里叶级数展开式本身。一个周期函数 $f(x)$,如果它满足一些 pretty reasonable 的条件(比如是分段连续的,并且只有一个有限数量的极值点和间断点),那么它就可以被表示成一个无穷的三角函数之和。这个展开式长这样:
$$
f(x) = a_0 + sum_{n=1}^{infty} (a_n cos(nomega x) + b_n sin(nomega x))
$$
这里的关键是找出 $a_0$, $a_n$, 和 $b_n$ 这几个系数。它们告诉我们函数 $f(x)$ 里面包含了多少“直流分量”($a_0$)、多少“余弦波”($a_n$),以及多少“正弦波”($b_n$),并且每个波的“振幅”是多少,频率是基频 $omega$ 的多少倍。
这里的 $omega$ 是跟函数的周期 $T$ 有关的。通常我们说一个函数是周期为 $T$ 的,那么 $omega = frac{2pi}{T}$。
怎么求这些系数呢? 这就要用到积分了,而且是通过“正交性”来提取每个频率成分的贡献。
求 $a_0$(直流分量或平均值):
这个 $a_0$ 其实就是函数在一个周期内的平均值。你想想,一个周期信号,如果只有直流分量,那它就是一条直线,平均值就是这条直线的数值。如果信号有上下起伏,那平均值就是那些起伏加起来的平均。
$$
a_0 = frac{1}{T} int_{0}^{T} f(x) dx
$$
或者写成 $omega$ 的形式:
$$
a_0 = frac{omega}{2pi} int_{0}^{2pi/omega} f(x) dx
$$
注意,积分的区间可以是我们方便的任何一个长度为 $T$ 的区间,比如 $[frac{T}{2}, frac{T}{2}]$。
求 $a_n$(余弦系数):
这个系数代表了函数里包含多少频率为 $nomega$ 的余弦波。求它的原理是,利用 $cos(momega x)$ 和 $cos(nomega x)$ (当 $m
eq n$ 时)在周期 $[0, T]$ 上的积分是零(它们是正交的),而 $cos^2(nomega x)$ 在周期内的积分是非零的。
$$
a_n = frac{2}{T} int_{0}^{T} f(x) cos(nomega x) dx
$$
或者用 $omega$ 写:
$$
a_n = frac{2}{T} int_{0}^{2pi/omega} f(x) cos(nomega x) dx
$$
求 $b_n$(正弦系数):
跟 $a_n$ 类似,这个系数代表了函数里包含多少频率为 $nomega$ 的正弦波。这里利用的是 $sin(momega x)$ 和 $sin(nomega x)$ 的正交性,以及 $sin^2(nomega x)$ 的积分。
$$
b_n = frac{2}{T} int_{0}^{T} f(x) sin(nomega x) dx
$$
或者用 $omega$ 写:
$$
b_n = frac{2}{T} int_{0}^{2pi/omega} f(x) sin(nomega x) dx
$$
所以,“做”的过程通常是这样的:
1. 确定函数的周期 $T$ 和角频率 $omega$。 如果函数本身不是明确给出的周期函数,你可能需要自己找出它的周期。
2. 根据函数的具体形式,选择合适的积分区间(通常是 $[0, T]$ 或 $[frac{T}{2}, frac{T}{2}]$)。
3. 分别计算 $a_0$, $a_n$, 和 $b_n$ 的积分。 这是最核心也最需要技巧的部分。你需要知道怎么对具体形式的 $f(x)$ 与 $cos(nomega x)$ 或 $sin(nomega x)$ 的乘积进行积分。这可能需要用到分部积分、三角恒等式等数学工具。
4. 将计算出的系数代入傅里叶级数展开式。
举个例子吧,让它更实在点:
假设我们要对一个 周期为 $2pi$ 的方波函数 进行傅里叶级数展开。这个函数定义为:
$$
f(x) = egin{cases} 1, & 0 < x < pi \ 1, & pi < x < 0 end{cases}
$$
而且是周期性的,周期 $T=2pi$。
好了,按照上面的步骤来:
1. 周期 $T=2pi$,所以角频率 $omega = frac{2pi}{T} = frac{2pi}{2pi} = 1$。
2. 积分区间 我们就选 $[pi, pi]$,因为函数在这个区间内定义了,并且这是一个长度为 $2pi$ 的周期区间。
3. 计算系数:
$a_0$:
$$
a_0 = frac{1}{2pi} int_{pi}^{pi} f(x) dx
$$
因为 $f(x)$ 在 $(pi, 0)$ 是 $1$,在 $(0, pi)$ 是 $1$,而我们积分一个区间的端点(0,$pm pi$)上的值对积分结果没有影响。
$$
a_0 = frac{1}{2pi} left( int_{pi}^{0} (1) dx + int_{0}^{pi} 1 dx
ight)
$$
$$
a_0 = frac{1}{2pi} left( [x]_{pi}^{0} + [x]_{0}^{pi}
ight)
$$
$$
a_0 = frac{1}{2pi} left( (0 (pi)) + (pi 0)
ight)
$$
$$
a_0 = frac{1}{2pi} (pi + pi) = frac{2pi}{2pi} = 1
$$
等等,这里有个小问题。这个方波函数是奇函数吗?从定义上看,好像不是严格意义上的奇函数(如果它在 $x=0$ 是0的话)。但是它关于原点是中心对称的(如果 $f(x)=f(x)$)。对奇函数进行积分,在一个对称区间上,积分结果应该是0。
我们再仔细看看这个方波:
在 $(0, pi)$ 是 1
在 $(pi, 0)$ 是 1
在 $x=0$ 处,我们没定义。如果按通常定义,在 $x=0$ 是 0 的话,那么 $f(x)$ 是 奇函数。
对于奇函数,在对称区间 $[pi, pi]$ 上的积分 $int_{pi}^{pi} f(x) dx$ 结果是 0。
所以,$a_0 = frac{1}{2pi} imes 0 = 0$。
这和我们上面的计算结果不一样!原因在于,这个方波在 $x=0$ 处有一个间断点,并且 $f(x)$ 实际上是 奇函数。我们之前计算的 $a_0=1$ 可能是因为我记错了函数定义或者积分区间处理有误。
正确的奇函数性质应用是关键: 奇函数在对称区间上的积分是0。而对于一个周期为 $2pi$ 的函数,它的 $a_0$ 就是它在一个周期内的平均值。这个方波在一个周期 $[pi, pi]$ 内,上半部分(在 $(0, pi)$)是 1,下半部分(在 $(pi, 0)$)是 1。这两部分的面积正好抵消了,所以平均值是 0。
结论:$a_0 = 0$。
$a_n$:
$$
a_n = frac{2}{2pi} int_{pi}^{pi} f(x) cos(nx) dx
$$
$$
a_n = frac{1}{pi} left( int_{pi}^{0} (1) cos(nx) dx + int_{0}^{pi} 1 cos(nx) dx
ight)
$$
因为 $f(x)$ 是奇函数,$cos(nx)$ 是偶函数,它们的乘积 $f(x)cos(nx)$ 是 奇函数。奇函数在一个对称区间 $[pi, pi]$ 上的积分是 0。
所以,
$$
a_n = 0 quad ext{for all } n ge 1
$$
$b_n$:
$$
b_n = frac{2}{2pi} int_{pi}^{pi} f(x) sin(nx) dx
$$
$$
b_n = frac{1}{pi} left( int_{pi}^{0} (1) sin(nx) dx + int_{0}^{pi} 1 sin(nx) dx
ight)
$$
因为 $f(x)$ 是奇函数,$sin(nx)$ 也是奇函数,它们的乘积 $f(x)sin(nx)$ 是 偶函数。偶函数在一个对称区间 $[pi, pi]$ 上的积分等于在该区间一半长度上的积分的两倍。
$$
b_n = frac{1}{pi} imes 2 int_{0}^{pi} 1 sin(nx) dx
$$
$$
b_n = frac{2}{pi} int_{0}^{pi} sin(nx) dx
$$
积分 $int sin(nx) dx = frac{1}{n} cos(nx)$
$$
b_n = frac{2}{pi} left[ frac{1}{n} cos(nx)
ight]_{0}^{pi}
$$
$$
b_n = frac{2}{pi} left( frac{1}{n} cos(npi) (frac{1}{n} cos(0))
ight)
$$
$$
b_n = frac{2}{pi n} left( 1 cos(npi)
ight)
$$
我们知道 $cos(npi) = (1)^n$。
所以,$b_n = frac{2}{pi n} (1 (1)^n)$。
这里我们需要区分 $n$ 的奇偶性:
如果 $n$ 是 偶数 ($n=2, 4, 6, dots$),那么 $(1)^n = 1$,所以 $b_n = frac{2}{pi n} (1 1) = 0$。
如果 $n$ 是 奇数 ($n=1, 3, 5, dots$),那么 $(1)^n = 1$,所以 $b_n = frac{2}{pi n} (1 (1)) = frac{2}{pi n} (2) = frac{4}{pi n}$。
4. 代入展开式:
我们得到 $a_0=0$, $a_n=0$, 并且 $b_n$ 只有在 $n$ 为奇数时才不为零。
所以傅里叶级数展开式是:
$$
f(x) = sum_{n ext{ is odd}, n=1}^{infty} b_n sin(nx)
$$
$$
f(x) = sum_{k=1}^{infty} frac{4}{pi (2k1)} sin((2k1)x)
$$
或者更具体地写出来几项:
$$
f(x) = frac{4}{pi} sin(x) + frac{4}{3pi} sin(3x) + frac{4}{5pi} sin(5x) + frac{4}{7pi} sin(7x) + dots
$$
这就完成了对这个方波函数的傅里叶级数展开。这意味着,无论这个方波看起来多“方”,它都可以被看作是无穷多个不同频率的纯正弦波“叠加”而成的!比如,第一个 $frac{4}{pi}sin(x)$ 是基频的正弦波,后面的 $frac{4}{3pi}sin(3x)$ 是基频三倍频率的正弦波,以此类推。
做傅里叶级数时需要注意的地方:
函数的奇偶性:这是简化计算的利器。奇函数只有正弦项,$b_n
eq 0$;偶函数只有余弦项(包括常数项),$a_n
eq 0$。
积分的计算:这是最关键的技术点,一定要细心。很多时候会涉及分部积分和三角恒等式。
收敛性:傅里叶级数不一定在所有点都等于原函数。在函数的间断点,傅里叶级数会收敛到间断点两侧函数值的平均值(狄利克雷条件)。比如我们上面的方波,在 $x=0$(间断点),级数收敛到 $frac{1+(1)}{2} = 0$,这正好是我们函数定义中(如果假设在0为0)的函数值。
复指数形式:有时候用复指数形式 $e^{iomega x}$ 来表示 $cos$ 和 $sin$ 会更方便计算。傅里叶级数也可以写成复指数形式:
$$
f(x) = sum_{n=infty}^{infty} c_n e^{inomega x}
$$
其中 $c_n = frac{1}{T} int_{0}^{T} f(x) e^{inomega x} dx$。 这个形式在很多理论推导和信号处理中非常有用。
总之,用傅里叶级数“做”的核心就是求出那些描述不同频率正弦余弦成分的系数。一旦系数求出来了,你就“理解”了这个函数的组成部分,也就完成了傅里叶分析的任务。具体怎么做,很大程度上取决于你手上那个函数的“长相”和你的积分功底。