EXPO2013の使用方法 created 2014 1/6 (updated 2015 1/8)†
EXPO2013について†
- (追記2015 1/8) EXPO2014が公開された。2013版と比べて、指数付けに別の2種のプログラムが追加されたくらいの変化。詳しくはEXPO2014使ってみたを見てください。直接法部分での変化はないようなので、以下の説明は有効です。
- EXPO2013は粉末回折X線(中性子)データから結晶構造を求める総合プログラムで、直接法を使う方法としては定番となっている。イタリアの結晶学研究所のAltomareらにより作られており、元々は単結晶データ用の直接法プログラムSIRをベースに、それを粉末用に作られたのがSIRPOWで、さらにGUI,指数付け、空間群推定、強度抽出(EXTRA)、リートベルトなどの機能を追加して総合ソフト化したのがEXPOである。現在は実空間探索法も取り込んでいる。EXPO2009からMac版も用意されるようになった。最新版はEXPO2013(Altomare et al., J. Appl. Cryst., 46, 1231, 2013)でウェブページはここ。大学等の研究室での使用は無償だが、企業では1,000ユーロ払う必要がある。ダウンロードするためにはレジストレーションが必要。最近使い始めたばかりであるが、忘れないように使い方をまとめておく。ほとんどはGUIの操作で使うことができる。以下、例としてforsterite(Mg2SiO4)データを扱う。最初に使われる方はマニュアル中にあるチュートリアルを実行されることをお勧めする。残念ながら内臓されているExamplesは有機化合物だけで無機化合物の例がない。
直接法†
- EXPO2013を使いこなすには直接法についての知識が必要となる。直接法は観察された強度の中にも位相の情報が隠れているのを見つける方法である。単結晶データに適用すれば、かなり高い確率で結晶構造を求めることができる。粉末回折データの場合には、重畳したピーク強度の不確定さが加わるため、より難しくなる。そのためSuperflipと同じく高精度の回折データが望ましい。直接法自体については、日本結晶学会誌の桜井先生の解説(28巻,4号~6号に連載)を読むのがいい。この結晶学会誌の古い分はJ-Stageで誰でも読める。最近、EXPO開発にも関わっているGiacovazzo先生の"Phasing in Crystallography A Modern Perspective"がIUCr Texts on Crystallographyシリーズから出た。粉末データと、charge flippingとVLDについても触れられている。EXPOで使われているPOLPOやRBMなどが少し解説されている。
使用方法†
データの準備†
解析では粉末X線回折データをまず準備する必要がある。テキストファイルで角度と強度が1行毎に書かれているもので十分。なお改行はMac形式では読み込めないので、Windows又はUNIX形式にエディタ等で変更する。Superflip_plus_Foxに置いているforsterite強度データはEXPOのXY形式で読み込める。なおファイル名を*.xyと変えた方が無難。
データ読み込み†
EXPO2013を起動する。ファイルメニューからNewを選択。New Projectウィンドウが開く。ここの2番目のProfile Counts filenameのところで、フォルダアイコンをクリックして、ファイル選択ダイアログで使用する粉末回折線データを選ぶ。ここではforsterite.xyを読み込む。ファイルに問題があるとエラーがでる。正常に読み込まれれば、3番目のRangeの角度範囲が今読み込んだファイルの値に設定される。もし高角側の強度が弱く解析に含めたくない場合等には、このRangeで解析に実際使う角度範囲を設定することができる。forsteriteでは10-80度と設定した。4番目のSourceで測定に使用した線源を選ぶ。デフォルトではCu Ka1になっている。forsteriteの場合はこのままでよい。Ka2ピークが存在する場合は、K Alpha2 Correctionをチェックする。その他下の方はこの時点で設定する必要がない。Saveをクリックする。ここで作られたコントロールファイルは*.expとしてセーブされる。ダイアログがでるが、問題なければGoをクリック。何か間違えたところがあったらEditをクリックすると*.expファイルを直接編集できる。
ピークサーチ、指数付け†
- Goをクリックした場合、読み込んだデータファイルの粉末回折パターンが表示される(指定したRangeで)。ウィンドウ右上部にNext >と赤字で表示されている。これをクリックするとピークサーチが行われて、その位置がパターンに示される。パターンの拡大等はウィンドウ上部のアイコンでできる(反応が遅い場合がある)。ピークの追加と削除(不純物相ピーク)はAdd/Del Peaksアイコンをクリックして、ピーク位置でそれぞれ左、右クリックすることでできる。なお、ピークサーチの条件を変えたい場合は、PatternメニューのModify PeaksのPeak Search Conditionsでできる。また、バックグラウンドも同じようにポイントを追加、削除できる。次にNext >をクリックすると、ピーク位置の計算とそれに続いて、NTREORによる指数付けが始まる。途中でダイアログボックスが出てくるが、無視してしばらく待つと、Plausible cell parametersのウィンドウが出てくる。低対称だと非常に時間がかかる場合がある。いくつか候補が出てくるが、figure of merit順に並んでいる。一般には最初のものが正解であろうが、必ずしもそうでない場合がある。小さいピークは自動的には拾われないので、マニュアルで追加しないといけないケースもある。
空間群推定†
- 候補を選択しておいて、OKをクリックすると、次にMissing informationのウィンドウが開く。ここでCell Contentにセル内の原子とその数を入力する。この情報はSpace groupの探索とフーリエ合成した時の電子密度ピークの同定に使われる。forsteriteの場合はZ=4なので、Mg 8 Si 4 O 16と入力する。その後、パターンが4つくらいの領域に分けられる。Next >をクリックするとバックグラウンドがfitされる。次にNext >をクリックすると、Le Bail fittingが行われる。孤立したピークでまずピーク形のパラメーターを決めて、個々の領域でさらにfitを行い、最後に全領域でのfitを行っているのが画面上に表示される。なお、この時点ではまだ空間群は決まっていないので、その晶系で最も高いラウエ対称性で消滅のない空間群が仮定されている。Next >をクリックすると、探索した空間群の候補が示される。この時パターン下部に追加の縦棒が出る。下側の縦棒は前から表示されているもので、先の仮定した空間群で期待されるピーク位置を示す。上部の縦棒は選択した消滅則や空間群で消滅するピーク位置を示している。Find space groupのウィンドウで、消滅するグループを選択すると、縦線が変化する。選択された空間群が正しいか、不純物によるピークがあるかどうかなどの判断に使える。forsteriteの場合は、P21nbとPmnbの2つが示された。正解はPmnbであるが(Pnmaの軸を取り替えたもの)、消滅則だけでは区別できない。Pmnbを選択してOKをクリックする。実はP21nbを使ってもほぼ同じ構造が得られるので、どちらかが正しいかは結合距離などをよく見て判断することになろう。これまでに得た結果を元に新しい*1.expファイルを作るか尋ねるダイアログが出るので、OKをクリックする。いくつかの例では全く正しくない空間群が示されることがあった。これは小さいピークを無視しているためだと思われる。指数付け、空間群が正しくないとこれ以降の計算は時間の無駄となるので、得られた結果を慎重に吟味する必要がある。
NTREORのオプションなど†
- これまでの計算のオプションなどを説明する。指数付けがデフォルトの設定でうまくいかない場合は、NTERORのオプションを指定してやる必要がある。これはGUIからはできず、*.expのファイルに直接オプションを追加する。最初に出来たforsterite.expの方をエディタで見ると、%ntreorコマンドが入っていることが分かる。%ntreorの次の行に、VOL = 6000, CEM = 40などと書き込む。なお、VOLとCEMはそれぞれ最大の体積、軸の長さを指定するオプションである。NTREORのマニュアルはEXPO2013のマニュアル24ページにリンクがあるので、それをクリックすると見ることができる。forsterite1.expの方は既に指数付けを終えているので、%ntreorコマンドはなく、指数付けで決まった格子常数の値が設定されている。もし軸を取り替えたい場合は、cellの値を入れ替えて空間群の推定をやり直す。
- 空間群の推定をやり直したいときは、*.expファイルからspace ****を消して、findspaceと書き換える。これがあると空間群の推定が実行される。
- NTREORの実行結果を含め、計算結果の詳細はInfoメニューのView Output fileで見ることが出来る。
- 更新した*.expファイルから実行したい場合は、FileメニューからLoad&Goを選択する。更新した*.expファイルを選択して、Goをクリックする。いちいち最初から繰り返す必要はない。
- なお*.expファイルの最後の%continueは、デフォルトの直接法による初期構造の推定の一連の計算(強度抽出($extraction)、規格化(%normal)、構造不変量(%invar)、位相の拡張(%phase)、フーリエ合成(%fourier))をまとめて行うことを意味している。普通はこのままでよいが、個々の計算でオプションを指定したい場合や、特定の計算だけやり直したい場合は、%continueを必要なコマンドで書き直す必要がある。
ピーク強度抽出 %extra†
- 空間群推定が終わったところで、Next >をクリックするとバックグラウンドが引かれる。もう一度クリックすると、Le Bail fittingが始まる。その結果はInfoメニューのHKL Listで見ることができ、また出力もFileのExportからできる。fittingが悪くても出来ることはあまり多くないが、%extraのオプションでピーク形状関数を変えることなどができる。デフォルトはPearson VII関数である。その後で規格化が行われる。Wilson統計の計算が行われるが、そのプロットはInfoメニューのView Output fileの中に示されている。
位相決定†
- Next >をクリックすると自動的に、構造因子の規格化(E(h))、初期位相の推定、位相拡張の計算が行われて、最良の20個の位相の組が選ばれる。その内、最もよいものについてフーリエ合成を行い、原子位置が推定される。構造ビューアのウィンドウが自動で開き、解析途中の結果が示される。構造ビューアが開いてない時は、メインウィンドウの右上のOpen viewerアイコンをクリックする。この構造ビューアは無機化合物の場合、デフォルト設定では分かりづらいので、Cell edgeとSymmetryをONにする。ViewメニューのDisplay Fourier Mapsで電子密度を表示させることができる。構造のチェックはVestaの方がやりやすいので、結晶構造ビューアのFileメニューからExportでCIFファイルを出力する。これをVestaで開き、原子の配置、配位数、原子間距離が適切であるか確認する。特に元素番号が近い原子間で取り違えが起こりやすいので、その辺も考慮しながら得られた構造をよく見る必要がある。
構造が得られなかった場合†
- まずはSolveメニューのExplore trialsを選択する。Explore trialsのウィンドウが開き、位相の20組が出てくる。一番CFOMの高いものだけがデフォルトで計算されている。その他でCFOMの高いものをチェックして、Goをクリックするとそれらの位相を使った計算が行われる。その方法は選べるが、無機化合物の場合はFourier recyclingをまず試す。計算が終わった後はRFの小さい順に並び変わっている。RFの小さいものをチェックすると正しい構造が得られている場合がある。クリックすると、その構造がビューアに表示される。なお、普通Fourier recyclingがよいが、私の経験ではRBMで再計算した方が正しくなったことが何度かあった。解が得られない場合はその他のオプションを選択して、実行させることも必要。また毎回の計算で少しづつ得られる結果が違うので何度も繰り返して計算する必要がある。
- Explore trialsでも構造が得られない場合、強度抽出過程での改善で解決する場合がある。1つの方法は解析に使う角度範囲を変更することである。特に高角度側でSNが悪い場合は、それらを使わないようにする。RangeはPatternメニューのRangeからも変更できる。forsteriteの場合、10-80度では正解が、10-100度ではMg(M1)とSiが入れ替わった構造が得られた(結晶化学的知見から訂正できるレベルの間違いではある)。2つ目の方法としては、SolveメニューのRecycle in Extraを選ぶと、既に得ている部分構造を使って強度のextractionを改善してくれる。3つ目の方法としては、$extraのオプションとしてRANDOMを指定すると、Le Bail法で重畳したピークが同じ強度になる傾向を抑えることができる。
- 比較的重い原子の位置は大体正しく得られているが、差フーリエで軽い原子の位置が決まらない場合は、既に見えている原子をFox等の実空間探索法を使って固定して、軽原子の位置を求めることは可能である。やり方はSuperflipで一部原子が見えた時と同じ。EXPO2013でも実空間探索法を使うことができる。また、POLPOという部分構造(多面体)を使って軽元素位置を求める方法も使える。
POLPOについて†
- EXPOでしばしば生じることは、重い原子位置はほぼ正確に得られるが、軽い元素、例えば酸素の位置が決まらないことである。そのような場合のためにPOLPOという機能が組み込まれている(Altomare et al., J. Appl. Cryst., 33, 1305, 2000)。これは重原子(陽イオン)を中心とした陰イオンからなる配位多面体を考えて、それの方位をランダムに変えて結晶化学的に適切で粉末パターンでのよい一致を求める。実空間探索法とも似ているが、既に分かっている重原子間距離の分析から軽原子位置を事前に推定する、その軽原子ー重原子を軸として回転させるなど既に直接法で得ている情報を最大限利用する点で違いがある(直接法のプログラムなのでそうなるのだろうが)。配位数は重原子間の距離から推定するしかないが、もちろんNMR等から分かっていればここで利用することができる。自動的にRietveldの解析まで行う、配位多面体としては4面体、8面体のみサポート。陽イオンが一部見えない場合も対応可能(POLPO2)。POLPOを使う場合は、求まった陽イオン位置を入れた*.fraファイルと配位や結合距離を%polyhedraで指定する必要がある。
RAMM法について†
- 特に重い元素がない場合には、ほとんど意味のある原子位置が求まらない場合がある。RAMM(random-model-based mothod)法は位相推定を捨てて、ランダムな構造を与えて、Fourier recycling, RBM, COVMAPで構造の改善を行う。直接法とはもはや呼べない。SolveメニューからRAMM procedureを選択すると実行されるが、構造を多数試行錯誤するため時間はかかる。
注意点†
- 簡単な構造であれば数分で解けるが、複雑になってくると色々パタメータ変えたり、何度も繰り返し計算させたりしないとよい結果は得られない。
- *.expには強度ファイルの場所がフルパスで書き込まれるので、もしフォルダーを移動させると再度使った時に強度ファイルが見つからないとのエラーがでる。Editでパス部分を書き直せばよい。
- プロセスによっては計算中かどうか分かりづらい時がある。Next >がクリックできる時は次のステップの計算が可能。
- 空間群が間違っている場合、位相を求めるところ(phase)でエラーが出る場合が多い。
- 角度範囲によって解が得られない場合があるので、角度範囲を色々変えた計算を行う必要がある。
解析例†
- SDPD Round Robin 2のsample2(Sr5V3(O/F/OH)22)を解析してみた。デフォルト設定で初期構造が問題なく得られた。データの質がいいためか、指数付け、空間群の推定(P21/nになるが、これはP21/cの軸を取り替えたもの)、迷うところがない。全て酸素で計算した。精密化までやっていないが、そこではO,F,OHの区別をしないといけないだろう。原子間距離やbond valenceがその区別に役立つはず。