3v1n0

calc.py

Oct 18th, 2018
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1. from multiprocessing.pool import Pool
  2.  
  3. a = 0.05 #float(raw_input("a: "))
  4. b = 0.05 #float(raw_input("b: "))
  5. d = 0.05 #float(raw_input("d: "))
  6. #N = int(raw_input("numero di passi: "))
  7. steps=100
  8. sum = float(0.0)
  9. oldSum = float(0.0)
  10.  
  11. def compute(N):
  12.     # oldSum = sum
  13.     oldSum = 0
  14.     sum = float(0.0)
  15.     factor = ((a*b*d/(N**2))**2)
  16.     for i in range(N):
  17.         #print sum
  18.         for j in range(N):
  19.             for n in range(N):
  20.                 for m in range(N):
  21.                     sum += factor/(d**2 + (a*n/N-b*j/N)**2 + (a*m/N-b*i/N)**2)**2
  22.  
  23.     diff = (sum - oldSum)/sum
  24.     print N,sum,diff
  25.  
  26.  
  27. if __name__ == "__main__":
  28.     p = Pool(processes=8)
  29.  
  30.     nums = [i for i in range(1,int(steps+1))]
  31.  
  32.     p.map(compute, nums)
  33.     p.close()
  34.     p.join()
Advertisement
Add Comment
Please, Sign In to add comment