Module | Math |
In: |
complex.rb
|
sqrt | -> | sqrt! |
exp | -> | exp! |
log | -> | log! |
log10 | -> | log10! |
cos | -> | cos! |
sin | -> | sin! |
tan | -> | tan! |
cosh | -> | cosh! |
sinh | -> | sinh! |
tanh | -> | tanh! |
acos | -> | acos! |
asin | -> | asin! |
atan | -> | atan! |
atan2 | -> | atan2! |
acosh | -> | acosh! |
asinh | -> | asinh! |
atanh | -> | atanh! |
# File complex.rb, line 534 def acos(z) if Complex.generic?(z) and z >= -1 and z <= 1 acos!(z) else -1.0.im * log( z + 1.0.im * sqrt(1.0-z*z) ) end end
# File complex.rb, line 566 def acosh(z) if Complex.generic?(z) and z >= 1 acosh!(z) else log( z + sqrt(z*z-1.0) ) end end
# File complex.rb, line 542 def asin(z) if Complex.generic?(z) and z >= -1 and z <= 1 asin!(z) else -1.0.im * log( 1.0.im * z + sqrt(1.0-z*z) ) end end
# File complex.rb, line 574 def asinh(z) if Complex.generic?(z) asinh!(z) else log( z + sqrt(1.0+z*z) ) end end
# File complex.rb, line 550 def atan(z) if Complex.generic?(z) atan!(z) else 1.0.im * log( (1.0.im+z) / (1.0.im-z) ) / 2.0 end end
# File complex.rb, line 558 def atan2(y,x) if Complex.generic?(y) and Complex.generic?(x) atan2!(y,x) else -1.0.im * log( (x+1.0.im*y) / sqrt(x*x+y*y) ) end end
# File complex.rb, line 582 def atanh(z) if Complex.generic?(z) and z >= -1 and z <= 1 atanh!(z) else log( (1.0+z) / (1.0-z) ) / 2.0 end end
# File complex.rb, line 499 def cosh(z) if Complex.generic?(z) cosh!(z) else Complex( cosh!(z.real)*cos!(z.image), sinh!(z.real)*sin!(z.image) ) end end
# File complex.rb, line 491 def sinh(z) if Complex.generic?(z) sinh!(z) else Complex( sinh!(z.real)*cos!(z.image), cosh!(z.real)*sin!(z.image) ) end end