单位根能把多项式的某些系数选出来。这里只使用有限等比和、二项式定理和复数乘法,不建立傅里叶分析理论。
正交求和及适用条件
设 N≥1 为整数,ω=cos(2π/N)+isin(2π/N)。对任意整数 m,
j=0∑N−1ωjm={N,0,N∣m,N∤m.
若 N∣m,每项为 1;否则公比不为 1,等比求和的分子 1−ωNm=0。
若改用 ωk,非零和的条件变为 N∣km,不能只检查 N∣m。例如 N=4,k=2,m=2 时每项仍为 1,和为 4,虽然 4 不整除 2。
有限系数筛选
设 N≥1 为整数,ω=cos(2π/N)+isin(2π/N)。设 P(z)=∑k=0dckzk,r∈{0,…,N−1}。交换两个有限求和,得
N1j=0∑N−1ω−rjP(ωj)=0≤k≤dk≡r (mod N)∑ck.
具体地,展开左侧后,ck 的系数为
N1j=0∑N−1ω(k−r)j.
由本页“正交求和及适用条件”中的结论,这个系数在 N∣(k−r) 时等于 1,其余情形等于 0。下标条件只表示按除以 N 的余数分类。
例如 P(z)=(1+z)6,N=3,r=0,选出的系数和为 (06)+(36)+(66)=22。也可从 [26+(1+ω)6+(1+ω2)6]/3=(64+1+1)/3 得到。
棣莫弗公式生成多倍角
把 (cosx+isinx)3=cos3x+isin3x 展开并比较实部、虚部,得到
cos3x=4cos3x−3cosx,sin3x=3sinx−4sin3x.
对一般正整数幂展开也能产生相应恒等式。比较实虚部的依据是复数相等当且仅当实部虚部分别相等;不能仅比较模长就认定复数相同。
对等差角求和,也可对 ∑k=0n−1(cos(a+kd)+isin(a+kd)) 使用复数等比和,再分别取实虚部;公比为 1 时须单独直接求和。
有限复数列的离散傅里叶变换
这里的对象只有 n 个复数,所用工具是有限求和与单位根。设整数 n≥1,
ω=cosn2π+isinn2π,a0,…,an−1∈C.
下标按除以 n 的余数理解,如 ak+n=ak。定义另一组复数
at=n1k=0∑n−1akω−kt(0≤t<n),
称为原复数列的离散傅里叶变换。它将原数列改写为 n 个单位根模式的系数。不同教材的正负号和归一化因子可能不同,后面公式均依照本定义。
反演公式及证明
ak=n1t=0∑n−1atωkt.
代入定义并交换两个有限和,右侧为
n1j=0∑n−1ajt=0∑n−1ω(k−j)t.
由单位根求和,内层在 j=k 时为 n,在其余 j 时为零,所以结果恰为 ak。这也证明变换保留全部信息,且每组变换系数唯一对应原数列。
线性与平移
对固定复数 λ,μ,逐项代入定义得到
λa+μbt=λat+μbt.
若 bk=ak+h,令 j=k+h;j 仍遍历所有余数,于是
bt=n1j∑ajω−(j−h)t=ωhtat.
这里 h 是整数,描述循环平移,不是向数列两端补零后的平移。
Parseval 恒等式与循环卷积
沿用本页归一化的离散傅里叶变换。任意两组长度为 n 的复数列 a,x 满足
t=0∑n−1atxt=k=0∑n−1akxk.
证明。 利用 ω=ω−1 展开左侧:
t∑atxt=n1j,k∑ajxkt∑ω(j−k)t=k∑akxk.
内层求和只保留 j=k。取 x=a,得到模长平方和不变:
t∑∣at∣2=k∑∣ak∣2.
再定义循环卷积 fk=∑j=0n−1ajxk−j,下标均按余数理解。它满足
ft=natxt.
证明。 在定义中令 r=k−j,得到
ft=n1k,j∑ajxk−jω−kt=n1(j∑ajω−jt)(r∑xrω−rt)=natxt.
该公式将循环卷积化为逐项乘法。它与普通多项式乘积的系数卷积不同:这里超出长度的下标会绕回开头,使用前须确认问题采用的是哪一种边界约定。
关联阅读
主题目录 · 全站目录