2020年04月21日

wxMaximaで四苦八苦して楽しーーといいのにぃ

黒体輻射のプランク数式をwxMaximaで計算しようとしてOverFlowが生じた。困った、困った、島倉千代子!!  
exp(hν/kT)   h プランク定数、ν 振動数、k ボルツマン定数、T 絶対温度

double型だと10の308乗まで扱える。それは膨大な数字だ・・・・普通はね。
で、eの何乗かというとexp(709) ぐらいである。

つまり、hν/kT > 710 ではOverFlowでエラー出ますのです。νが低い領域では710超えないので計算可能。光の領域では超えた。

では、どうするか。倍精度の倍の仕組みが・・・・ おお、多倍長というものがMaximaにはあるではないか、なあーーんだ!!  
って、簡単にうまくいくはずがない。この多倍長は有効桁数を増やす機能があるが指数部分を拡張してないのではないか、と想像している。bfloat()の話ね。
fpprec : 50 ;   なんのも試したが。

そういうわけなので、こういう場合はどないすんだろか、ここらは天文分野でデカイ数字を扱うので検索はそっちだなあ。

128bitの規格はあるらしいが、それがMaximaで使えるかどうか知らんもんね、わし。
4倍精度で検索するとヒットするのだが、どうも僕が手を出すものではないなあ。だってワシ、四則演算だけで十分だし・・・・うむ。
擬似的なdouble-double手法とかも出てきたが、もうワケワカメ。

計算して直ぐにグラフ表示するとなるとwxMaximaが楽でいいんだ!! 

   日中、スズメがチュンチュン鳴いている。スズメかな。違うかな。スズメと別のもいるぞ。こいつら、オレがデジカメもって写しに行くといなくなるんだ いぢわる!!

posted by toinohni at 12:09| 東京 ☀| Comment(0) | ソフト系雑学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください