見出し画像

粉末X線回折からの結晶構造解析の実例:その2


はじめに

前回はDICVOL14を使ったIndexingにより各回折ピークに指数を振り、格子定数の推定を行いました。また、この指数のパターンから空間群の推定をInternation Table Aに基づいて行いました。

今回はSuperflipとEDMAという二つのソフトウェアを使った原子位置の推定と結晶構造ファイルの作成に進みます。本来はいろいろ勉強して設定を調整したりするんですが、それらは一旦置いておいてひとまず最後まで行ってみましょう。

前回のおさらい

前回までに得られた知見は以下です。

  • 一番妥当な格子系

    • 正方晶(Tetragonal)

  • その時の格子定数

    • a = 4.73851 Å

    • b = 3.18683 Å

  • 取りうる空間群の中で最も対称性の高い(空間群番号が大きい)もの

    • P 4₂​/m n m (136)

でした。格子系や格子定数は複数の解がありましたが、解析上最も妥当なものから始めるとよいと思います。また空間群は最も対称性の高いものから試すとよいと思います。

Superflipを使う前に行う準備

困りごと

Superflipを行うには.inflipというファイルが必要です。基本的にはひな型を修正していくんですが、2つ自分で行うには面倒なことがあります。

一つ目は空間群の対称操作を記述することで、例えば空間群番号136では以下のような情報を書かないといけません。

# Space group: P 42/m n m, No. 136
symmetry
x y z
-x -y z
-y+1/2 x+1/2 z+1/2
y+1/2 -x+1/2 z+1/2
-x+1/2 y+1/2 -z+1/2
x+1/2 -y+1/2 -z+1/2
y x -z
-y -x -z
-x -y -z
x y -z
y+1/2 -x+1/2 -z+1/2
-y+1/2 x+1/2 -z+1/2
x+1/2 -y+1/2 z+1/2
-x+1/2 y+1/2 z+1/2
-y -x z
y x z
endsymmetry

inflipファイルにおける空間群情報の記述

これの一部をごく簡単に紹介すると、
「x y z」は単位操作(=恒等変換)で、つまり何もしない操作のことです。
「-x -y z」 は原点を中心に x, y を反転する反射面操作です。
「-y+1/2 x+1/2 z+1/2」 は原点から x と y を入れ替え、さらにそれぞれ 1/2 平行移動、z も 1/2 平行移動する操作です。

このように対称性として許される操作が記述されています。毎回これを書くのは大変です。

もう一個は、各ピークに対応する反射のミラー指数とその反射のピーク幅(半値全幅)と観測構造因子の二乗(観測強度)を書かないといけません。今回のデータだと以下のようなものです。

fbegin
# h k l FWHM |Fo|^2
1 1 0 0.3215484 2552.8344727
1 0 1 0.3836745 1744.7054443
2 0 0 0.4207432 1314.4322510
1 1 1 0.4303559 172.4187164
2 1 0 0.4653722 96.7503738
2 1 1 0.5587889 1526.8004150
2 2 0 0.5912392 1537.7690430
0 0 2 0.6258296 1660.5401611
3 1 0 0.6731927 1045.2435303
2 2 1 0.6818876 0.0002843
1 1 2 0.7080866 1148.4725342
3 0 1 0.7233356 1481.2419434
3 1 1 0.7654185 0.0000250
endf

inflipファイルにおける各ピークの反射強度など

FWHMはFull width at Half Maximumの略でピーク強度の半分の値のところのピーク幅の半分を示します。

観測強度はピークの積分強度です。しかも各ピークが重なっているときにはそれぞれをうまく分離しないといけません。手動では難しいですよね。

これらの面倒は、RietanFPが解決してくれます。

RietanFPによるinflipファイルの作成

前回、SnO2.intを配置したフォルダに、RietanFPをインストールしたときに展開したフォルダにある”RIETAN_VENUS_examples”から、BaSO4_LBフォルダ内のBaSO4.insをコピーしてSnO2.insにリネームします。intとinsファイルは同じベースネーム(拡張子の前の名前)にしないといけません。

このinsはLBと書いてある通りLe Bail解析用の設定ファイルです。これをひな型にして、今回のデータに書き換えます。何か所か書き換えることになりますが全部説明しますし、最後に書き換え後のinsファイルも添付します。

  • TitlesをSnO2にする

    • 任意の名前でOK

  • R12の値を0.5にする

    • Kα1とKα2の両方が含まれているため。Kβは十分低減できているとして無視。

  • PHNAME1をSnO2にする

    • 任意の名前でOK

  • VNS1をA-136-1にする

    • ITAの空間群番号136の設定1という意味

  • HKLM1を「P 42/m n m」にする

    • 空間群番号136のHermann-Mauguin表記

  • SCALEの一番右を1にする

    • SCALE(全体をs倍する値)も最適化対象にする

  • CELLQを「CELLQ 4.73851 4.73851 3.18683 90.0 90.0 90.0 0.0 1010000」にする

    • DICVOL14での解析結果を書く

    • 最後の1や0は、今回は正方晶なのでaとc(つまり1番目と3番目)だけ最適化することを意味している

