Advertisement
Guest User

Laba5

a guest
May 24th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.55 KB | None | 0 0
  1. from numpy import array, arange, abs as np_abs
  2. from numpy.fft import rfft, rfftfreq
  3. from numpy.random import uniform
  4. import matplotlib.pyplot as plt
  5. from math import cos,sin,pi
  6.  
  7. k1=13
  8. k2=27
  9. n=1024
  10. m=10
  11. X=array([8*cos(2*pi*k1*i/n)+11*sin(2*pi*k2*i/n) for i in range(1,n+1)])
  12.  
  13. spectrum = rfft(X)
  14.  
  15. FD=1
  16.  
  17. filtered = list(filter(lambda x: x[1] > 0.01, zip(rfftfreq(n, 1. / FD), np_abs(spectrum) / n)))
  18. print("Составлящие:")
  19. print("     Частота - Амплитуда")
  20. print("\n".join(map(lambda x:str(x[0])+" - "+str(x[1]),filtered)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement