スペクトルのデータ処理 河合潤 1. はじめに XPSや EPMA あるいは X 線吸収スペクトル (XAFS) など, 原子の内殻に関連した分光法は, 電子や光子の計数によって測定する. この計数値はガウス分布に従うばらつきを持っているので統計的な処理が必要となる. さらに, 実分析においては, 不純物や表面汚染など分析対象 (analyte) そのものの性質として, 様々な分析線が重なって観察される. 場合によっては, 試料は再現性のない一回限りの少量の場合も多い. 十分な信号強度が必ずしも得られない場合でも, 何らかの分析 判定 評価を下さねばならない. 例えば, 銅アセチルアセトナート錯体の Cu 2p XPS を測定した場合に,Fig.1 に示すように大変に妙な 2 こぶの形状を示す. このスペクトルは,1 本当に銅アセチルアセトナートであるのか, 2 測定中に X 線の放射によって分解したり, チャージアップでピークが移動したりしたための正しくないスペクトルであるのか, あるいは,3 試薬びんには銅アセチルアセトナートと書いてあっても実際には別の物質が入っていたものなのか, と言うような判断をしなければならない. かつて, このような1~3の判定をするために, 物性物理の理論屋さんに計算をお願いしたことがあった. スペクトルが本当であることが確実でなければ計算はできないので, もっと良い実験をして, そのスペクトルが確実だという確証を持ってきてください と言われた経験がある. 分析者は自分なりの分子軌道法を用いた理論計算技術も身につけておくと,1~3の判定には大いに役立つと信ずる. Fig.1 Cu(acac) 2 の実測スペクトル ( 文献 [1] より引用 ). 1
2. ノイズについて XPSやEPMAなど電子や光子を計数する場合には, そのカウント数がNのとき, たとえばXPS の場合に, ある結合エネルギーに固定して長時間同じ測定を繰り返すと, そのデータはσ = N 1 1 x μ の正規分布 exp になる. したがって, 様々なデータ処理の適 不適を判定 σ 2π 2 σ するためのモデルデータを作るためには, まず一様乱数 (Fig.2) をExcelのRAND 関数等を用いて発生させた後で, 正規分布をもつ乱数に変換する必要がある. 中心極限定理によって,k 個の 1 1 一様乱数 u1, u2, ukから 1 個の正規乱数 Zを, Z = ( u1 + u2 + Luk ) / k によって作るこ 12k とができる (Fig.3)[2]. Fig.2 Excel で作った一様乱数. Fig.3 中心極限定理で作った正規乱数. 2
Fig.4 半値幅 40 チャネル, バックグラウンド 10 カウント, ピーク強度 100 カウントのローレン ツ関数に正規乱数をかぶせたモデルデータ. この正規乱数に適当な因子をかけてσ = N に相当する正規分布を作り, ノイズのあるモデルデータ (Fig.4) とすることができる.Fig.4 は半値幅 40 チャネル, バックグラウンド 10 カウント, 1 ピーク強度 100 カウントのローレンツ関数 ( 1+ x 2 を適当に並行移動, 伸縮したもの ) に対して ノイズをつけたデータである. 3. フーリエ変換について XPS のデータ解析には, 現在フーリエ変換はあまり使われていない. しかし大抵の XPS 装置には FFT のデータ処理ができるようなソフトウエアがメニューの中から呼び出せるのではないかと思う.1 次元のフーリエ変換の特徴は,Fig.5 に示したように, 標準偏差 σの正規分布をフー Fig.5 ガウス関数と δ 関数のフーリエ変換 [3]. 3
Fig.6 ノイズの無い場合のフーリエ変換 [3]. Fig.7 ノイズのある場合のフーリエ変換 [3]. Fig.8 窓関数の例 [3]. 4
Fig.9 Fig.7 Fig.8 [3]. Fig.10 Fig.9 のフーリエ逆変換 [3]. リエ変換またはフーリエ逆変換すると, σ 1 の正規分布になることである. もっと極端な場合には δ 関数が, 一定値関数に変換される.XPS スペクトルにおいてノイズはδ 関数のようなものである. この性質を用いてノイズの除去が可能となる.Fig.4 のスペクトルをフーリエ変換すると, ノイズのない場合には Fig.6 が, ノイズのある場合には Fig.7 が得られる. 縦軸のスケールが, ノイズのない場合とある場合で桁が違っている. すなわちノイズのある場合には, 高い周波数成分も減衰しない. 高い周波数成分をカットする Fig.8 のような窓関数を,Fig.7 にかけると,Fig.9 が得られる.Fig.9 をフーリエ逆変換すれば, ノイズのない Fig.10 のスペクトルを得る事ができる. ここでパラメータとして自由度があるのは, 窓関数の形である. 様々な窓関数が提案されているが,Fig.8 で示したように非常に大胆にカットするフィルターをかけても, 結構良い結果を得る事ができる.Fig.10 では初めのローレンツ関数も同時にプロットしたが, 面積の減少は, 窓関数が原因である. 5
4. スムージングについて [3] サビツキー ゴーレー法 [4] のスムージングメニューが大抵の ESCA 装置には入っている. この原理は, 例えば 5 点スムージングの場合には,Fig.11 に示したように初めのノイズのあるデータ ( ) のうちから 5 点 ( ) を選び,2 次関数で最小 2 乗フィットして中央の値を に置きかえ るという手順で行なう. このとき, 横軸が等間隔ならば, 新しい中央の点 x は, n x n = 3xn 2 + 12xn 1 + 17xn + 12xn+ 1 3xn+ 2 35 という式によって簡単に計算できる. この返還式によって求められた x を再び古い点としてもう 一度この式を使えば 2 回のスムージングを行なうことができる.Fig.4 のスペクトルを様々なパラメータのサビツキー ゴーレー法スムージングを行なったときの結果を Fig.12 に示した. サビツキー ゴーレー法の伝達関数は Fig.13 に示したようなものである.3 節で述べたフーリエ変換の窓関数として Fig.13 を用いたことと等価である. 2 次式によるサビツキー ゴーレー法について説明したが,3 次式でも上の変換式は全く同じ係数であり, パラメータとしては, 何点 何回が自由に選べるのでどれを選んで良いか困ることになる.Proctor と Sherwood[5] によると, 1 半値全幅以内に N 点ある場合, 点数としては 0.7N 以下を選ぶ. 2 できるだけ少ない点数のスムージング (5 点 ) を繰り返し行なう ( 例えば 200 回 ). 3 2a+1 点のスムージングをした後に 2b+1 点スムージングを行なうことは,2(a+b)+1 点のスムージングとほぼ等価な効果がある. 4 スムージングを行なったデータに対してガウス ローレンツ関数などでピーク分離する. などの規則に従えば, 濃度が低くてノイズだらけのデータからも, ケミカルシフトした複数の成分を抽出して定量分析が可能である. ピーク分離まで行なう場合には, ピーク分離した一成分のピークの半値幅に測定点は最低でも 15 点程度は必要である. この 15 点から逆算して結合エネルギーの測定ステップ幅を決めると良い. n Fig.11 2 次 5 点サビツキー ゴーレー法 [3]. 6
Fig.12 スムージング結果.5 点 1 回,5 点 10 回,5 点 100 回,25 点 1 回 [3]. Fig.13 サビツキー ゴーレー法の伝達関数 [3]. 7
文献 [1] K. Okada, J. Kawai, A. Kotani: Triple-peak features of Cu 2p X-ray-photoemission spectrum in copper acetylacetonate, Phys. Rev. B48, 10733-10738 (1993). [2] 宮武修, 脇本和昌 : 乱数とモンテカルロ法, 森北出版 (1978) p.24. [3] 合志陽一, 宮村一夫, 早川慎二郎, 河合潤, 工藤正博, 渡辺訓行 : 化学計測学, 昭晃堂 (1997) 7 章. [4] A. Savitzky, M. J. E. Goley: Smoothing and Differentiation of Data by Simplified Least Square Procedures, Anal. Chem. 36, 1627-1639 (1964). この文献の表では 25 点と 23 点にミスプリがあるので注意. 正しい表は,Anal. Chem. 44, 1906-1909 (1972) にあり. [5] A. Proctor, P. M. A. Sherwood: Smoothing of Digital X-Ray Photoelectron Spectra by an Extended Sliding Least-Square Approach, Anal. Chem. 52, 2315-2321 (1980). 8
EXCEL を使った正規乱数 ( 標準偏差 1, 平均 0) の発生方法 1. ツールの中からアドインを選択する. 2. アドインの中から分析ツールを選択する. 9
3. 以上の操作によってツールの中に 分析ツール が作成される. 一度 分析ツール が作成されれば, 以上の操作は 2 度目から不要.2 の操作のとき EXCEL によっては,CD-ROM が必要な場合もある. 4. 分析ツール を選択すると, 下のようなメニューが現れるので, 乱数発生 を選ぶ. 10
5. 一変数で, 平均 0, 標準偏差 1 の正規乱数を 256 個発生させてみる. 6. 発生した乱数は,EXCEL の 1 行目に入る. 11
7. この乱数について調べてみるには, 分析ツール から 基本統計量 を選択する. その結果は, 下の図のようになる. これ以外に 0.1 ごとにヒストグラムをプロットする機能などがある. 12
ORIGIN を使ったスペクトルの発生と Savitzky-Golay スムージング http://www.lightstone.co.jp/user/orgtech.html 参照 1. 先ほどの EXCEL の乱数を ORIGIN の Y 行に貼りつける. 2. 作図 メニューの 統計グラフ から ヒストグラム を選択しヒストグラムを描いてみる. 13
3. 関数グラフを作成する. 新しいワークシートが表示されている状態で, ファイル メニューの 新規 を選択しその中から 関数 を選択する. 14
4. ローレンツ関数を作る. 高さ h, 半値半幅 w, 中心 u のローレンツ関数は, 1 h 2 ( u) + ν と 2 表されるので,F1(x)=300/(1+(x-128)*(x-128)/(10*10)) は,FWHM=20ch, ピーク位置 128ch, ピーク高さ 300 カウントのローレンツ曲線となる. 点密度を256にする. w OK をクリックしたら, グラフが現れるので, 横軸をクリックして, 範囲を 1~256 に変更す る. 15
5. フォーマット の中の作図の詳細 ( プロット ) を選択し, ワークシート をクリックする. 16
OK で新しいデータにコピーされる ( 下図 ). 17
F1C1 グラフの曲線をクリックすると次のボックスが現れる. ワークシートをクリックすると, 新しい表にデータが入る ( 下図 ).128 チャネルが 300 になっ ている. 図のプロット範囲を0~256や0~300などにすると正しく128chがピークにならないので注意する. 18
6. 上と同様に関数 F2(x)=x を発生させて,1~256 までデータをつくる. それを新しいワークシートの A(X) へ, 上のローレンツ曲線を B(Y) へ貼り込む. 19
7. 新規列を追加する. 8.EXCEL で作った乱数を新規列 C(Y) に貼り込む. 列どうしの計算を行なうために, 列値の設 定 を選択する. 20
9. 列値の設定 で X 線のノイズは N の標準偏差を持つので, B( Y ) + B( Y ) C( Y) を計算 し D(Y) とする. 10.D(Y) をプロットすると下図のようになる. 21
11.Savitzky-Golay スムージングを行なう. 9 点スムージングの場合 22
グラフの中で曲線をクリックすると, 各点のデータを表にすることができる. 23
様々な市販ソフトのスムージング関数の確認の方法. δ 関数を作っておいてスムージングしてみる.1 回のスムージングで,Savitzky-Golay スムージングの係数になれば合格. たとえば,KaleidaGraph(Windows 用バージョン3) では マクロ の中に smoothing があるが, δ 関数 (11ch が1であとは0の 23 個のデータ ) について 5 点スムージングを行なうと, 下図のように 9ch から 13ch が 0.2 になる. このようなスムージングは, データ処理には使えない. 24