Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def gen(n):
- x0 = 1
- for i in range(n):
- tmp = ((a*xi+c)%m)
- yield tmp/m
- x0 = tmp
- def generator(a,xi,c,m):
- n = ((a*xi+c)%m)
- return n
- a = 1664525
- c = 1013
- m = 1024
- x_i = 12
- n = 1050
- k = 12 # podzial
- a_sum = []
- b_sum = []
- p_ksum = []
- gen(n)
- lista = list(gen(n))
- for k in range (1,n):
- f_k = k/float(n)
- suma_cos= 0.0
- suma_sin=0.0
- for i in range(1,n):
- x_i = lista[i]
- # x_i = ((a*x_i+c)%m)
- # #print(x_i)
- # y_i = float(x_i)/float(m)
- # print(y_i)
- suma_sin+=x_i*math.sin(2*math.pi*f_k*i)
- suma_cos+=x_i*math.cos(2*math.pi*f_k*i)
- #print(suma_sin)
- a_k = (2/n)*suma_sin
- b_k = (2/n)*suma_cos
- p_k = (n/2)*(a_k*a_k + b_k*b_k)
- a_sum.append(a_k)
- b_sum.append(b_k)
- p_ksum.append(p_k)
- k = []
- for x in range (1,n):
- k.append(i)
- plt.plot(k,p_ksum, marker='.', markersize=1, linestyle='None')
Advertisement
Add Comment
Please, Sign In to add comment