けいじゅ@日本ラショナルソフトウェアです. In [ruby-list :8657 ] the message: "[ruby-list:8657] sin(complex) ", on Jul/09 12:37(JST) GOTO Kentaro writes: >ごとけんです >> やっと http://www.rkmath.rikkyo.ac.jp/~kida/ubasic.htm >>から UBASIC を落としてきて確認しました。 > >UBASIC で検算ってのもなんか本質的ではないので ^^;; 確かにそうなんですが(^^;;; 割れながら実際に正しいかどうか分からなかったもので(^^;;; # 実際間違っていたし(^^;;;;;;;;;; >L.V.アルフォースの教科書「複素解析」(現代数学社)で定義だけ >調べてみました。数学の表記法を使って書きます。 (以下略) 私も実際にこんな感じで計算したんですよ. でも, 色々と不安があって(^^;;; In [ruby-list :8659 ] the message: "[ruby-list:8659] Re: sin(complex) ", on Jul/09 15:43(JST) Shin-ichro Hara writes: >原です。 >| cosh(x) = (exp(x)+exp(-x)) / 2 > sinh(x) = (exp(x)-exp(-x)) / 2 >かな。ついでに > exp(x + iy)= exp(x)(cos(y) + i sin(y)) > cos(x + iy)= cos(x)cosh(y) - i sin(x)sinh(y) > sin(x + iy)= sin(x)cosh(y) + i cos(x)sinh(y) なんてはっきりいっていただけると心強いですよね(^^;;; In [ruby-list :8662 ] the message: "[ruby-list:8662] Re: sin(complex) ", on Jul/09 19:35(JST) GOTO Kentaro writes: >ごとけんです >ところで、Complex#** を考えるとき、 >数学的な定義によると、まず、exp の逆関数として >log を定義し、 > > z**w = exp(w log(z)) > >で与えられます。ここで、 log は無限個の値を持つ >多価関数なので、 z**w も無限個の値を持つことに >なります。で、一つの値(主値)を決めるんですが、 >この範囲はどんなライブラリに準拠するのが自然なん >でしょうか? >FORTRAN あたりで標準化されてればそれに合わせるのが >よいと思います。 > >なお僕が自然だと思うのは、log(z) の虚部 arg(z) を >libm の atan2(x,y) の範囲に合わせるとゆー、 >いまの complex.rb の仕様(?)と同じモノです。 >が、この atan2 の範囲は標準化されてるのでしょうか? ># IEEE の浮動点小数演算の規格の解説がどっか行ってしまった ;_; おぉ. でもきっと偶然ですね. 実は, 主値の問題は適当にやっているので... こうした方が良いということがあればいって下さい(__;;; __ ................................石塚 圭樹@日本ラショナルソフトェア... ----------------------------------->> e-mail: keiju / rational.com <<---