4. まとめ

小角散乱のデータ解析は、

  1. プログラムの開発
  2. 結果の3次元構造の妥当性
  3. それを導く元になったシミュレーションのフィットの検証

が必要となる。特に、タンパク質溶液散乱の解析プログラムにおいては ATSAS が標準化されており、 実際、ユーザーが行う作業は ATSAS のプログラムのパラメータを変えて最適な解を探していく過程が主である。

本稿で紹介したビーズモデル計算は比較的単純な解析工程であるが、Rigid Body Modeling など複雑な解析工程を含む解析では、その結果がどれぐらいの robustnessがあるかを知ってもらうためにも解析レポートを提示することは重要だと思われる。 しかし、現状では図などを準備してレポートを作成するのはかなりの作業量になってしまう。 3次元構造をその場でぐるぐるまわせて、フィットの具合も提示できる jupyter-notebook は、良いコミュニュケーションツールとなりうるだろう。

jupyter-notebook のベースとなっているpythonには、本稿で紹介しなかったが

  • 数値演算 Numpy
  • 科学技術計算 Scipy
  • グラフ表示 matplotlib
  • データ分析 pandas
  • 数式処理 Sympy
  • 機械学習 scikit-learn

など処理性能が高い基礎ライブラリが整っており、オープンでこれからも発展が期待できる。 以前は応用数学の原理を勉強するだけでも大変だった最新の最適化ルーチンが容易に実装できたりする。 それなりの学習コストはかかるが、それだけの価値はあるのでまだ使ったことのない人はぜひ検討していただきたい。