cfg2cif プログラム仕様

概要:

CFGファイルをCIFファイルに変換するスクリプトです。

詳細説明:

Open-CFG形式のファイルから結晶構造情報を読み込み、CIF (Crystallographic Information File) 形式に変換して出力します。 このスクリプトは、格子ベクトルの読み込み、原子サイトの座標処理 (必要に応じて[0,1)範囲への丸め込み、指定範囲外の除外)をサポートします。

関連リンク:

cfg2cif_usage

crystal.cfg2cif.cfg2cif()
概要:

グローバル変数で指定されたCFGファイルを読み込み、CIFファイルに変換して保存します。

詳細説明:

read_cfgfile関数を呼び出してCFGファイルから結晶情報を取得し、tkCrystalオブジェクトを生成します。 その後、そのtkCrystalオブジェクトを使用してtkCIFDataオブジェクトを生成し、 最終的にCIFファイルとして情報をciffileに書き出します。 処理の最後に terminate 関数が呼ばれ、スクリプトの利用方法が表示されます。

crystal.cfg2cif.main()
概要:

スクリプトのエントリポイントです。

詳細説明:

コマンドライン引数の処理 (updatevars) と、 CFGからCIFへの変換処理 (cfg2cif) を順に実行します。 スクリプトの開始時と終了時にメッセージを出力します。

crystal.cfg2cif.read_cfgfile(cfgfile)
概要:

指定されたCFGファイルを読み込み、tkCrystalオブジェクトを構築します。

詳細説明:

CFGファイルからサンプル名、総原子数、格子ベクトル、各原子サイトの座標と原子種を抽出します。 格子ベクトルの[0]行目が2倍されている点に注意が必要です。 抽出された情報をもとにtkCrystalオブジェクトを初期化し、原子サイトを追加します。 freduce01が真の場合、原子座標は[0,1)範囲に正規化され、 xlim, ylim, zlimで指定された範囲外の原子は除外されます。

引数:
param cfgfile:

読み込むCFGファイルのパス。

type cfgfile:

str

戻り値:
returns:

構築されたtkCrystalオブジェクト。ファイルの読み込みに失敗した場合はNoneを返す。

rtype:

tkCrystal or None

crystal.cfg2cif.updatevars()
概要:

コマンドライン引数を解析し、グローバル設定変数を更新します。

詳細説明:

sys.argv から引数を取得し、cfgfile, freduce01, xlim, ylim, zlim などの グローバル変数を設定します。入力CFGファイル名に基づいて出力CIFファイル名も決定します。 引数の取得には getarg, getintarg, getfloatarg を使用します。

crystal.cfg2cif.usage()
概要:

スクリプトのコマンドライン引数の利用方法を表示します。

詳細説明:

スクリプト実行時に指定可能な引数(入力CFGファイル名、座標の[0,1)範囲への削減フラグ、 座標の出力範囲リミット)とその意味を示します。