Guest User

Untitled

a guest
Oct 19th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. class Device
  2. attr_accessor :measurements
  3.  
  4. def initialize
  5. @measurements = []
  6. end
  7. end
  8.  
  9. class Measurement
  10. attr_accessor :frequency, :points, :magnitudes
  11.  
  12. def initialize
  13. @points = []
  14. @magnitudes = []
  15. end
  16. end
  17.  
  18. class Point
  19. attr_accessor :x, :y, :z
  20.  
  21. def initialize(x, y, z)
  22. @x = x
  23. @y = y
  24. @z = z
  25. end
  26.  
  27. def to_magnitude
  28. Magnitude.new @x.magnitude, @y.magnitude, @z.magnitude
  29. end
  30. end
  31.  
  32. class Magnitude
  33. attr_accessor :x, :y, :z
  34.  
  35. def initialize(x, y, z)
  36. @x = x
  37. @y = y
  38. @z = z
  39. end
  40. end
  41.  
  42. device1 = Device.new
  43. device1_frequencies = (70...120)
  44. device1_xs = device1_frequencies.map {|f| Complex(rand(f), rand(f)) }
  45. device1_ys = device1_frequencies.map {|f| Complex(rand(f), rand(f)) }
  46. device1_zs = device1_frequencies.map {|f| Complex(rand(f), rand(f)) }
  47.  
  48. point1 = Point.new(Complex(1,2), Complex(3,5), Complex(11,21))
  49.  
  50.  
  51. device1_frequencies.each_with_index do |frequency, index|
  52. measurement = Measurement.new
  53. point = Point.new device1_xs[index], device1_ys[index], device1_zs[index]
  54. measurement.points << point
  55. device1.easurements << measurement
  56. end
Add Comment
Please, Sign In to add comment