書き換え項目その1
  • NVOXAなどを100にする

    • 適当でOK。エラーが出たら適宜調整する

  • NLESQを2にする

    • 今のPCなら計算コストは問題になりませんし、パラメータが比較的最適解に近いのでうまく働いてくれます。

  • NCFが1になっている(0のほうに!がついて1のほうは:になている)ことを確認

    • !がついている方はその行自体コメント扱いになる

  • COMPOSCFに「Sn2 O4」を入力する

    • なぜSn1 O2じゃないか?は以前の記事を参照してください。

書き換え項目その2
  • NRANGEは0にする

    • 複雑なバックグラウンドの場合はWinPLOTRでバックグラウンドを出力して、2に設定して読み込ませるとよいです。今回はシンプルなので0です。

  • MEP  = 1の時の組成を「'Sn' 2.0 'O' 4.0 /」にする(今回は不要だけど次回以降のために)

    • MEPは最大エントロピー法でピーク重畳やノイズで物理的におかしい強度(負の値など)を補正して、全体的な一貫性を持たせる処理です。

    • デフォルトではMEP =0で使用しないになっています。これは常に1でもいいと思いますが、今回と違って化学組成が不明な時には注意が必要です。

  • NINT =0を設定する

    • SnO2.intの形式と合わせます。

書き換え項目その3

ここまで書き換えたSnO2.insは以下です。

RietanFPの実行

実際に実行してinflipファイルが生成するか見てみましょう。SnO2.insとSnO2.intを同じフォルダ内に設置し、insファイルを秀丸で開いた状態で、上部マクロボタンから「RIETAN」を押します。

RIETANマクロの実行

ターミナルが開いていろいろ出てきたと思います。lstという出力ファイルにエラーがなければ、inflipファイルが同じフォルダ内に出ていると思います。参考までに私の環境で実行したときのlstファイルをアップロードしておきます。

Superflipによる原子位置の推定

inflipファイルの修正

Superflipの実行の前に、inflipファイルを開いてください。以下の二つを書き換えます。

  • voxelを autoにする

    • もともとinsファイルで設定した「100 100 100」になっています。これをSuperflipが適切な値に調整できるようにします。

  • weakratioを0.2にする

    • もともと0.08になっています。

    • Superflipでは(delta以下の)弱い電子密度の符号を反転させます(Charge Flipping)。weakratioはその時に電子密度に掛ける係数です。1未満の場合はノイズや偽の弱いピークを徐々に消し、安定した構造に収束しやすくする効果がありますが、本来弱いが重要な電子密度成分も弱められるため、構造回復が遅くなる可能性があります。経験上0.2~0.3が良いと思います。

修正後のinflipを置いておきます。

Superflipの実行

inflipファイルを秀丸で開いた状態で以下のマクロを押します。

Superflipマクロ

ターミナルが開きいろいろ計算が走ります。正常に終わるとsflogというファイルが生成され、VESTAで電子密度分布図が開きます。

VESTAで開いた電子密度分布

電子密度が濃い部分が原子がいるであろう位置です。
この時に、明らかに原子位置同士が近いとか、はっきりとした塊になっていないときには、前に戻って解析をやり直す必要があります。ここでいう前とは、ピークサーチからの可能性もありますし、XRD測定や試料作製からの可能性もあります。

デフォルトではかなり密度の高いところしか見えないようになっています。今回はSnとOなので、重原子のSnが見えていることになります。以下のように、VESTAの「Properties」メニューから「Isosurfaces」タブを選んで「level」を調整すると、より低い電子密度の部分も見ることができます。もともと10.49くらいだったものを今回3にしてみたところ、Snから少し離れたところにも電子密度の塊があることがわかります。

電子密度の見た目を変えてみる

EDMAの実行

この電子密度を基に、原子を割り当てて妥当な構造ファイルを作るのがEDMAです。sflogファイルを秀丸で開いた状態でEDMAマクロを押します。

EDMAマクロ

するとVESTAが開き、以下のような結晶構造が表示されました。

EDMAで計算した原子配置

先ほどの電子密度分布で、一番濃い部分に灰色のSn、その周辺に赤色のOが配置されています。

これが今回のSnO2の結晶構造であるルチル型構造なんですが、慣れた人からするとちょっと見た目が違うな、と思われると思います。以下のように標準化された方法で結晶構造を描画し直してみましょう。

標準化した結晶構造

さらに、Polyhedralを押して多面体表示にし、少し向きを変えると、Snの周りにOが6配位した八面体が連なるルチル型の結晶構造が見えてきます。

見慣れたルチル型構造

sflogファイルとcifファイルも置いておきます。

おわりに

今回はDICVOL14で最も妥当な解で、最も対称性の高い空間群を選び、RietanFPでLe Bail解析をしてSuperflipで電子密度分布を解析し、EDMAでcifファイルを作成しました。

実際の解析では妥当な解がわかりにくかったり、最も対称性の高いものが解でなかったり、正解ではない組成を選んだら最終的に正解の構造に行きついたり、といったことも十分あり得ます。

今回のように比較的シンプルな系で練習を重ね、自分が解析したい複雑な系に進んでいくといいと思います。

今回は説明や試行錯誤を飛ばしましたが、次回以降、タイミングが合うときに説明していきます。

また、解析の自動化についても説明します。


いいなと思ったら応援しよう!