Advertisement
gronke

Untitled

Oct 9th, 2012
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import numpy
  2. import pylab
  3. from mpl_toolkits.mplot3d import Axes3D
  4.  
  5. slices = 100.
  6.  
  7. bound = 10.
  8.  
  9. width = 2.*bound/slices
  10.  
  11. enot = 8.85*10**-12
  12.  
  13. rho = (1.5*10**-7)/(8*bound**3)
  14.  
  15. x = numpy.arange(0,2*bound, width)
  16. y = numpy.arange(0,2*bound, width)
  17. z = numpy.arange(0,2*bound, width)
  18.  
  19. xx = numpy.zeros(x.size)
  20. yy = numpy.zeros(y.size)
  21. zz = numpy.zeros(z.size)
  22.  
  23. for i in range(0,x.size):
  24.     xx[i] = -bound + i*width
  25.     yy[i] = -bound + i*width
  26.     zz[i] = -bound + i*width
  27.  
  28. v = numpy.zeros([100,100,100])
  29.  
  30.  
  31. change = 1.
  32. while change < 10:
  33.     for i in range(1, xx.size-1):
  34.             for j in range(1, xx.size-1):
  35.                 for k in range(1, xx.size-1):
  36.                     v[i,j,k] = (1./6)*(v[i+1,j,k]+v[i-1,j,k] + v[i,j+1,k]+v[i,j-1,k] + v[i,j,k+1]+v[i,j,k-1]) + (width**2/(6*enot))*rho
  37.     print change
  38.     change = change + 1
  39.  
  40. fig = pylab.figure()
  41. ax = Axes3D(fig)
  42. ax.scatter(v[0,:,:], v[:,0,:], v[:,:,0])
  43. pylab.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement