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

R のプロットに複数の軸をつける

R

上図のように R で複数の軸をつけるには、axis の at と labels 引数を用いる。 df <- read.table("/tmp/test") # CTRUNCATE のログとかから切り出したもの par(mar = c(10, 4, 4, 2)) plot(df$V1, df$V2, type="l", main="Wilson plot", lwd=2, ylab="log(I…

R で二次元配列をなめる処理をするときの速度

R

R で、検出器上の各ピクセルの分解能を計算しようとした。最初に書いた愚直なコードは以下の通り。 lambda <- 12400 / 7000 # A distance <- 51.5 * 1000 # um pixel_size <- 50 # um buf_size <- 3000 # px buf_origin <- c(buf_size, buf_size) / 2 reso <…

NVIDIA の GPU 使用率を Ganglia で監視する

NVIDIA の GPU の使用率を、Ganglia で監視するようにした。GPU の状態は nvidia-smi コマンドで取得できる。dmon モードで起動すると、連続的に1エントリ1行の形式で出力してくれる。 nvidia-smi dmon -s pu -d 5 # gpu pwr temp sm mem enc dec mclk pclk …

実装して学ぶデータ処理システム その2 - 反射が起きる条件

スポット検出の話 が間に入ってしまったが、第 1 回に引き続き、Kabsch, Wolfgang. "Integration, scaling, space-group assignment and post-refinement" Acta Crystallographica Section D (2010): 133-144 の 2.2 節で述べられている反射条件を説明する。…

RELION に mrcs 形式の particle をインポートする

公開データセットを使って RELION の練習をしている。高分解能データが触ってみたいので、 EMPIAR ID 10029 にある GroEL のシミュレーションデータを使うことにした。EMAN2 で もっと低分解能の GroEL を題材にしたチュートリアル と同じように処理したとこ…

systemd への登録

iptables の設定を行うスクリプト /etc/init.d/firewall を書いた。これを起動時に自動実行したい。Debian jessie では systemd になっているので、サービスとして登録する必要がある。以下のような /etc/systemd/system/firewall.service ファイルを作る。 …

bash の関数呼び出しの罠

bash で定義した関数を呼び出すときには、() を付けない。プログラムを呼び出すときだって () を付けないのだから、当たり前といえば当たり前なのだが、もし () をつけてしまうとひどいことになる。 doit() { echo "I am doit()" } doit() echo 1 echo 2 doi…