分子動力学計算ソフトGromacsはグラフ作成ソフトGraceに対応しているので、エネルギーの結果などを以下のコマンドでGraceに投げると簡単にグラフを作成してくれます。
Grace 公式サイト
RedHat系ならyumで簡単にインストールできます。コマンドラインはgraceではなくxmgraceであることに注意。インストール方法はこちらに説明がありました。
簡単なサンプル
# gromacsでエネルギーを出力 g_energy -f dynamics.edr -o energy.xvg <<_EOT_ Potential Kinetic-En. Total-Energy _EOT_ # graceで表示 xmgrace -nxy energy.xvg
Gromacsはg_から始まる各解析ツールでxvgという拡張子を持ったファイルを生成します。Gnuplotでも似たようなことができるのだけど、こっちの方が操作しやすいので個人的にはオススメ。
ただ、大量にxvgファイルがあってそれぞれを確認しないといけない時、xmgraceでいちいち開くのが面倒くさい。前置きが長くなりましたがこれからが本題。
そこで、Graceのコマンドライン機能を使って、自動でxvgファイルをpngファイルに書き出します。あとはLinuxの画像ビューワ(なんでもいいけど、僕はeogを愛用)を使えば、ぱぱっと確認できて計算が上手くいっているかどうかを確認できます。
コマンドライン用Graceのコマンドは、「gracebat」。
gracebat -nxy [入力xvgファイル] -hdevice PNG -printfile [出力pngファイル名]
これを使ってシェルスクリプトを書けば、「あるフォルダ内にあるxvgファイルを自動でPNGファイルに変換」ってこともできる。
#!/bin/bash ext=xvg files=(`ls *.${ext}`) for file in ${files[@]}; do echo ${file%%.${ext}} gracebat -nxy ${file} -hdevice PNG -printfile png_${file%%.${ext}}.png done
それでeog *.pngとすると、だーっとグラフを確認できる。ちなみに、gracebatの引数に色々加えることで生成されるグラフの設定ができるらしい。例えば、-worldオプションを加えると、縦軸と横軸の範囲を設定できる。こういう情報がなかなか見つからないので、チュートリアルなんかを見ながら試行錯誤してます。
これで仕事の効率が上がったのかは定かではないが、こういう積み重ねで時間を節約できてると信じてやってます。そういえば年が明けましたね。今年の目標は、「BashとPythonとお友達になる」で行こうかと。