trpzip2 AMBER: CPPTRAJ Tutorial C0

An Introduction to CPPTRAJ

By Daniel R. Roe, July 2014
  (訳 和田野 晃)

Note: このチュートリアルはAmberTools 14のCPPTRAJ用である。(私はAmberTools 13しか持っていなかったのでamber12のフォルダにAmberTools 14を入れてcompileして使った。現在のところ支障はないようである。)

trpzip2

TABLE OF CONTENTS

Introduction
Loading a Topology and Trajectory
Specifying an Action
Processing the Trajectory
Working With Data Sets
Running in Batch Mode
Associated Files

Introduction

このチュートリアルはシミュレーションデータをCPPTRAJで分析するための概説である。CPPTRAJはPTRAJの後継者で多くの特徴を持ってる。CPPTRAJには基本的な分析法とデータセットの扱い法はカバーされている。このことはAmberToolsがちゃんとインストールされテストされていることを前提としている。そしてAmber atom mask selection syntaxにも精通してることも前提である。atom mask selection syntaxの詳細はAmber manual (section 28.2.3. Atom Mask Selection Syntax in the Amber 14 manual)を参照。また、xmgraceは、出力データの一部を表示するために必要である。

このチュートリアルでは、例として短いβ-ヘアピン軌跡trpzip2を使用する。軌跡は、ASCII形式よりも速くプロセシングでき、よりコンパクトで高精度で堅牢であるNetCDF形式である。NetCDFはアンバーでデフォルトで有効になっているが、CPPTRAJが読み取ることができない場合、アンバーメーリングリストに問い合わせなさい。 軌跡と関連したトポロジーはここからダウンロードすることができる::

CPPTRAJの詳細については、こちらを参照しなさい:

Daniel R. Roe and Thomas E. Cheatham, III,
"PTRAJ and CPPTRAJ: Software for Processing and Analysis of Molecular Dynamics Trajectory Data".
J. Chem. Theory Comput., 2013, 9 (7), pp 3084-3095.

トポロジーと軌跡のロード

CPPTRAJを開始するには, コマンドラインから'cpptraj' と入力する。:

[user@computer ~]$ cpptraj

CPPTRAJ: Trajectory Analysis. V14.05
    ___  ___  ___  ___
     | \/ | \/ | \/ | 
    _|_/\_|_/\_|_/\_|_
>

引数なしでCPPTRAJを実行すると、対話型のコマンドラインが表示される。コマンドラインは、単純または短い分析を実行する場合に便利である。コマンドラインでは、ファイル名やコマンドのタブ補完を可能にする。また、対話モードで使用されたすべてのコマンドは、cpptraj.logファイルに書き込まれる(この名前はコマンドラインスイッチ --logで変更することができる。cpptraj --log test.logなど)。

軌跡に読む込ます前に、CPPTRAJはトポロジーのシステムがどのようなものかを知る必要がある。この情報は、トポロジーファイルに含まれている。最初にPARMコマンドでトポロジーファイルをロードする。:

> parm trpzip2.ff10.mbondi.parm7 
アンバー・トポロジーとして「trpzip2.ff10.mbondi.parm7」を読む

現在ロードされているトポロジーは「list」コマンドで見ることができる:

> list parm

PARAMETER FILES:
 0: 'trpzip2.ff10.mbondi.parm7', 220 atoms, 13 res, box: None, 1 mol

出力は、トポロジーインデックス(0から始まる)とそれに続く簡単な情報を示している。より詳細な情報は、希望のトポロジーのナンバーを示す<#>を加えたparminfo <#>コマンドを使用して得ることができる。

> parminfo 0
	Topology trpzip2.ff10.mbondi.parm7 contains 220 atoms.
		13 residues.
		1 molecules.
		227 bonds (104 to H, 123 other).
		402 angles (233 with H, 169 other).
		853 dihedrals (481 with H, 372 other).
		Box: None
		GB radii set: modified Bondi radii (mbondi)

上記トポロジーファイルがロードされ、CPPTRAJでどのトポロジー(軌跡)をプロセスするかが分かる。

> trajin trpzip2.gb.nc 
	Reading 'trpzip2.gb.nc' as Amber NetCDF

このコマンドは後で処理するための入力軌跡リストに当該の軌跡を記載するだけで、直接には軌跡を読んでいないことに注意する。入力軌跡リストに現在あるものを見るためには、「list」コマンドを使用する:

> list trajin

