« 2007年05月 | メイン | 2007年07月 »

2007年06月30日

PC GAMESS 7.1.0 RC 並列MP2続報

PC GAMESSのサイトにnew mp2 gradient code documentationが公開されています。これを参考に入力ファイルを調整し、実用的なベンチマークという意味で、電子数208の有機分子(第1~第3周期の元素を含む)を種々のモデル化学でGradient計算してみました。Gradient計算で、最適化1サイクルあたりの時間が大体分かるので、実験計画を立てやすいというのが理由です。

Model ChemistryBasis FunctionsMemory(MW)Wall Clock Time(sec)rel.Time
HF/3-21G(d)2991.597.61.00
B3LYP/3-21G(d)2992.5278.22.85
MP2/3-21G(d)2999.6751.87.70
HF/DZVP4493.11048.810.75
B3LYP/DZVP4494.51509.115.46
MP2/DZVP449215207.953.36

HF, B3LYPについては
$p2p p2p=.t. dlb=.t. $end
$smp csmtx=.t. $end

MP2については
$p2p p2p=.t. dlb=.t. xdlb=.t. $end
$smp csmtx=.t. $end
$mp2 method=1 $end

のオプションにて計算を実施(HF,DFTはp2pでなくても並列計算できますが、MP2に合わせるということと、p2pを使った方が少し計算が速いため)。
MP2も結構健闘していて、基底関数が大きくなるとHFに接近する傾向があります(DFTほどではないですが)。メモリの消費量は他の二つに比べて増えますが、上記オプションを使うことでエネルギー計算の際の(異常なメモリ消費による)ロスはなくなります(400 Basis Functionsの系で700秒短縮(2000→1300)されました!)。
前回のグラフでも分かるように、小さい系(<200 Basis Functions)ならMP2はDFTよりも高速ですので、その辺ではかなり使えそう。そしてある程度大きい系でもDFTでは扱えない相互作用を扱うのにMP2は必要ですから、これぐらいのスケールで収まったのは実務上大きいですね。

2007年06月28日

PC GAMESS 7.1.0 RC 公開。

本日、PC GAMESSの最新版7.1.0RCが公開されました。
ついにMP2 Gradientの並列化が実装され、本当の意味での高速MP2計算が実行できるようになりました。ちなみにP2P shared memoryで実行する仕様です。

この最新版で、HF,MP2,B3LYPのスケーリングを比較してみました。炭化水素の1点計算で、Basis Functionの数が42~396までの4種類(基底関数は6-31G(d)で、分子の大きさを変えたもの)について実施し、グラフ化したのがこれ↓
scaling.jpg

小さい分子ではMP2が優秀、大きい分子ではB3LYPが優秀というセオリー通りの結果です。MP2は396 Basis Functionの系でメモリが飽和してしまい、エネルギー計算を5 passに分割しているため、メモリ量さえ十分確保できればB3LYPの曲線に近づくと思われます。ただ、現実的にはメモリ量に限りがありますので、少ないメモリ量で高速に計算できるDFTはやはり優秀ですね。

話は変わりますが、個人的には折角並列PCMを実装しているので、もうちょっとPCM計算のチューニングをできるように機能拡張してほしいですね(原子あたりのセグメント数の指定とかできない感じ)。PCMでの構造最適化の収束が非常に悪いので…

2007年06月25日

my little forum導入。

pc-chem.infoのCC-BBSを、my little forumを使って「Desktop Chemistry Forum」に衣替えしました(もう衣替えシーズンはとっくに過ぎたけど…)。
導入はすごく簡単で、日本語のインストーラでサクサク。昨日のCaptcha in MTに比べれば雲泥の差です。

やっと、ほとんどのフォームにCaptchaが付きました。管理も大分楽になることでしょう。
あ、CC-BBSにリンクしているページの管理者さんに連絡しなくては。

2007年06月24日

Captchaプラグイン導入。

