10.3. ピークフィッティング

10.3.1. データを関数の和として解釈する

ピークフィッティングは XANES データをいくつかの解析的な関数でフィッティングすることを指します.典型的なアプローチは1つあるいは2つの階段状の関数とデータに見られるピークに対して,いくつかのピーク関数を使って, XANES を再現するというものです.様々な関数の中心,高さ,そして幅は固定されていたり,うまくフィットするように変数として扱われたりします.ATHENA のピークフィッティングでは,Levenberg-Marquardt 非線形最小二乗法が使われます.(より具体的に言うと,関数の和の配列を構成した後で,IFEFFITminimize コマンドが使われるか,関数の和の配列をもつ関数オブジェクトを使って,LARCHminimize 関数が使われます.)

ピークフィッティングは本質的に経験的な解析手法です.よって,関数の形そのものに物理的な意味はほとんどありません.ピークフィッティングの有用性は一連のデータにおけるあるスペクトルの特徴の変化を定量することにあります.例えば,ペロブスカイト構造を持つ PbTiO3 の吸収端で主な吸収端の立ち上がりのちょうど前に現れる小さなピークについて考えてみましょう.プロットしてみると,このピークは 4967 eV に現れています.このピークは温度の関数として変化し,結晶学的な相変化に伴い変化します.ピークの大きさは Ti 原子が中心対称の位置から外れていく量に関係しています.ピークフィッティングはこの温度変化について,スペクトルの特徴と外乱パラメータを定量的に解析できるという点で有用です.

../_images/peak.png

図 10.11 ピークフィッティングツール

上のスクリーンショットにはピークフィッティングツールが示されています.IFEFFIT を使っている場合に利用できる関数には以下のものがあります.

  • アークタンジェント (階段状)

  • 誤差関数 (階段状)

  • ガウス関数 (ピーク)

  • ローレンツ関数 (ピーク)

  • 擬フォークト関数 (ピーク)

LARCH を使っている場合には更に以下の1つの階段状関数といくつかのピークを持つ関数を使うことができます.

  • ロジスティック関数 (階段状)

  • フォークト関数 (階段状)

  • 第7ピアソン関数 (ピーク)

  • Student の T 関数 (ピーク)

現在のバージョンの ATHENA で利用できませんが,明らかに有用な関数としては,単原子に関する吸収端ジャンプのブロード化された Cromer-Lieberman 関数が挙げられます.(これは XANES の形をよりうまく近似するかもしれません)

それぞれの関数は独立な中心,高さと幅を持ちます.いくつかの関数については4つめのパラメータを持っています.例えば,擬フォークト関数はガウス関数とローレンツ関数の混ざり具合に関するパラメータを持っています.デフォルトでは,中心は固定されており,他のパラメータはフィッティング中に変化します.

ピークの形は規格化されたものです.すなわち,強度 ピークの面積を示しています.

これは PbTiO3 のフィッティングについて,上で示した値のうち,3つの関数の中心を少し変更した後の結果です.

../_images/peak_fit.png

図 10.12 室温で測定された PbTiO3 のデータに対して,アークタンジェント関数,ローレンツ関数そしてガウス関数でフィッティングした結果

10.3.2. 1つのデータグループに対するフィッティング

../_images/peak_select.png

図 10.13 モデルに利用する関数の選択

Add step あるいは Add peak とラベルされているボタンをクリックすることで関数をモデルに追加することができます.関数の形はそれらのボタンの左にあるメニューから選択することができます.

Add ボタンのうちの1つをクリックすると,ボタンの下に関数のための欄が追加されます.上のスクリーンショットでは,主な吸収端のモデルであるアークタンジェント関数,1つめのプレエッジピークのモデルである擬フォークト関数,そして2つめのプレエッジピークのモデルであるガウス関数の3つの関数が追加されています.

ATHENA からはデータのどの特徴にたいしてどの関数がモデルに使われているかは認識していません.よって,必ず 関数の中心位置を選択しなければなりません.これは,Center あるいは E0 とラベルされているボックスにエネルギー値を入力することでできます.あるいは,プラックボタンを使って,マウスでプロットウィンドウからエネルギーの値を取ってくることもできます.

プラックボタンを使うと,ATHENA は関数の高さの初期値を推定しようとします.これは,プラックボタンで指定された中心位置でのデータの値です.ピークを持つ関数の幅の広がりの初期推定値は 0.5 eV であり,吸収元素(の階段関数)ついては core-hole の寿命幅が使われます.

