2007-11-01から1ヶ月間の記事一覧

フィボナッチ数列の計算法(1)

http://blog.livedoor.jp/dankogai/archives/50958771.html O(1)の計算方法が紹介されているが、roundをつかうのはちょっと気持ち悪い(64ビット整数を求めるのに、80ビットの浮動小数点数の計算では追いつかない?)という人のために、O(logn)で計算する方…

zzの逆関数(5)

一般の c に対して、 を解く。 ここで、 とおく。 ただし、aは虚部が実部の絶対値より大きく、 aの絶対値が1より大きくなるように虚部を調整しておく。 そうすると、 以前と同じようなグラフが描けて、同じように解ける。 以下、ソース。 ただし、あまり検証…

zzの逆関数(4)

を解く。 同じように、 を解けばよい。 すなわち、の、となる点を取ればよい。 は、同じグラフで、となる点を取ればよい。

zzの逆関数(3)

前回、グラフで解の存在だけ示したが、 それだけではさみしいので、具体的数値を求めてみよう。 グラフによると、wが0に近いところに解があるので、 それを求めてみる。 下より、wは小さいので、 これを上に代入して、 Xはそれなりに大きいので、log(2πn)と…

zzの逆関数(2)

まず、zz = 1 の解を考える。 とする(x, y, s, tは実数)。 より、 nは整数。 nが0なら、uが0で、zは1となる。 nは正とする。負なら共役複素数を考えればよい。 再び、 とおくと(v, wは実数)、 最後は多価だが、これだけ考えればよい。 これから、 これの…

zzの逆関数(1)

前に読んだこの本の巻末で、 zzの逆関数について言及されていた。xのx乗のはなし (はじめよう数学)作者: 土基善文,上野健爾,高橋陽一郎,浪川幸彦出版社/メーカー: 日本評論社発売日: 2002/07メディア: 単行本この商品を含むブログ (3件) を見る考察はされて…

複素数(11)

あとのためにまとめておこう。 D言語での複素数 あれこれ http://d.hatena.ne.jp/inamori/20071005/p1exp http://d.hatena.ne.jp/inamori/20071008/p1cos/sin/tan http://d.hatena.ne.jp/inamori/20071009/p1log http://d.hatena.ne.jp/inamori/20071011/p1s…

複素数(10)

cdouble exp(cdouble z)などを実装してきたが、 cdouble以外のcfloat、crealも同じコードで済む。 何度も同じコードを書きたくないとき、 D言語ではmixinを使うらしい。 import std.cstream;void main(char[][] args) { dout.writefln(pow(2.0f, 5)); dout.w…