管理しているMovableTypeにCaptchaプラグインを導入しました(ちょっと見にくい画像の中の文字を読み取ってもらう認証)。コメントスパムがこれで減ることを願います…
導入に際しては、小粋空間の「Authen::Captcha をインストールして Captcha Plugin を利用する(CPAN による perl モジュールのインストール)」を参考にしました(同じレンタルサーバについての内容だったのでちょうど良かった^^)

で、その通りにやってみたのに、エントリーのページでCaptchaが表示されません。
何でかなぁ…と考えていたところ、エントリーテンプレートへの挿入の仕方が間違っていたらしく。
<script type="text/javascript" src="<$MTCaptchaJsURL$>"></script>
を挿入するのですが、これをpタグで囲うとダメで、<div class="comments-open-content">のすぐ下の階層に配置すると無事表示されました。

これに気付くまで2時間…長かったぁ。

2007年06月21日

最近の話題3つ

話題1つ目。
本を2冊買いました。アドバンスソフト刊行の「フラグメント分子軌道法入門」と「タンパク質量子化学計算」です。生体高分子であるタンパク質の量子化学計算は膨大な計算資源(ハードウェア・時間)が要求されますが、二冊ともそれを現実的なタイムスケールに引き寄せる革新的なアルゴリズムに関する「超」入門書です。
2books.jpg

GAMESSを使っている人間として、FMO法を正しく理解し、計算を実行できるようになることは重要だと思いますし、タンパク質を相手にしている人間として、タンパクの全電子計算を学ぶことは将来的役に立つとも思います。
2冊の本でそれぞれ紹介されている方法論は、それぞれABINIT MPやProtein DFとしてRSS21からプログラムがダウンロード可能です。興味のある方は是非。

話題2つ目。
MOPAC 2007のGRAPHF出力を可視化できる、フリーの分子モデルビューア「Jmol」のアイコンを作ってみました。Jmolのソースディストリビューション内にあった画像を基にしています。
ダウンロードはこちらから。
16,32,48,64,96,128px四方のマルチアイコン仕様です。

話題3つ目。
NVIDIAがHPC(High Performance Computing)向けGPU computing solution「Tesla」を発表しました
ターゲットには分子力学も含まれ、プログラムによっては従来のCPU中心の計算よりも100倍の高速化が可能かも知れないらしいです。Tesla自体はPCIex16(x8も可?)スロットの拡張カードで、つまり普通のPC/AT機に追加できます。そして、Teslaに対応したプログラムを走らせれば…おぉ、今からかなりわくわくします。
まぁ、問題はその価格ですが…(きっと、別にワークステーション1台買った方が安いに違いない…)
タンパク質のフォールディング解析とかで威力を発揮するかもしれませんねぇ。FMOとか並列向けのアルゴリズムはTesla使えるのだろうか?

[追記]
Teslaの価格は、PCIexカード型のC870で18万ちょいぐらい。おっ、買えるか!?
Cで書かれたプログラムならCUDAのCコンパイラでGPU向けバイナリを生成できるみたい。GAMESSはFだからF2Cでいけるかな?効率はどうなんだろ。

2007年06月16日

GAMESS/FMOに落とし穴あり。

連荘で化学ネタです。今度は計算の備忘録。
GAMESSにFMOが実装されていることは、計算をやっている人なら周知の事実ですが、WinGAMESSに収録されている入出力例(manualsフォルダ内のtests.pdf)のexam37はそのまま実行してもエラーが出ます
まぁ、とりあえずFMOってどないやねん、とpdfファイルからコピペして実行すると、

**** THERE ARE ATOMS LESS THAN 0.100 APART, QUITTING... ****
EXECUTION OF GAMESS TERMINATED -ABNORMALLY- AT Sat Jun 16 22:13:30 2007

てな感じでエラー終了します。

で、出力ファイルをよく見ると、そもそもFMOのシークエンスに入ってません。つまり、$FMOが認識されていないことになります。
いろいろ試行錯誤した結果、$fmoの後に改行を入れることで解決。

[before]
$fmo nfrag=3 icharg(1)=0,0,0
frgnam(1)=frag01,frag02,frag03
indat(1)=1,1,1,
2,2,2,
3,3,3
$end

