Tools for camphor
Project description
camptools
camphor用ツール
インストール
pip install camptools --user
コマンド一覧
ジョブを投入し、ジョブIDを記録する
$ nmyqsub <job file> -m <message> -d <directory>
jobを投入し、job情報を記録する(job_status.sh, joblist.shなどに使用)
directoryを指定した場合、指定ディレクトリに移動後にqsubを実行
$ myqsub <job file> -m <message> -d <directory>
jobを投入し、job情報を記録する(job_status.sh, joblist.shなどに使用)
directoryを指定した場合、指定ディレクトリに移動後にqsubを実行
投入されるjobファイルは、パラメータファイルplasma.inpに応じてノード数を決定し置換したもの
python環境にf90nmlが必要
<job file>の形式は以下のようにすること
1. #QSUB -A p={}:t=1:c=64:m=90G
2. aprun -n {} -d 1 -N 64 ./mpiemses3D plasma.inp
実行中のジョブ状態を確認する
$ job_status
jobの状態と標準出力の一部を出力
$ joblist
jobの状態を出力
これまでに投入したジョブ一覧を表示する
$ jobhistory -n <num outputs> --correct_date
過去のjobのリストを表示
<job id>, <directory>, <message>, <date>
--correct_date:
*.o*ファイルから日付を読み取りjobに日付情報を付加する
(この日付情報は保存されるため毎回呼ばなくても良い)
EMSESの継続ジョブを投入する
$ extentsim <from-dir> <to-dir> --run
EMSESの継続シミュレーションを行う
from-dirに存在するmpiemses3D, job.sh, SNAPSHOT1, generate_xdmf.pyをto-dirにコピーする
runフラグを指定するとmyqsubによるジョブの投入まで行う
ディレクトリセットを作成する
$ mymkdir --key <key> <directory>
keyで指定した構成のディレクトリを作成する
ディレクトリ構成の設定は~/copylist.jsonに記載する
簡易的なジョブファイルを作成する
$ cmdjob [-h] {register,create} ...
$ cmdjob register -ug <usergroup> -s <system> --local
作成するjobの設定を登録する
localフラグを指定するとそのディレクトリ以下での設定が変更される
$ cmdjob create <command> -o <output>
commandを実行するジョブファイルを作成する
出力ファイル名はoutputで指定(デフォルト: tmpjob.sh)
よく使うディレクトリのパスを記録する
$ checkpoint {register, clear, list}
$ checkpoint register -m <message>
カレントディレクトリをチェックポイントとして保存する
$ checkpoint clear -a -i <index>
チェックポイントを削除する
-aフラグを指定するとすべてのチェックポイントを削除する
-iフラグを指定すると指定した番号をチェックポイントを削除する
$ checkpoint list
チェックポイントのリストを表示する
システム内で同期をとる
$ filesync {lock, wait, notify}
$ filesync lock <key>
<key>名のロックを確保する (~/.camptools内にロック情報を書き込む)
$ filesync wait <key>
<key>名のロックが確保されていたら待機する
$ filesync notify <key>
<key>名のロックを解放する (~/.camptoolsからロック情報を削除する)
preinp
preinp は、Fortran の NAMELIST 入力ファイル用プレプロセッサを Python で実装した軽量ツールです。
マクロを用いた定義・演算により、手作業では煩雑になりがちなパラメータ生成を自動化できます。
オプション一覧
| オプション | 説明 | デフォルト |
|---|---|---|
-d, --directory |
入力ファイル所在ディレクトリ | ./ |
-i, --preinp_file |
前処理対象ファイル名 | plasma.preinp |
-o, --output |
出力ファイル名 | plasma.inp |
-v, --verbose |
詳細ログを表示 | オフ |
実行例
# 入力ディレクトリ './input' の 'plasma.preinp' を処理
preinp -d input -i plasma.preinp -o plasma.inp
# 詳細ログ付き
preinp -v
マクロ記法
!!>で始まる行をマクロ処理の対象とし、末尾に\を付けると行継続できます。- 一時変数の定義:
var symbol = valueで計算中に利用する変数を登録。 - 定数定義:
symbol = valueまたはsymbol(index) = val1, val2で、最終的に出力される NAMELIST 値を指定。 - 算術演算・条件式:
+,-,*,/,min(a,b),x if cond else yなど。 - 単位変換: (オプション)
unit.<name>.trans(value)/unit.<name>.reverse(value)を利用可能。
Example
plasma.preinp:
&simulation
!!> var nx = 128
!!> var ny = 64
!!> total_cells = nx * ny
/
生成される plasma.inp:
&simulation
total_cells = 8192
/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
camptools-0.10.4.tar.gz
(26.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file camptools-0.10.4.tar.gz.
File metadata
- Download URL: camptools-0.10.4.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32318ad0e1ec69c83afd3911d965920f321b031e48c347b6afb0c699207bd8ec
|
|
| MD5 |
ad29da11476450bde71b4b384f014b57
|
|
| BLAKE2b-256 |
f23aa2454d7a1fea55b91ec332600fdd72978c28f528399915bd2c0192ac4c91
|
File details
Details for the file camptools-0.10.4-py3-none-any.whl.
File metadata
- Download URL: camptools-0.10.4-py3-none-any.whl
- Upload date:
- Size: 33.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8f3319cf70b1c01e7f7b91256183f51b307f88e046488051e20ccc26434de14
|
|
| MD5 |
abbba8d057654f229812792f02fda55b
|
|
| BLAKE2b-256 |
ba1c05c3d2dd31241e82d8fd58ed9eeba115b7a61fdf07474603c4513e4da242
|