给定N个点的一维数组
的离散傅里叶变换对由下面两式给出:
离散傅里叶变换是将离散信号分解为多个离散三角函数,并能给出每个三角函数的幅值
、频率
、初相位
.即找一批函数形如:
来叠加出任意给定的离散信号.只要知道了
,这个三角函数就完全知道了.
下面用具体的程序说明这个两个公式的具体含义及用法,本文演示所用的编程语言为python3.首先导入一些必要的包,以及定义一个方波信号,并画出一段时间的图像:
import numpy as np
from numpy import sin,cos,pi
import matplotlib.pyplot as plt
def square(t):
return np.piecewise(x=t,condlist=[t=-2)&(t<=2),t>2],funclist=[0,1,0])
N=100
t=np.linspace(-5,5,N)
dt=t[1]-t[0]
s=square(t)