[after]
$fmo
nfrag=3 icharg(1)=0,0,0
frgnam(1)=frag01,frag02,frag03
indat(1)=1,1,1,
2,2,2,
3,3,3
$end

たったこれだけで解決です。

ちなみに安息香酸二量体とか小さい系では、並列化していなければ、フラグメントに分割するのとしないのでは後者の方が計算は速いですね。GAMESS(US)の並列化にはチャレンジしてないので、小さい系でも並列化の効果があるかはわかりません…

有機化学者にとって身近な謎?

有機化学実験をやったことのある人なら、必ず1回は分液操作をしたことがあると思います。
普通、分液というと水―有機溶媒系がほとんどで、よく有機溶媒としてエーテル(ジエチルエーテル),クロロホルム,酢酸エチルなどが使われます。

が、

有機溶媒―有機溶媒の分液もごく稀に行われることがあります。ペンタン―アセトニトリルやヘキサン―メタノールがそんな一例です。
不思議な2層の1つに、エーテル―DMSOがあります。ヘキサン―メタノールは直感的に2層になることが理解できるのですが、エーテルとDMSOにそんなに違いが有るとは思えません。エーテルとDMFは混和しますし…

『なぜ、エーテルとDMSOは(部分溶解はしているでしょうが)混和せずに層分離するのか?』

会社で、ふとそんな出口のない(かのように感じられる)議論をしていました。室温で混和のΔGが正だから、層分離する。それはそうかも知れませんが、なぜΔGが正なのかDMFとはどう違うのかが気になるわけです。
表面張力も大きな影響を与えるように思います。ヘキサン―メタノール系では、何が溶けているかによってうまく層分離できるかどうかは変わってきますし。

この問題について何か明快な答えをお持ちの方は、是非コメントでお聞かせ下さい。そのコメントで多くの人のモヤモヤが解消されることになるかもしれません…!

2007年06月03日

久しぶりに気が休まる時間で…

今週(いやもう先週か?)は、うちに帰ってもろくにPCに向かわずに即睡眠生活だったせいもあり、あまりネットの動向を注視していませんでした。んなもので、掲示板の質問に答えてなかったり、記事への突っ込みに応対してなかったり(こちらはとりあえず答えましたが)、メールがめちゃくちゃ溜まってたり(返事遅れてすみません)と、完全に原始人化してました。mixiはチラ見だけしてましたが…
で、やっとまとまった時間が取れたので、よく見ているサイトなんぞをチェックしてたんですが、

どう見ても更新がありません。

あれ?もしかして自分だけたくさん時間が過ぎてて、実は周りは2日ぐらいしか経ってないとか?(逆浦島太郎状態?)

PCにも向かわず即寝、の原因は、先々週からスタートしていた中量合成(大量というほどでもない:50 g程度)。各ステップの収率が悪いわ臭い化合物を扱うわで、大変な消耗戦でした。何とか6月第1週でケリが着きそう。
どうしても有機合成を生業にしている以上、悪臭を有する化合物と付き合う必要がでるのですが、少量ならまだしも大量だと強敵です。ジメチルスルフィド(都市ガスの臭い成分の一つ)を100mL使うというのはなかなかの地獄っぷりでした。下手に臭いを出すと、近所のマンションに流れていって「なんか臭い」→「あの研究所か!」→出て行け運動→研究所閉鎖・撤退、なんてことにもなりかねません(こっちの立場は圧倒的に弱い)。
そんな戦いもやっと終戦。事なきを得ました。まぁ、明後日は自分の身が危険になる毒物を使うわけですが…合成をずっとやっていると、実は非常に危険な職業であるということがだんだん希薄になってきます。気を引き締めなければ。

その点、計算は危険が伴わないので気が楽です。結果の解釈には気苦労が絶えませんが。


ps
WAVEがM3で出した新作、特に『Destruction "A"』が気になってます。果たして手に入ることはあるのだろうか…ぶっちゃけmp3で配布されても嬉しくない…原盤がほしい。イベントにほいほい行ける体ではないので、こういう現場少数配布が恨めしい…