Module: Math
- Defined in:
- lib/pulo/quantity/numeric_overloads.rb
Class Method Summary collapse
- .acos(dimless) ⇒ Object
- .asin(dimless) ⇒ Object
- .atan(dimless) ⇒ Object
- .cos(angle) ⇒ Object
- .old_acos ⇒ Object
- .old_asin ⇒ Object
- .old_atan ⇒ Object
- .old_cos ⇒ Object
- .old_sin ⇒ Object
- .old_sqrt ⇒ Object
- .old_tan ⇒ Object
- .sin(angle) ⇒ Object
- .sqrt(val) ⇒ Object
- .tan(angle) ⇒ Object
Class Method Details
.acos(dimless) ⇒ Object
35 36 37 38 39 40 41 |
# 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 |
.asin(dimless) ⇒ Object
53 54 55 56 57 58 59 |
# 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 |
.atan(dimless) ⇒ Object
71 72 73 74 75 76 77 |
# 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 |
.cos(angle) ⇒ Object
26 27 28 29 30 31 32 |
# 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 |
.old_acos ⇒ Object
34 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 34 alias :old_acos :acos |
.old_asin ⇒ Object
52 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 52 alias :old_asin :asin |
.old_atan ⇒ Object
70 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 70 alias :old_atan :atan |
.old_cos ⇒ Object
25 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 25 alias :old_cos :cos |
.old_sin ⇒ Object
43 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 43 alias :old_sin :sin |
.old_sqrt ⇒ Object
16 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 16 alias :old_sqrt :sqrt |
.old_tan ⇒ Object
61 |
# File 'lib/pulo/quantity/numeric_overloads.rb', line 61 alias :old_tan :tan |
.sin(angle) ⇒ Object
44 45 46 47 48 49 50 |
# 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 |