PyMOLメモ

.pdbからアミノ酸配列を抜き出す

save junk.fasta
save junk.fasta, chain A

Movie関係コマンド

frame数の設定

#30フレームで設定
mset 1x30

#state1で30フレーム、state1から15に変化、state15で30フレーム、state15から1に変化
mset 1 x30 1 -15 15 x30 15 -1

#31フレーム目からさらに30フレーム追加
minsert 30,31

#31フレーム目から、30フレーム分削除
mdelete 30,31

mview関係

#(現在のフレーム)をシーンF1で保存
mview store,scene=F1

#1フレームからy軸に30度回転して、30フレームから元に戻る
mview store,1; turn y,30; mview store,30

selectいろいろ

select S1, A_MOL around 5
select S1, A_MOL expand 5
A_MOLから5Åにある原子をS1と選ぶ」

select S1, A_MOL w. 5 of B_MOL
A_MOLの中で、B_MOLから5Åにある原子をS1と選ぶ」

select S1, bycell A_MOL
A_MOLを含む単位格子内の分子をS1と選ぶ」

select S1 and ps. FATEW
S1の中でFATEW配列を選ぶ」

Sphereサイズを同じにする

alter object, vdw=1.0

rebuild

電子密度マップを描く

ファイルを.ccp4や.xplorに変更

isomesh name, map, level [,(selection) [,buffer [,state [,carve ]]]]

Label関係

右クリックでnew > pseudo atom > labelで入力可能

label_font_id でフォントの種類を選択

Label_size で大きさを変更

Center of Mass(Geometry)

Center_Of_MassのPlugInをinstall

com selection [,state=None [,mass=None [,object=None]]]

alpha helixの角度を測る

AngleBetweenHelicesのPlugInをinstall

  1. 測りたいalpha helixを選ぶ(selectコマンドでhel1とhel2)
  2. angle_between_helices hel1, hel2 , method=[0-3] , visualize=[0-1]

method [0: helix_orientation, 1: helix_orientation_hbond, 2: loop_orientation, 3: cafit_orientation]

visualize [矢印を 0: 書かない, 1: 書く] (defaultは1)

cartoon2次構造の大きさを変える

beta sheet

set cartoon_rect_length, [value]

set cartoon_rect_width, [value]

alpha helix

set cartoon_oval_length, [value]

set cartoon_oval_width, [value]

loop

set cartoon_loop_radius, [value]

cartoon設定(DNA)

backboneの太さ

set cartoon_tube_radius, [value]

塩基の表示

set cartoon_ring_mode, [value]

set cartoon_ring_transparency, [value]

transparentな背景にする

set ray_opaque_background, off

分子内部の空洞をsurfaceで描く

set sruface_cavity_mode, 2 (or 3 ?)

Crystal packing

numpyとsupercell.pyが必要

  1. run supercell.py
  2. supercell a, b, c, [object], [color], [name] #セルの表示
  3. symexpcell [prefix], [object], a, b, c #セル内の分子表示

movieの書き出し

Freemol mpeg_encoderのインストール

  1. freemolのダウンロード
  2. 環境変数FREEMOLを設定。
    #export FREEMOL=/path/trunk/freemol
    (また、pymolの実行スクリプトにも書き込む。)
  3. $FREEMOL/src/mpeg_encode/ に移動してコンパイル

resolutionを指定したmovieを作製する

1. 下記のスクリプトを編集(movie.py)

  • for x in range(フレーム数)
  •      num = "{0:03d}".format(x+1)
  •      cmd.frame(x+1)
  •      cmd.ray(1920,1080)
  •      cmd.png("ファイル名" + "_" + str(num) + ".png")

2. pymolのコマンドラインで"run movie.py"を実行

3. ffmpegでmergeする

$ffmpeg -r 30 -i input_%03d.png -vcodec rawvideo -b:v 10240k -f mov output.mov

4. Handbrakeで再エンコード

morphムービーの作成

lsqmanの準備

  1. morphしたいファイルを用意
  2. chain IDがpdbファイルの1行目からの順番に再振りされてしまうので注意(pymolを使えば簡単にchain順に書き換えれる)

lsqman

  1. read m1 <input>.pdb #初期構造
  2. read m2 <input>.pdb #終了構造
  3. Nomen m1 #原子名の訂正
  4. Nomen m2
  5. Atom all #忘れるとCaしか書き出されない
  6. Fix m1 "select" m2 "select"
  7. morph m1 "select" m2 "select" 30(#eMovieを使う場合は30がよさそう) prefix cart "select" 999

pdbにまとめる

  東京大学・伏信進矢 先生のホームページを参考にawkのファイルとシェルスクリプトを準備する

mencorer関係

  mencoder -mc 0 -noskip -skiplimit 0 -ovc lavc -lavcopts vcodec=mpeg4:vhq:trell:mbd=2:vmax_b_frames=1:v4mv:vb_strategy=0:vlelim=0:vcelim=0:cmp=6:subcmp=6:precmp=6:predia=3:dia=3:vme=4:vqscale=1 "mf://*.png" -mf type=png:fps=18 -o output.avi

ffmpeg関係

ffmpeg -r 30 -i input_%04d.png -vcodec rawvideo -b:v 10240k -s 640x480 -f mov output.mov

mpeg4からmpeg2

ffmpeg -i output.avi -target ntsc-dvd -b 5000k -acodec ac3 -ar 48000 -vcodec mpeg2video -s 720x480 -r 29.97 -aspect 16:9 -ab 192000 -ac 2 output.mpeg

mpeg4からアニメーションgif

ffmpeg -i インプット.avi -an -f gif -pix_fmt rgb24 アウトプット.gif

mpeg4からmov

MacのQuicktimeで保存


Biophysical Chemistry