class Vector
extend standard library vector class
Public Instance Methods
cross_product_(v_)
click to toggle source
define cross product
# File lib/physics_calculator.rb, line 19 def cross_product_(v_) raise ArgumentError, 'Vectors must be 3D' if (self.size != 3 || v_.size != 3) Vector.[](self[1]*v_[2] - self[2]*v_[1], self[2]*v_[0] - self[0]*v_[2], self[0]*v_[1] - self[1]*v_[0]) end
distance(v_)
click to toggle source
define distance between two vectors
# File lib/physics_calculator.rb, line 25 def distance(v_) (self - v_).r end
dot_product(v_)
click to toggle source
dot_product
as alias for inner product
# File lib/physics_calculator.rb, line 14 def dot_product(v_) self.inner_product(v_) end
unit_(v_)
click to toggle source
define unit vector pointing from v to self
# File lib/physics_calculator.rb, line 30 def unit_(v_) (self - v_).normalize end