MateriApps
物質科学シミュレーションのポータルサイト

現在アプリ掲載数307件

お問合せ / アプリ掲載依頼
    • JP
    • EN
  • MateriApps について
  • レビュー募集
もっと詳しく探す
  • NEWS / 講習会・イベント
  • アプリ一覧
  • アプリ詳細検索
  • キーワード解説
  • レビュー
  • 事例
  • アプリコンシェルジュ
  • インストールしないでアプリを
    試せる「MateriApps LIVE!」

    詳細はこちら
  • MateriApps について
  • レビュー募集
  • プライバシーポリシー
  • お問合せ / アプリ掲載依頼
  • アプリ一覧
  • Kω

Kω

  • 公開度:3 ★★★
  • ドキュメント充実度:2 ★★☆

シフト型クリロフ部分空間解法を用いた大規模疎行列向け並列化数値計算ルーチン。ハミルトニアン行列と状態ベクトルを入力として動的相関関数を効率よく計算することが可能。汎用な数値ライブラリであり、多体量子模型ソルバーHΦでの動的グリーン関数の計算機能の実装などに利用されている。また、Heisenberg模型などの量子格子模型の動的相関関数を計算するミニアプリが付属している。

Kω体験記(2018.06.17)
Last Update:2021/12/09
あなたはすでに投票済みです!

X線散乱実験など行っている実験家が使ったり,理論家が実験家に興味をもってもらうには,動的構造因子の計算が欠かせません.Kωはランチョス法などの数値厳密対角化と類似の手法で効率よく動的構造因子の計算をするライブラリで,そうした目的には便利そうです.今回は物性研スパコンにインストール済みのものを使った体験を書いてみます.

■クイックスタート

マニュアルを読むのが王道ですが,以下のページにクイックスタートのための情報があるので,横着をして,まずはそれをなぞってみます.

http://www.issp.u-tokyo.ac.jp/supercom/softwaredev/softwareall/komega

まずは物性研スパコン sekirei.issp.u-tokyo.ac.jp にログインして,環境変数の設定.

$ source /home/issp/materiapps/tool/Komega/Komegavars.sh

これはうまく通ります.次に,

$ cp -rf $KOMEGA_ROOT/sample/Komega .

とやってみると,なにか違うみたいですね.そんなフォルダはないと叱られてしまいました.

$ /home/issp/materiapps/tool/Komega/Komega-2.0.0-0/sample/

が存在しないようです.あとで,開発者に連絡しておくことにして,いろいろ見まわしてみると,旧バージョンなら対応するフォルダがあるようです.なので,Komegavars.sh を手元にコピーして,このファイルの中に書いてあるバージョン名「 2.0.0」 を「 1.0.0」 に書き換えてやり直してみます.今度は cp -rf ができました.さて,

$ make

とやると,makefile がないようです.make のまえに

$ cd Komega

が必要でした.こういう当たり前のことはクイックスタートにはいちいち書かない流儀のようです.再び

$ make

今度はうまくいきました.さて,何ができたんでしょうか.リンクして使うためのモジュールファイルはいろいろできたみたいですが,実行ファイルは生成されないようです.やはりあるはずでなかったバージョン2.0.0以降の sample ディレクトリを置いておいてもらわないと,これ以上クイックスタートをそのままなぞることはできないか...と思って,新バージョンのディレクトリをのぞいてみると,bin の中に ShiftK.out という実行ファイルらしいものがありました.もしかすると,新バージョンでインストラクションどおりに make することができたとするとこれができるということなのかもしれません.

■実行ファイルの使い方

どうやらそのようなので,これを使ってみましょう.実行ファイルの使い方についてはインストラクションページには直接記述がないので,マニュアルを見ないといけません.インストラクションページの上のほうにマニュアルへのリンクがあります.「ミニアプリのマニュアル 」というのがそれらしいので,クリックしてみると,自分自身へのリンクのなっているようでどこにも行ってくれません.うーむ...なかなか手ごわいページです.やはり本家のページにいかないとだめですね.github の Kωページ経由でマニュアルページ

https://issp-center-dev.github.io/Komega/software/ja/_build/html/index.html

にたどり着きました.この中にでている入力ファイルのサンプルをコピペして namelist.def という名前のファイルを作りました.中身は以下のとおり.

&filename
  inham = ""
  invec = ""
/
&ham
nsite = 4
Jx = 1d0
Jy = 1d0
Jz = 1d0
Dz = 0d0
/
&cg
  maxloops = 100
  convfactor = 6
/
&dyn
  calctype = "normal"
  nomega = 100
  omegamin = (-2d0, 0.1d0)
  omegamax = ( 1d0, 0.1d0)
  outrestart = .TRUE.
/

4サイトのハイゼンベルクモデルのようですね.手でもできるサイズですが,とにかく練習ということでこれでやってみます.バッチシステムで実行する場合には,ジョブスクリプトも必要です.job.sh として以下の中身のファイルを作りました.

!/bin/sh
#QSUB -queue i18cpu
#QSUB -node 18
#QSUB -mpi 18
#QSUB -omp 24
#QSUB -place pack
#QSUB -over false
#PBS -l walltime=00:10:00
#PBS -N KOMEGA_TEST
date
source /home/issp/materiapps/tool/Komega/Komegavars.sh
mpijob ${KOMEGA_ROOT}/bin/ShiftK.out ./namelist.def
date

ジョブを投入します.

$ qsub job.sh

まつこと1分程度で終わりました.うまくいかなかったみたいです.エラーメッセージファイル KOMEGA_TEST.e???????? を見てみると,プログラムは走ったみたいですが,

ERROR ! Number of processes is not 2-exponent.

というメッセージを出して停止しています.プロセス数18で投げたのですが,プロセス数は2のべき乗でないと走ってくれないようです.

#QSUB -node 16
#QSUB -mpi 16

のように,job.shの中の18を2か所16にして再挑戦.待つこと1分...今度はうまくいきました.結果ファイルが output フォルダの中に格納されています.

...今日は時間切れになってしまったので,結果の見方については別の機会に...

 

04 / 06

  • 01基本情報
  • 02事例・論文
  • 03講習会
  • 04レビュー
  • 05開発者の声
  • 06このアプリ情報に
    ついてのお問い合わせ
TOP

MateriApps
物質科学シミュレーションのポータルサイト

  • NEWS / 講習会・イベント
  • アプリ一覧
  • アプリ詳細検索
  • キーワード解説
  • 事例
  • アプリコンシェルジュ
  • プライバシーポリシー
お問合せ / アプリ掲載依頼
  • 東京大学 物性研究所 The Institute for Solid State Physics
  • 東京大学 The University of Tokyo
  • CDMSI
  • CCMS

© MateriApps, 2013-2023. All rights reserved.