2010/06/17(木)はじめての電子状態計算
先輩,プログラムが動きません!
専門(より)の話.後輩にプログラムが動かないので助けて欲しいといわれました.で,見てみたんですけど,どうやら,『はじめての電子状態計算』っていう本に付属しているプログラムらしい.
動作環境を見てみたら,「Windows 3.1,Windows95,Windows NT3.5 Windows NT4.0,MS-DOSも可」とある.
あれ,これだけ?
XPやVistaはどこでしょうか……?
さらに,記述言語はFORTRAN 77らしいです.うーむ古いプログラムですね.
これでは,コンパイル済みの実行ファイルでは動かないかも.
幸運なことに,ソースコードはついてました.
なので,「とりあえず,自分も試してみるから明日報告するよ」といって,後輩が帰ってからコンパイルを試みることに.
まず,バイナリをVistaで実行
本に書いてある通りに作業をして,一応それらしい動作しましたが,以下のようになりました…….c:\DVXA>SETDVXA.BAT c:\DVXA>cd CALC\CO c:\DVXA\CALC\CO>makef05 DOS/4GW Protected Mode Run-time Version 1.97 Copyright (c) Rational Systems, Inc. 1990-1994 DOS/4GW error (2001): exception 0Dh (general protection fault) at 21F:00006F12 TSF32: prev_tsf32 5284 SS 22F DS 22F ES 27F FS 0 GS 0 EAX 0 EBX 22F ECX 0 EDX 0 ESI 120 EDI 588C EBP 4F52 ESP 4448 CS:IP 21F:00006F12 ID 0D COD 7E40 FLG 13246 CS= 21F, USE16, byte granular, limit 914F, base 310F2D0, acc FB SS= 22F, USE16, byte granular, limit 489F, base 3118420, acc F3 DS= 22F, USE16, byte granular, limit 489F, base 3118420, acc F3 ES= 27F, USE16, byte granular, limit 7CFF, base 31414C0, acc F3 FS= 0, USE16, byte granular, limit 0, base 31414C0, acc 0 GS= 0, USE16, byte granular, limit 0, base 31414C0, acc 0 CR0: unavailable c:\DVXA\CALC\CO>dvscat n \dvxa\calc\co DOS/4GW Protected Mode Run-time Version 1.97 Copyright (c) Rational Systems, Inc. 1990-1994 DOS/4GW error (2001): exception 0Dh (general protection fault) at 21F:00006F12 TSF32: prev_tsf32 5288 SS 22F DS 22F ES 27F FS 0 GS 0 EAX 0 EBX 22F ECX 0 EDX 0 ESI 120 EDI 588E EBP 4F52 ESP 4448 CS:IP 21F:00006F12 ID 0D COD 7E40 FLG 13246 CS= 21F, USE16, byte granular, limit 914F, base 310F2D0, acc FB SS= 22F, USE16, byte granular, limit 489F, base 3118420, acc F3 DS= 22F, USE16, byte granular, limit 489F, base 3118420, acc F3 ES= 27F, USE16, byte granular, limit 7CFF, base 31414C0, acc F3 FS= 0, USE16, byte granular, limit 0, base 31414C0, acc 0 GS= 0, USE16, byte granular, limit 0, base 31414C0, acc 0 CR0: unavailable Could Not Find c:\DVXA\CALC\CO\f15 c:\DVXA\CALC\CO>F05とかっていうファイルが出来るはずなのに出来ないし,EXにあったF05ファイルをコピーして実行してもエラー出たし…….
やっぱり完全には動かないってことですか?それとも設定ミスだろうか(書いてあることは全部やったんですが).
で,コンパイルしてみるかってことに.
これがFORTRANか!
ソースコードはGreekだった
ソースコードを見てみたんですが,わけわかんなかったです,はい…….というか読む気が起きなかった……….
このコードにはコメント文のコの字もなかったので,理解するにはちゃんと勉強しないと駄目だということがわかりました.
gfortranでコンパイル
コンパイルの仕方については,本にはわずかに書いてありました.なになに,バッチファイルがあるのでそれを実行しろ,とあります.
コンパイラは……Watcom FORTRAN?聞いたことがない名前です.
手持ちのFORTRANコンパイラはgfortranだったのでとりあえずそれで実行しました.
結果は……
出来たものと出来ないものがありました.例えば,上のF05というファイルを作成するプログラムは成功し,実行して中身のあるファイルをはきました.
c:\DVXA\CALC\CO>MAKEF05 f25 for nonsym calculation was generated c:\DVXA\CALC\CO>というわけで,実行ファイルがVistaやXPに対応していなかったらしいです.
ただ,全体的に失敗したものが多かったので,コンパイラを変える必要がありそうです.
g77(FORTRAN 77のGNUコンパイラ)をどこからともなく探してきて*1,コンパイルしてみるとか.
けど,今日は時間切れ.後輩に方針は示せそうなので後は頑張ってもらいましょう.
それにしても読みにくい本だ 加えて問題点
何となく読みづらいです.操作の手順も本文にコマンドラインの解説があるから見づらい見づらい.また,アルゴリズムとかにはほとんど触れてないのも,理解しづらいですね.
それに版が古くて,最近のプログラムが公開されていないところを見ると,あまり開発とかは活発ではないようです.
プログラムも,あんまり大規模なものでもないし,高度なことをしようとすると壁に当たってしまうのではないかと思います.
何よりも問題は,ソースコードの改変とかが禁止されているということ.
これによって,ユーザ自身による改良という道がたたれています.
GPLとかにしておけばもう少し広まったかもしれないですね.
というわけでフリーのソフトを少し探してみる
結構いっぱいありますね.日本語ドキュメントのものでは,文部科学省系の第一原理擬ポテンシャルバンド計算ソフトウエア「PAHSE」,
Debianにパッケージングされているものでは,ABINITというものが見つかりました.
両者とも,ドキュメントが豊富で扱いやすそうです.
特に後者はGPLライセンスで再利用は(研究などに使う分には)容易です.
動画のエンコードなんかに使うより,こういうのに計算機を使った方が有用ですよね…….
Windows XPでは動作しました(2010年8月3日追記)
意外とこのページを見ている方がいるようでしたので,追記をしてみます.『はじめての電子状態計算』っていう本に付属しているプログラムですが,
どうやら,XPであれば動作するようです.先輩と後輩,私が個別に実行して確認しました.
ただ,もう一度Vistaでやってみましたが,やはり動かず.NT6.0以上では駄目っぽそうです.
2010/06/16(水)TeXがらみの設定
この作業を経ることで,ワードなり,パワーポイントなり,エクセルなり,花子なりに
TeXの数式(日本語つき)を挿入できるようになってしまうわけです.素晴らしい!!(個人的には)
2010/06/15(火)珍しくサッカーを応援したら勝ってしまった……
そうしたら,たまたま日本が勝ってしまって驚いた次第です.
恐るべし,
さすがに次のオランダはだめだとは思いますが,頑張ってほしいものです.
録画しておけば良かったかなと少し残念に思っています.
2010/06/14(月)FMラジオを高音質で安定してパソコンで録音するには?
FMラジオを高音質で安定してパソコンで録音するには?
表題を実現するにはどうすればいいのかを私なりに調べたので書き置きしてみます(後で使うかもということで.).理由は帰省したときに,
家族に『FMラジオを録音して好きなときに高音質で聴きたいんだが,いいのはないか,パソコンで』
って訊かれたことによります.
USB接続のチューナを購入して使う
一番手軽で安そうだと思ったのはこれ.投資は4000~5000円くらいだとされる.製品候補はこれやこれ.
しかし,高音質には対応していないばかりか,
ちゃんとラジオが入らないという問題を抱えている機種しか見つかりませんでした.なので,却下.
ラジオなどからICレコーダで録音
ICレコーダは機種にもよりますが,サンヨーの製品で1万円と少し.これの昔のモデルをもってますが,音質はまあ私がよくわからない程度には良いです.
接続するラジオチューナがまともであれば,普通にそれなりに満足な音質で録音できるのでは?
ただし,問題はタイマー録音が出来ないこと.なので,とりっぱなしにする必要があるんですが,そうするには容量が小さいですよねぇ…….
CDチューナーアンプシステム+サウンドカード
行き着いた先がこれです.ある意味でこれが最強だと思われます.サウンドカードは,例えばオンキヨーのSE-200PCIや,USB接続では同じくオンキヨーのSE-U33GXV(B).
お値段はリンク先を見ていただければわかるように12000円ほど.
これと,FMラジオ音源を用意すれば,録音は可能.
専用ソフトではないにせよ,Windowsのタスクや,自作のバッチファイル,ラジオチューナ側のプログラムを
駆使してタイマー予約に近いことは出来る(はず.)
これの問題は,ラジオチューナを用意する資金を確保する必要があるということです.
サウンドカードの性能は折り紙付きなので,
下手なラジカセなどが音源だと明らかにその音質が録音に反映されてしまいます.
だとすると,それなりの性能のCDチューナーアンプシステムを用意する必要があるんですが,
うちのそれがどうやら壊れているらしいとのこと.
うーむ,さっと調べたところ,オンキヨーのそれが手頃ですかね.
値段を調べると,2万円を切っているところがあります.サウンドカードとこれで3万円か…….
パソコンは私が今使っているマシンを流用すればいいから,それに関する投資はなしですね.
いろいろ,別の使い道(レコード音源を高音質でデジタル化とか)もありますし,グッド!
いいなぁ,欲しいなぁ.
結論は,お金を掛けないと,高音質は駄目よ!ってことですね………….
2010/06/13(日)荷台が壊れる
荷台が壊れる
買い物を済ませて,荷台に荷物をくくりつけようとしたところ,異様に揺れていることに気がつきました.改めて,荷台を凝視すると,なんと4本ある支柱のうちの一本が折れているではありませんか!
破断面を見ると,金属疲労のような感じ.
うーむ,取り付けてから4000kmくらいは走りましたし,たまに耐荷重を遙かに超える荷物を積載したり,
景気よく転倒したりしていたので,仕方ないか,っていう心境です.
というわけで荷台が使えない
買い物をしてしまった以上,荷物を持ち帰らないといけないわけで,固定したのち,振動をなるべく与えないように静かに漕いで帰ることになりました.
無事,部屋までは帰れたものの,今後しばらくは大量の買い物は出来なくなってしまいました.
けど,今からこの自転車用のキャリアを新調するのも考え物です.どうしたものでしょう.
買ってしまいましょうかねぇ…….
ニュースばかり録画
というのは,人工衛星のはやぶさについてのニュースを見て保存するためです.改めてですが,この人工衛星の開発設計をした人はすごいですね.
様々なトラブルに遭遇しても対応できるように二重三重の対策を施す周到さ.
それを日本の非常に少ない宇宙開発研究費で実現するという涙ぐましい努力.
こういう人になりたいものです.
NHKスペシャルとかで特集やらないでしょうか.