#采样间隔  
dt = 0.001

#采样时间t1 0到100s   采样时间t2 1到100s
t1 = np.linspace(0,100,int(100/dt))  #因为100/dt是一个浮点数 需要int转化一下
t2 = np.linspace(1,100,int(100/dt)) 

=================================================
# 构造函数F1与F2  基频为10Hz  区别为采样时间不同

f1=10
w1 = 2*np.pi*f1
w2 = 2*w1
w3 = 3*w1
F1 = np.sin(w1*t1)+np.sin(w2*t1)+np.sin(w3*t1)
F2 = np.sin(w1*t2)+np.sin(w2*t2)+np.sin(w3*t2)

对两个函数都进行FT,得到的幅频图是一样的:
整数个周期与非整数个周期信号 进行傅里叶变换的差异
可以看出能量并未缺失,可以知道三种频率的幅值都是1 (只显示0到40Hz下的幅频图)
分析:采样时间分别为100s与99s,函数基频的周期为1/f1=0.1s,即采样时间只要是0.1的整数倍即可,这样变换出来的幅频图是准确的。

=================================================
# 构造函数F1与F2 基频为20/3Hz

f1=20/3
w1 = 2*np.pi*f2
w2 = 2*w1
w3 = 3*w1
F1 = np.sin(w1*t1)+np.sin(w2*t1)+np.sin(w3*t1)
F2 = np.sin(w1*t2)+np.sin(w2*t2)+np.sin(w3*t2)

对两个函数都进行FT,得到的幅频图是不同的:(依次为F1与F2的幅频图)
整数个周期与非整数个周期信号 进行傅里叶变换的差异
整数个周期与非整数个周期信号 进行傅里叶变换的差异
可以看出用第一个函数进行FT,变换出来的能量缺失了,虽然也能区分出频率。而第二个函数得到的幅频图是准确的。
分析:采样时间分别为100s与99s,函数基频的周期为1/f1=0.15s,即采样时间只要是0.15的整数倍即可,这样变换出来的幅频图是准确的。而100整除不了0.15,F1不是整周期的信号,所以出现能量丢失。

相关文章:

  • 2021-04-12
  • 2021-09-15
  • 2022-01-06
  • 2021-09-25
  • 2021-08-10
  • 2021-11-20
猜你喜欢
  • 2021-10-08
  • 2021-04-05
  • 2022-02-10
  • 2021-09-01
  • 2021-04-24
  • 2021-05-20
  • 2021-06-18
相关资源
相似解决方案