IPC総合情報処理センター
内 線 7474
E‑mail center@cc.kagoshima‑u.ac.jp
http://w3.cc.kagoshima‑u.ac.jp/
URL
監修 広報専門委員会

InformationProcessing 総合情報処理センタークリップボード
Center＜その 23＞大規模分子系 ab initio 分子軌道法プログラム Q‑Chem 利用の手引き
Q‑Chem は大規模分子系（数百原子）に対して ab initio 分子軌道計算が可能なプログラムです。この分野のプログラムとしては Gaussian が著名ですが、内部座標系として効率的なものを用いる最適化ルーチンを採用し、計算時間が場合によっては Gaussian より短いという特長を持っています。総合情報処理センターに導入されているのは最新の Q‑Chem 2.0 で、ECP(Effective Core Potentials)基底関数もサポートされています。Q‑Chem は研究利用サーバ ohara（HP9000V2500 PA‑RISC 440MHz×8）で実行され、同時に実行されるジョブ数が 8 までは実行可能な最高速度（1.76GFLOPS）で計算が行われます。

１．Q‑Chem の実行①kinkoh.cc.kagoshima‑u.ac.jp（163.209.20.1）にログインします。

②.cshrc に以下の行が無ければ追加し、「source .cshrc」として.cshrc をリロードします。追加した
場合、次回のログインからは自動的にロードされます。

setenv QC /opt/qchem
setenv PATH ${PATH}:${QC}/bin:${QC}/exe:${QC}/util
setenv QCAUX ${QC}/aux
setenv QCPLATFORM HP̲UX
setenv RUNCPP /lib/cpp③以下のコマンドで Q‑Chem を実行します。

(1)インタラクティブジョブとして実行

コマンド
bsub ‑Ip ‑m ohara qchem [入力ファイル] [出力ファイル]

実行可能 CPU 時間60 分

同時実行
ジョブ数
４

インタラクティブジョブとして実行した場合は Ctrl‑C で停止が可能です。インタラクティブジョブは数秒〜数十秒で終了するようなテスト実行の場合に用いるのがよいでしょう。上記コマンドで実行
した場合、

Job <34011> is submitted to default queue <I>.
<<Waiting for dispatch ...>>のように、ジョブがキューに投入されたというメッセージと、ジョブ開始を待っていることを意味するメッセージが表示されます。しばらく待つと、<<Starting on ohara>>と表示され、ジョブが開始されます。ジョブが終了するとプロンプトが表示されますので、ビューア（more、less など）やエディタ（vi、emacs など）で出力ファイルを確認してください。出力ファイルを省略した場合は、標準出力に計算結果が出力されます。

(2)バッチジョブとして実行

コマンド実行可能 CPU 時間

同時実行
ジョブ数

bsub ‑q A ‑m ohara qchem [入力ファイル] [出力ファイル]

60 分

４

bsub ‑q B ‑m ohara qchem [入力ファイル] [出力ファイル]

4 時間

２

bsub ‑q C ‑m ohara qchem [入力ファイル] [出力ファイル]

7 日間

１

通常はこの方法で Q‑Chem を起動します。計算に必要とされる時間に応じてキューを分けてジョブを投入してください。短い計算を繰り返し行う必要がある場合などには、すべてのキューを使うことで１ユーザーあたり最大７ジョブまでの同時実行が可能です。インタラクティブジョブも加えるとさらに多くのジョブの同時実行が可能ですが、CPU 数の 8 を超えるジョブを同時に実行しても計算時間は短くなりません。他のユーザーのジョブ数と合わせて最大でもジョブ数が 8 以下になるようにすると効率よく計算できます。
実行中のジョブ数を確認するには、bhosts コマンドを使用します。例えば、実行中のジョブが 3 の時は以下のように表示されます。

[kinkoh]% bhosts ohara
HOST̲NAMESTATUSoharaokJL/UMAXNJOBSRUNSSUSPUSUSPRSV‑‑33000

ジョブを投入すると、Job <34031> is submitted to queue <A>.

のように表示されます。投入したジョブの実行状況を確認するには、[kinkoh]% bjobsと入力します。bjobs は実行待ちと実行中のジョブを表示するコマンドです。

JOBID USER

STAT

34031 p876543r PENDQUEUEFROM̲HOST

Akinkoh

EXEC̲HOST

JOB̲NAMESUBMIT̲TIME* test.out

4 月 25 12:10

実行待ちジョブは STAT が PEND、実行中のジョブは STAT が RUN となります。終了したジョブは一覧には表示されません。実行待ちのジョブと実行中のジョブは bkill [JOBID]として強制終了させることができます。
すべてのジョブが終了すると、No unfinished job foundと表示されます。終了済みのジョブの状況を確認するには、[kinkoh]% bjobs ‑aとしてください。
なお、入力ファイルを指定せずにバッチジョブを投入した場合にはエラーメッセージ等を表示することなく実行が終了します。標準出力をファイルとして保存する場合は bsub コマンドの‑o オプションを使用してください。

２．実行例(1)以下の内容のファイル（test.in）を用意します（He 分子を 6‑31G 基底関数で計算するための入力ファイルです）。

[kinkoh]% cat test.in$molecule
0 1
He$end$rem
JOBTYPE=FREQSCF̲CONVERGENCE=8

EXCHANGE
BASIS

HF
6‑31G

$end
[kinkoh]%(2)バッチジョブ（キューA）として Q‑Chem を実行します。

[kinkoh]% bsub ‑q A ‑m ohara qchem test.in test.out
Job <34033> is submitted to queue <A>.
[kinkoh]%(3)実行の終了を確認します。

[kinkoh]% bjobs
JOBID USER

STAT34034 p873193x RUN

QUEUE

FROM̲HOSTEXEC̲HOSTJOB̲NAMESUBMIT̲TIMEAkinkohohara* test.out

4 月 25 12:25[kinkoh]%[kinkoh]% bjobs
No unfinished job found[kinkoh]%

実行が終了すると test.out が作成されます。

(4)test.out をエディタなどで開き、結果を確認します。

[kinkoh]% less test.out

Q‑Chem 2.0 用の各種サンプルが用意されています。以下のコマンドで各自のホームディレクトリにコピーしてご利用下さい。

[kinkoh]% mkdir qcsamples[kinkoh]% cd qcsamples[kinkoh]% bsub ‐Ip ‐m ohara "cp /opt/qchem/samples/* ."３．Q‑Chem ユーザーガイド

Q‑Chem のユーザーガイド（PDF 形式・英語）がオンラインで用意されています。以下のコマンドでホームディレクトリにコピーしてご利用下さい。

[kinkoh]% bsub ‐Ip ‐m ohara cp /opt/qchem/aux/doc/qchem.2.0.pdf .

４．関連 URL

Q‑Chem に関連した URL です。参考にしてください。

クボタグラフィックス（国内販売代理店）
http://www.kgt.co.jp/product/chem/qchem/index.html
Q‑Chem, Inc.（開発元）
http://www.q‑chem.com/

by 総合情報処理センター