どのパラメータを固定するかについては,それぞれのパラメータの隣にある Fix とラベルされたチェックボタンで制御することができます.デフォルトでは中心位置は固定されており,他の2つ(あるいは3つ)のパラメータはフィッティング変数として扱われます.私の経験では,中心位置を浮動させるとフィッティングは非常に不安定になり,特にピーク関数が近くにある場合にはそれが顕著です.私の場合はたいていの場合中心位置を固定し手動でこれを調節して,必要に応じてフィッティングを繰り返します.

Reset ボタン(フィッティングを行った後だけ有効化されます)は,それぞれの関数のパラメータをデフォルトの値に戻すため使われます.これは,もしフィッティング結果がモデルの数値的な不安定性によって変な値になってしまった場合に便利です.こういったことは例えば中心位置を変動させた場合に起こるかもしれません.

もし,同じエネルギー位置で異なる関数を使いたければ,関数名の横にある change function をクリックすることで変更することができます.

../_images/peak_change.png

図 10.14 ピークフィッティング結果タブ

IFEFFIT を使うと,たった2つの階段状関数しか使えません.よって,階段状関数の形状を変える場合には,change funciton をクリックすると相互に切り替えることになります.

フィッティングモデルのすべてのパラメータを設定し,ウィンドウの上部にある Actions セクションの Fit ボタンをクリックすることでフィッティングが実行されます.あるいは, Plot sum ボタンをクリックすることでフィッティングを行わずに現在のモデルについて確認することができます.

10.3.3. フィッティング結果タブ

フィッティングが終わると,Actions セクションにある残りのボタンが有効化され,結果タブにあるテキストボックスにフィッティングによって得られた結果が表示されます.

../_images/peak_results.png

図 10.15 ピークフィッティング結果タブ

結果タブの下部にある Plot data and fit ボタンは,メインタブにある Plot sum ボタンと同じプロットを行います.ノートタブの上にあるチェックボタンを使うことで,それぞれの関数の形状やフィッティングの残差を表示することもできます.

フィッティング結果は,結果タブ下部のボタンをクリックすることで,列データファイルとして保存することもできます.(メインタブの Save fit ボタンを使っても同様です.)出力ファイルにはフィッティング結果がヘッダーに含まれると共に,以下のデータを含みます.

  1. エネルギー

  2. データ

  3. フィッティング結果

  4. 残差

  5. それぞれの構成要素の列

10.3.4. 複数のデータグループのフィッティングとシーケンスタブ

代表的なデータについてうまくいくフィッティングモデルを見つければ,ATHENA はまとまったデータの分析についてちょっとした自動化を提供します.メインタブにある Fit marked とあるボタンはデータリストにあるマークのついたすべてのデータに対して,順番に現在のフィッティングモデルを適用します.例えば,PbTiO3 Ti K-edge の温度変化の場合,1つめのプレエッジピークの大きさが温度が上がるにつれて,小さくなっていくことがわかります.よって,このピークの高さは温度と共に小さくなっていくと予想されます.

このフィッティングモデルを使って一連のフィッティングを行った結果は Sequence タブに現れます.♦Peakfit→plot_during パラメータを設定すると,一連のフィッティング中にそれぞれプロットされるようになります.

../_images/peak_sequence.png

図 10.16 ピークフィッティングシーケンスタブ

上の表にはシーケンス中のそれぞれのフィッティングの R 因子と χ2 が表示されます.この表の列を選択する leftclick と,フィッティングの詳細な結果がテキストボックスに表示され,グラフがプロットされます.

ATHENA は一連のフィッティング結果を確認するための 2,3 の方法を提供しています.フィッティング中に動いたパラメータのリストはテキストボックスの下のメニューに読み込まれます.パラメータを選択し,隣のプロットボタンをクリックすると,データの集合に対してそのパラメータが変化していく様子がプロットされます.

ここでは,温度の関数として擬フォークト関数の高さが変化していく例を示します.予想されたように値は下がっていきます.

../_images/peak_height.png

図 10.17 データ集合全体の 4967 eV にあるピークの高さの結果

最後に,一連のフィッティング結果を,Excel,LibraOffice Calc,あるいは Google Docs などの表計算ソフトで簡単に見たり処理したりするために表状のファイルに出力することもできます.この表には,それぞれのフィッティングの統計とすべてのパラメータおよびその不確かさを含みます.

../_images/peak_excel.png

図 10.18 一連のフィッティング結果を表として出力




DEMETER is copyright © 2009-2016 Bruce Ravel – This document is copyright © 2016 Bruce Ravel

This document is licensed under The Creative Commons Attribution-ShareAlike License.

If DEMETER and this document are useful to you, please consider supporting The Creative Commons.