INPUT TRAJECTORIES:
 0: 'trpzip2.gb.ncはNetCDFフォーマットの AMBER trajectoryで、Parm trpzip2.ff10.mbondi.parm7 (reading 1201 of 1201)で、処理は1201フレームで行われる。

アクションを指定する

今トポロジーとトラジェクトリーがロードされ、我々はトラジェクトリーからデータを生成するアクションを指定できる。我々はトラジェクトリーの過程でヘアピンのend-to-endの距離を知りたい。のですが、たとえば言う。我々は、この情報を得るために「距離」コマンドを使用することができる。まず、「distance」コマンドの構文を確認するために「help」コマンドを使用する。:

> help distance
	[<name>] <mask1> <mask2> [out <filename>] [geom] [noimage] [type noe]
	Options for 'type noe':
	  [bound <lower> bound <upper>] [rexp <expected>] [noe_strong] [noe_medium] [noe_weak]

  Calculate distance between atoms in <mask1> and <mask2>

「ヘルプ」コマンドを引数なしで実行すると、すべてのコマンドのリストを表示することができる。

trpzip2の最後の残基と対応している原子を知るために、「resinfo 'コマンドを使用する。

> resinfo
#Res  Name First  Last Natom #Orig
    1 SER      1    13    13     1
    2 TRP     14    37    24     2
    3 THR     38    51    14     3
    4 TRP     52    75    24     4
    5 GLU     76    90    15     5
    6 ASN     91   104    14     6
    7 GLY    105   111     7     7
    8 LYS    112   133    22     8
    9 TRP    134   157    24     9
   10 THR    158   171    14    10
   11 TRP    172   195    24    11
   12 LYS    196   217    22    12
   13 NHE    218   220     3    13

この出力から、このファイルの最後の残基は1と13であることがわかる。「resinfo、atominfo、molinfoコマンドは、システムレイアウトを検査し、さらにアトムマスク表示の結果を調べるために有用である。例えば、アトムマスク ':13'により、どの原子が選択されたかを知ることができる(残基13)。:

> atominfo :13
#Atom Name  #Res Name  #Mol Type   Charge     Mass GBradius El
  218 N       13 NHE      1 N     -0.4630  14.0100   1.5500  N
  219 HN1     13 NHE      1 H      0.2315   1.0080   1.3000  H
  220 HN2     13 NHE      1 H      0.2315   1.0080   1.3000  H

「distance」コマンドを入力すると:

> distance end-to-end :1 :13 out dist-end-to-end.agr
    DISTANCE: :1 to :13, center of mass.

このコマンドで、残基1と残基13の質量の中心間距離を計算し名前をend-to-endというデータとしdist-end-to-end.agrという名前のファイルに書き込む。ファイル名の拡張子が「.agr」であればxmgraceのファイルとしてCPPTRAJによって認識されるため、xmgraceで読み取り可能になる。「.gnu '拡張子を指定することで、gnuplotの読み取り可能なフォーマットに変更することができる。拡張子が「.dat」または認識されない場合は、CPPTRAJは標準のカラム形式にデフォルト設定する。サポートされている形式とその関連の拡張機能の完全なリストについてはアンバー14のマニュアルを参照する。

「trajin」コマンドと同様に、どのアクションを入力してもすぐに実行されず、どのアクションがアクションリストに記載されているかは「list」コマンドで確認できる。:

> list actions

ACTIONS:
  0: [distance end-to-end :1 :13 out dist-end-to-end.agr]

軌跡の処理

トポロジー、軌跡をロードして、アクションを指定たので、コマンド「run」または「go」で実行することができる。これは、各フレームに任意の指定されたアクションを実行し、各ロードされた軌跡を処理することをCPPTRAJに指示する。軌跡処理中にCPPTRAJが何をしているかを示す情報が示される。まず、現在ロードされているトポロジやトラジェクトリーの情報が出力される。

> run
---------- RUN BEGIN -------------------------------------------------

PARAMETER FILES:
 0: 'trpzip2.ff10.mbondi.parm7', 220 atoms, 13 res, box: None, 1 mol, 1201 frames

INPUT TRAJECTORIES:
 0: 'trpzip2.gb.nc' is a NetCDF AMBER trajectory, Parm trpzip2.ff10.mbondi.parm7 (reading 1201 of 1201)
  Coordinate processing will occur on 1201 frames.
TIME: Run Initialization took 0.0000 seconds.

基準座標または出力軌跡が指定されている場合は表示される。

次に、最初のトラジェクトリーがロードされ、すべてのアクションがそのトラジェクトリー/トポロジーのために設定される。

