Guest User

Untitled

a guest
May 22nd, 2013
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. def thomas(aa,bb,cc,n):
  2. import math
  3. import numpy
  4. n = input('Enter the dimension')
  5. print 'Matrix size',n
  6. dd = [
  7. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
  8. 10,11,12,13,14,15,16,17,18,19,
  9. 20,21,22,23,24,25,26,27,28,29,
  10. 30,31,
  11. ]
  12. k,l,m = input ("enter vectors")
  13. aa=[]
  14. bb=[]
  15. cc=[]
  16. for i in range(n+1):
  17. bb.append(l)
  18. for i in range(n):
  19. aa.append(k)
  20. cc.append(m)
  21. a = numpy.array(aa)
  22. b = numpy.array(bb)
  23. c = numpy.array(cc)
  24. d = numpy.array(dd)
  25. c[0] = c[0]/ b[0]
  26. d[0] = d[0]/ b[0]
  27. for i in range(1,n,1):
  28. c[i] = c[i]/(b[i] - a[i] * c[i-1])
  29. for i in range(1,n,1):
  30. d[i] = (d[i] - a[i] * d[i-1])/(b[i] - a[i] * c[i-1])
  31. d[-1] = (d[-1] - a[-1] * d[-2])/( b[-1] - a[-1] * c[-2])
  32. x = numpy.zeros(n)
  33. x[-1] = d[-1]
  34. for i in range(-2, -n, -1):
  35. x[i] = d[i] - c[i] * x[i + 1]
  36. print x
  37. return x
Advertisement
Add Comment
Please, Sign In to add comment