Advertisement
Guest User

kolpeex

a guest
Dec 8th, 2009
345
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 1.33 KB | None | 0 0
  1. require 'complex.rb'
  2.  
  3. J = Complex.new(0,5e-3)
  4. E1 = Complex.new(0,50)
  5. E2 = 40
  6. R1 = 5e+3
  7. R2 = 6e+3
  8. L1 = 318*1e-3
  9. L2 = 318*1e-3
  10. C1 = 3.18*1e-9
  11. C2 = 6.36*1e-9
  12. f = 5e+3
  13. w = f
  14.  
  15. Zl1 = Complex.new(0, w*L1)
  16. Zl2 = Complex.new(0, w*L2)
  17. Zc1 = Complex.new(0, -1/(w*C1))
  18. Zc2 = Complex.new(0, -1/(w*C2))
  19.  
  20. G12 = 1/Zc1
  21. G23 = (1/(R1+Zl1)) + (1/Zc2)
  22. G13_ = 1/(Zl2+R2)
  23. G13 = 0 + G13_
  24.  
  25. V1 = 0
  26. V3 = (E2*G13-J-G23*E1*G12/(G12+G23)) / (G13+G23-G23*G23/(G12+G23))
  27. V2 = (V3*G23-E1*G12)/(G12+G23)
  28.  
  29. Zo1 = Zc1+Zl2+R2+Zc2*(R1+Zl1)/(Zc2+R1+Zl1)
  30. Uo2 = J*(Zl2+R2)*(Zc1+Zc2*(R1+Zl1)/(Zc2+R1+Zl1))/(Zl2+R2+Zc1+Zc2*(R1+Zl1)/(Zc2+R1+Zl1))
  31. Zo3 = Zl2+R2+Zc1+(R1+Zl1)*Zc2/(R1+Zl1+Zc2)
  32.  
  33. i1 = -E1/Zo1 + Uo2/(Zc1+(Zc2*(R1+Zl1))/(Zc2+R1+Zl1)) - E2/Zo3
  34. i2 = E1/Zo1 + Uo2/(Zl2+R2) + E2/Zo3
  35.  
  36. i3 = -(E1-(Zc1+Zl2+R2)*E1/Zo1)/(R1+Zl1) +
  37.   (Uo2-Zc1*Uo2/(Zc1+(Zc2*(R1+Zl1))/(Zc2+R1+Zl1)))/(R1+Zl1) -
  38.   (E2-(Zc1+Zl2+R2)*E2/Zo1)/(R1+Zl1)
  39. i4 = ((V2-V3)/Zc2)
  40.  
  41. potr= i3*i3*R1 +
  42.       i2*i2*R2 +
  43.       i3*i3*Zl1 +
  44.       i2*i2*Zl2 +
  45.       i1*i1*Zc1 +
  46.       i4*i4*Zc2
  47.  
  48. print   i3*i3*R1
  49. print "\n"
  50. print        i2*i2*R2
  51. print "\n"
  52. print        i3*i3*Zl1
  53. print "\n"
  54. print        i2*i2*Zl2
  55. print "\n"
  56. print        i1*i1*Zc1
  57. print "\n"
  58. print        i4*i4*Zc2
  59. print "\n"
  60. print "\n"
  61.  
  62. isp = -E1*i1 + E2*i2 + J*(-V3)
  63.  
  64. print potr
  65. print "\n"
  66. print isp
  67. print "\n"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement