2015-07-01から1ヶ月間の記事一覧

実装して学ぶデータ処理システム その2 - union-find によるスポット検出

作図に手間取っているので、予定を変更して、スポット検出アルゴリズムについて説明する。元ネタは Kabsch, Wolfgang. "Integration, scaling, space-group assignment and post-refinement" Acta Crystallographica Section D (2010): 133-144 の 2.5 節だ…

実装して学ぶデータ処理システム その1 - XDS の座標系

XDS の主要なアルゴリズムを手を動かして実装することを通じて、X 線回折のデータ処理について理解を深めよう。サンプルデータは Thaumatin / Diamond Light Source I04 user training を用いることにする。まず、XDS の座標系を学ぶ。nXDS は回転軸の概念が…

XDS の謎

XDS には謎が多い。ソースコードが公開されていない以上、いくら悩んでも答えが出ないことも多い。そういう疑問点を、自分が忘れないために列挙しておく。もし答え(かもしれないもの)をご存知のかたは、ぜひ教えてほしい。 GAIN.cbf と BKGINIT.cbf GAIN.cbf…

R から ADSC 形式の画像を書き出す

R

バイナリファイル書き出しの練習として。 writeADSC <- function(filename, img, lambda_in_A=1.0, orgx=ncol(img)/2.0, orgy=nrow(img)/2.0, pixel_size=0.172, camera_length_in_mm=50.0) { width <- ncol(img) height <- nrow(img) conn <- file(filename…

Rcpp 経由で miniCBF 画像を読み込む

R

Rcpp と CBFlib の練習も兼ねてやってみた。エラー処理は無視!cbflib-wrapper.cpp: #include <Rcpp.h> #include <cbf/cbf.h> using namespace Rcpp; using namespace std; // [[Rcpp::export]] NumericMatrix readCBF(string filename) { FILE *fh = fopen(filename.c_str(), "r</cbf/cbf.h></rcpp.h>…

内積や外積の偏微分

簡単だが、後の参照用にまとめておこう。つまり、積の微分の公式が成り立つ。つまり、こちらも積の微分公式が成り立つ。

方位行列の偏微分

以前に書いた方位行列の偏微分を求めておこう。 となるような方位行列を計算すると、 となるのだった。これを偏微分していく。ただし、 の形も使う。ここまでは楽勝。以下、検算してない(上も保証はできないけれど)ここもなんとか。問題は の偏微分であるが…

d*TREK を使ってみる

さきほど、d*TREK をビルドしたが、dtprocess と dtdisplay という GUI 部分がうまく動かなかった。そこで、CUI だけから使ってみることになる。基本的には、xia2 のドキュメント ftp://ftp.ccp4.ac.uk/ccp4/6.3.0/ccp4-6.3.0/share/xia2/xia2/Wrappers/dTRE…