# -*- coding: utf-8 -*-
"""
Created on Thu Mar 22 20:31:33 2018
@author: 17061167
#波的采样,波的调制
#乘法器
"""
import matplotlib.pyplot as plt
import numpy as np
plt.figure(figsize=(8,8),dpi=80)
x=np.arange(-np.pi,np.pi,0.001)
y=np.sin(x)
#x1=np.arange(-10,10,0.1)
y1=(np.sin(10*np.pi*x))*y
plt.plot(x,y,color='b',linewidth=5)
plt.plot(x,y1,color='r')
plt.show()
傅里叶公式
#
#coding:utf-8
import time
import numpy as np
import matplotlib.pyplot as plt
def cos_n(x,n=1):
return (2/(n*np.pi))*np.cos(0.5*n*np.pi*x)*np.sin(0.5*n*np.pi)
plt.figure(figsize=(8,8),dpi=80)
x = np.linspace(0, 5* np.pi, 300) #创建一个包含30个点的余弦波信号
#wave = np.cos(x)
wave=0
for i in range(1,15):
#wave=np.cos(i*x)+wave
wave=cos_n(x,n=i)+wave
#plt.hold(True)
#plt.plot(x,wave)
#plt.show()
#time.sleep(2)
plt.legend(loc='upper left')
plt.grid()
plt.plot(x,wave,label="f")
transformed = np.fft.fft(wave) #使用fft函数对余弦波信号进行傅里叶变换。
#print np.all(np.abs(np.fft.ifft(transformed) - wave) < 10 ** -9) #对变换后的结果应用ifft函数,应该可以近似地还原初始信号。
#plt.plot(x,transformed,label="FFT") #使用Matplotlib绘制变换后的信号。
plt.show()