离散复指数信号的重复性
由于ej(w0+2π)n=ej2πnejw0n=ejw0n,所以具有频率w0和w0±2π,w0±4π,...w0±2kπ的复指数信号完全一致
离散复指数信号的周期性
由于离散信号仅在整数点有值,要使ejw0n为周期信号,周期N必须为波形周期的整数倍,即N=mw02π,m=1,2,...,此时的基波频率w=mw0,w0=Nm2π
离散复指数信号的谐波
考虑一组成谐波关系的周期离散信号,其公共周期为N,基波频率为N2π
ϕk[n]=ejkN2πn,k=0,±1,...
考虑离散复指数信号的重复性,
ϕk+N[n]=ej(k+N)N2πn=ejkN2πnej2πn=ejkN2πn=ϕk[n]
离散周期信号傅里叶级数
考虑一个周期为N的离散周期信号,用谐波的线性组合来表示
x[n]=∑k=<N>akejkN2πn
两边各乘e−jrN2πn,在周期内求和得到:
∑n=<N>x[n]e−jrN2πn=∑n=<N>∑k=<N>akejkN2πne−jrN2πn=∑k=<N>ak∑n=<N>ej(k−r)N2πn
由于ej(k−r)N2πn={N0r=k,k±N,k±2N,...other
ak=ak±N=...=N1∑n=<N>x[n]e−jkN2πn
x[n]=k=<N>∑akejkN2πnak=ak±mN=N1n=<N>∑x[n]e−jkN2πn
numpy.fft
可以使用numpy.fft求傅里叶级数,但是要注意求和周期是从0开始,并且没有N1系数。在求傅里叶级数时,仅需要输入一个周期的信号。
ak=∑n=0N−1x[n]e−jkN2πn,k=0,1,...,n−1
- 例1:求信号x[n]=cos(w0n)的傅里叶级数
仅当w02π=mN为一有理数时,信号才是周期信号。
x[n]=21(ejN2πmn+e−jN2πmn),所以am=a−m=21
使用numpy.fft求解:
- 例2:求周期为N的方波信号的傅里叶级数
在一个周期内,−N1≤n≤N1内,x[n]=1
求得一个周期内的系数:
a0=N2N1+1
ak=N1sin(πk/N)sin[2πk(N1+21)/N]

使用numpy.fft求解:
若定义0≤n<2N1+1时,x[n]=1,此时相当于上面输入右移了3,可以使用傅里叶级数的时移性质来还原:
x[n−n0]=>ake−jkN2πn0