cfg2cif プログラム仕様

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

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

関連リンク:

cfg2cif.py 技術ドキュメント

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`で指定された範囲外の原子は除外されます。

パラメータ:

cfgfile (str) -- 読み込むCFGファイルのパス。

戻り値:

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

戻り値の型:

tkCrystal or None

crystal.cfg2cif.updatevars()[ソース]

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

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

crystal.cfg2cif.usage()[ソース]

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

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