BEGIN TRAJECTORY PROCESSING:
.....................................................
ACTION SETUP FOR PARM 'trpzip2.ff10.mbondi.parm7' (1 actions):
  0: [distance end-to-end :1 :13 out dist-end-to-end.agr]
	:1 (13 atoms) to :13 (3 atoms), imaging off.

「distance」アクションが設定されている。

次いで, トラジェクトリーの各フレームを読み処理する。:

----- trpzip2.gb.nc (1-1201, 1) -----
 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Complete.
 

すべての軌跡が処理されると、すべての実行で処理されたフレームの数、アクションによる出力、生成されたデータセット、およびデータファイル等の概要が書き込まれる。

Read 1201 frames and processed 1201 frames.
TIME: Trajectory processing: 0.0094 s
TIME: Avg. throughput= 127372.9982 frames / second.

ACTION OUTPUT:

DATASETS:
  1 data set:
	end-to-end "end-to-end" (double, distance), size is 1201

DATAFILES:
  dist-end-to-end.agr (Grace File):  end-to-end
---------- RUN END ---------------------------------------------------

xmgraceがインストールされ、X-サーバーを実行していると、CPPTRAJコマンドラインから下記のコマンドでグラフを表示できる。

> xmgrace dist-end-to-end.agr
dist-end-to-end

データセットの操作

From the 'DATASETS' section of the output:

DATASETS:
  1 data set:
	end-to-end "end-to-end" (double, distance), size is 1201

「"end-to-end"」という名前のデータセットを生成し、それが1201の要素で倍精度の距離データであり、データ名は"end-to-end"である。必要に応じて、このデータセットを操作する。'writedata'を使えば、標準的な(列)データ形式でデータを書き出すことも可能である。:

> writedata end-to-end.dat end-to-end
 end-to-end

Linuxの「head」コマンドはCPPTRAJコマンドラインから直接使用することができ、「end-to-end.dat」の最初の数行を表示できる。

> head end-to-end.dat 
#Frame     end-to-end
       1       6.4251
       2       5.9250
       3       6.7926
       4       6.3125
       5       5.7580
       6       5.4389
       7       6.1086
       8       6.5588
       9       5.6949

CPPTRAJを終了するには、「quit」または「exit」と入力する。

> quit
TIME: Total execution time: 131.2112 seconds.
--------------------------------------------------------------------------------
To cite CPPTRAJ use:
Daniel R. Roe and Thomas E. Cheatham, III, "PTRAJ and CPPTRAJ: Software for
  Processing and Analysis of Molecular Dynamics Trajectory Data". J. Chem.
  Theory Comput., 2013, 9 (7), pp 3084-3095.

バッチモードでの実行

インタラクティブに実行しないで、CPPTRAJは1つまたは複数の入力ファイルを使用して実行することができる。ログファイル 'cpptraj.log'には、使用されたすべてのコマンドが記録されているので、基本的なcpptraj「スクリプト」として使用することがでる。たとえば、これまでに行っているすべてのものを生成するには次の入力を使用することができる。:

parm trpzip2.ff10.mbondi.parm7
trajin trpzip2.gb.nc
distance end-to-end :1 :13 out dist-end-to-end.agr
run
writedata end-to-end.dat end-to-end

「cpptraj.in」というファイルに上記のコマンドを貼り付ける。コマンドは、ファイルに書いたとおりに実行される。:

[user@computer ~]$ cpptraj -i cpptraj.in 

CPPTRAJ: Trajectory Analysis. V14.05
    ___  ___  ___  ___
     | \/ | \/ | \/ | 
    _|_/\_|_/\_|_/\_|_
INPUT: Reading Input from file cpptraj.in
  [parm trpzip2.ff10.mbondi.parm7]
	Reading 'trpzip2.ff10.mbondi.parm7' as Amber Topology
  [trajin trpzip2.gb.nc]
	Reading 'trpzip2.gb.nc' as Amber NetCDF
  [distance end-to-end :1 :13 out dist-end-to-end.agr]
    DISTANCE: :1 to :13, center of mass.
  [run]
---------- RUN BEGIN -------------------------------------------------

出力の残りの部分は、以前に見られたものと同様である。

ある行に'Warning:'または'Error:'メッセージの有無をチェックすることは非常に重要である。それらのエラーは、その行の入力に問題がある可能性を示している。

関連ファイル

これらのファイルは、出力を確認するために使用することができる。

dist-end-to-end.agr
end-to-end.dat
cpptraj.in

Copyright Daniel R. Roe, 2014