Sha256: 2d090878230f675b734069714f6b65b19f1356665eb1f704341d447eff12b2fa

Contents?: true

Size: 1.56 KB

Versions: 4

Compression:

Stored size: 1.56 KB

Contents

#! /usr/bin/ruby

# Usage:
#   repeatvasp calc_dir
#   引数は計算ディレクトリで、1つのみ許可。
#
# 引数のディレクトリで計算を実行する。
# 他所には投げず、localhost で実行する。
#
# 以下の条件を満たすとき、計算を繰り返す。
# - cell shape, volume を含めた構造最適化で ionic step が 2以上。
# - 構造最適化で ionic step が nsw と同じ。
# - NEBM
#
# 計算の状態に応じたディレクトリ名をつける。
# これらの名前は人間が分かり易くするためのものであって、
# プログラムが計算の状態を把握するのはあくまで
# 中のファイルを見て行うものとする。
#
# 状態を表す文字列をディレクトリ末尾に着ける機能はなし。
# これをやると面倒。
# この辺の確認は専用コマンドを用意することにする。
#
# 次の計算になるときに、
# 元のディレクトリは末尾に 00 を付加する?
# 次のディレクトリは末尾に 01 以降、インクリメント。
# 01 からスタートしたときは、適当に 02 とか。
#
# 当面、計算ディレクトリは -try00 と末尾についていることを前提とする。

require "vasputils/calcrepeater"
require "vasputils/vaspdir"

if ARGV.size != 1
	puts "Number of arguments must be 1."
	exit
end

vd = VaspDir.new(ARGV[0])
cr = CalcRepeater.new
begin
	cr.repeat(vd)
rescue VaspDir::PostfixMismatchError
	puts "Postfix mismatches to #{VaspDir::POSTFIX}. Exit."
rescue VaspDir::LockedError
	puts "Lock file exist. Exit."
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
vasputils-0.0.3 bin/repeatvasp
vasputils-0.0.2 bin/repeatvasp
vasputils-0.0.1 bin/repeatvasp
vasputils-0.0.0 bin/repeatvasp