XRF_fit プログラム仕様

XRFデータフィッティングおよび解析アプリケーション。

このモジュールは、X線蛍光分析(XRF)データを読み込み、プロットし、 フィッティングやピーク探索などの解析機能を提供するGUIアプリケーションです。 データ入力にはプラグイン機構を採用しており、様々な形式のファイルに対応可能です。

XRF_fit.py 技術ドキュメント

XRF.XRF_fit.initialize(app=None)[ソース]

アプリケーションの初期設定と引数定義を行います。

tkParams オブジェクトを生成し、デバッグレベル、プリントレベル、 デフォルトの入力ファイル名、およびコマンドライン引数を定義します。 引数には、モード、入力プラグインディレクトリ、入力プラグイン名、入力ファイルパスが含まれます。

パラメータ:

app (tkApplication) -- tkApplicationのインスタンス。

戻り値:

初期化された設定オブジェクト。

戻り値の型:

tkParams

XRF.XRF_fit.load_input_modules(app, cparams)[ソース]

入力データの読み込みモジュールをロードし、入力ファイルを読み込みます。

cparams.input_plugin_name の設定に応じて、自動判別または指定された プラグインディレクトリからモジュールをロードします。 ロード後、cparams.infile で指定された入力ファイルを読み込み、データを取得します。

パラメータ:
  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 設定パラメータを含むtkParamsのインスタンス。

戻り値:

読み込まれた入力ファイルの情報。辞書形式で、"meta", "labels", "data_list" などを含む。

戻り値の型:

dict

XRF.XRF_fit.main()[ソース]

アプリケーションのエントリポイントです。

tkApplication を初期化し、設定をロードします。 コマンドライン引数から入力ファイルパスを特定し、ログファイルを設定します。 設定されたモード(例: plot_all)に基づいて適切な関数を呼び出します。 無効なモードが指定された場合、エラーメッセージを表示して終了します。

戻り値:

なし

XRF.XRF_fit.plot(app, cparams, tkplt, fig, axes, inf_in)[ソース]

入力データ (inf_in) をMatplotlibとTkinterの組み合わせでプロットします。

inf_in からメタデータ、ラベル、データリストを取り出し、 各スペクトルをサブプロットに描画します。 軸ラベル、凡例なども設定し、グラフを視覚化します。

パラメータ:
  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 設定パラメータを含むtkParamsのインスタンス。

  • tkplt (tkPlot_pyplot | tkPlot_tkinter) -- tkPlot_pyplotまたはtkPlot_tkinterのインスタンス。プロット操作を提供します。

  • fig (matplotlib.figure.Figure) -- MatplotlibのFigureオブジェクト。

  • axes (matplotlib.axes.Axes | np.ndarray) -- MatplotlibのAxesオブジェクト、またはAxesオブジェクトの配列。

  • inf_in (dict) -- 読み込まれた入力ファイルの情報。辞書形式で、"meta", "labels", "data_list" などを含む。

戻り値:

なし

XRF.XRF_fit.plot_all(app, cparams)[ソース]

全てのスペクトルデータをロードし、Tkinter GUIと連携してプロットを表示します。

入力モジュールをロードし、matplotlibtkinter を使用してグラフウィンドウを作成します。 ツールバーボタン(図の保存、再描画)、GUIウィジェット(エントリー、ボタン、リストボックスなど) を追加し、データをプロットします。ユーザー操作に応じたコールバック関数も定義します。

パラメータ:
  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 設定パラメータを含むtkParamsのインスタンス。

戻り値:

なし

XRF.XRF_fit.read_file(path, app, cparams, modules, module_names)[ソース]

指定されたパスのファイルを読み込むための適切なモジュールを特定し、データを読み込みます。

提供されたモジュールリストを巡回し、各モジュールがファイルのタイプを チェックして、適合するモジュールを見つけます。 その後、そのモジュールを使用してデータを読み込みます。

パラメータ:
  • path (str) -- 読み込むファイルのパス。

  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 設定パラメータを含むtkParamsのインスタンス。

  • modules (list) -- 読み込みモジュールのリスト。

  • module_names (list) -- 読み込みモジュール名のリスト。

戻り値:

読み込みに使用されたモジュール名、モジュールオブジェクト、および読み込まれたデータ。 適切なモジュールが見つからない場合、(None, None, None) を返します。

戻り値の型:

tuple[str | None, object | None, dict | None]

XRF.XRF_fit.update_vars(app=None, cparams=None)[ソース]

コマンドライン引数をパースし、設定変数を更新します。

app.read_args を呼び出し、引数のチェックとデフォルト値の適用を行います。 引数解析中にエラーが発生した場合は、エラーメッセージを表示してアプリケーションを終了します。

パラメータ:
  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 更新対象の設定パラメータを含むtkParamsのインスタンス。

戻り値:

なし

XRF.XRF_fit.usage(app=None, cparams=None)[ソース]

アプリケーションの利用方法を表示します。

app オブジェクトに設定されている利用方法文字列をコンソールに出力します。

パラメータ:
  • app (tkApplication) -- tkApplicationのインスタンス。

  • cparams (tkParams) -- 設定パラメータを含むtkParamsのインスタンス。

戻り値:

なし