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
old_acos(dimless)
Alias for: acos
old_asin(dimless)
Alias for: asin
old_atan(dimless)
Alias for: atan
old_cos(angle)
Alias for: cos
old_sin(angle)
Alias for: sin
old_sqrt(val)
Alias for: sqrt
old_tan(angle)
Alias for: tan
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