module Math
Public Class Methods
acos(dimless)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 35 def acos(dimless) if dimless.is_a?(Pulo::Dimensionless) Pulo::Angle.radians(self.old_acos(dimless.n.value.clamp(-1,1))) else self.old_acos(dimless) end end
Also aliased as: old_acos
asin(dimless)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 53 def asin(dimless) if dimless.is_a?(Pulo::Dimensionless) Pulo::Angle.radians(self.old_asin(dimless.n.value.clamp(-1,1))) else self.old_asin(dimless) end end
Also aliased as: old_asin
atan(dimless)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 71 def atan(dimless) if dimless.is_a?(Pulo::Dimensionless) Pulo::Angle.radians(self.old_tan(dimless.n.value)) else self.old_atan(dimless) end end
Also aliased as: old_atan
cos(angle)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 26 def cos(angle) if angle.is_a?(Pulo::Angle) Pulo::Dimensionless.n(self.old_cos(angle.radians.value)) else self.old_cos(angle) end end
Also aliased as: old_cos
sin(angle)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 44 def sin(angle) if angle.is_a?(Pulo::Angle) Pulo::Dimensionless.n(self.old_sin(angle.radians.value)) else self.old_sin(angle) end end
Also aliased as: old_sin
sqrt(val)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 17 def sqrt(val) if val.is_a?(Pulo::Quantity) val.rt(2) else self.old_sqrt(val) end end
Also aliased as: old_sqrt
tan(angle)
click to toggle source
# File lib/pulo/quantity/numeric_overloads.rb, line 62 def tan(angle) if angle.is_a?(Pulo::Angle) Pulo::Dimensionless.n(self.old_tan(angle.radians.value)) else self.old_tan(angle) end end
Also aliased as: old_tan