====== AMBER と Gromacs ファイルの変換 ====== ===== 概要 ===== * AMBER で入力ファイルを作成して、Gromacs で計算、最後に AMBER で解析する方法 * Gromacs は無料で、AMBER の入力ファイル作成ツール AmberTools も無料なため、金銭的なコストは 0。 * AMBER で GPU 計算をしようとすると、AMBER のバージョン、CUDA のバージョン、ハードウェアをうまく組み合わせる必要がある。場合によっては、AMBER の別バージョンを購入する必要がある。 ===== 手順 ===== * 例として、DNA の方法を紹介する * 作業ディレクトリは ''~/test'' * 事前に AmberTools (AmberTools16; /opt/amber16) および Gromacs (5.1.2) はセットアップ済みとする ==== 入力ファイルの作成と変換 (AMBER→Gromacs) ==== - 構造ファイルの入手 * [[http://www.rcsb.org/pdb/explore.do?structureId=1BNA | RCSB PDB - 1BNA: STRUCTURE OF A B-DNA DODECAMER. CONFORMATION AND DYNAMICS Structure Summary Page]] から PDB ファイルを入手する (1bna.pdb) - 変換用ツール ([[https://code.google.com/archive/p/acpype/ | acpype.py]]) の入手\\ $ mkdir ~/bin $ cd ~/bin $ svn checkout http://ccpn.svn.sourceforge.net/svnroot/ccpn/branches/stable/ccpn/python/acpype acpype * パスを通しておくと以後便利になる (今回はパスを通さない方法で行う) - 入力ファイルの作成\\ $ cd ~/test $ tleap -f /opt/amber16/dat/leap/cmd/oldff/leaprc.ff14SB -f /opt/amber16/dat/leap/cmd/leaprc.gaff -f /opt/amber16/dat/leap/cmd/leaprc.water.tip3p > complex = loadpdb 1bna.pdb > check complex > addions2 complex K+ 0 > solvatebox complex TIP3PBOX 20 > saveamberparm complex 1bna.prmtop 1bna.inpcrd * ''tleap'' の後の複数の ''-f'' は力場ファイルの指定である (tleap 実行後に source コマンドで指定するのと同じ意味) * ''complex'' は任意の変数名 * ''check complex'' で構造の異常を確認 (この場合だと「電荷が 0 でない」「原子同士が近すぎる」というワーニングが出る) * ''addions2'' を使って、K+ (カリウムイオン) で電荷を 0 にする * ''solvatebox'' は、溶質から溶質を覆うボックスまでの距離が 20 Å になるように、TIP3P の水分子で溶質を覆う * 最終的に ''1bna.prmtop'' (トポロジーファイル) と ''1bna.inpcrd'' (座標ファイル) を出力する - ファイルの変換\\ $ ~/bin/acpype/acpype.py -p 1bna.prmtop -x 1bna.inpcrd * 新たに ''1bna_GMX.top'' (Gromacs 用トポロジーファイル), ''1bna_GMX.gro'' (Gromacs 用座標ファイル), ''em.mdp'' (最適化用計算ファイル), ''md.mdp'' (MD 用計算ファイル) が出力される * 参考サイト: [[http://blog.livedoor.jp/ag_plusplus/archives/68154284.html | Ag++ : ACPYPE.pyを使ったAMBER→Gromacs topologyの変換と注意点(バグ?)]] ==== 計算 (Gromacs) ==== * 通常の Gromacs の計算と同じ ==== 出力ファイルの変換 (Gromacs→AMBER) ==== * Gromacs での計算で、1bna_md.trr (トラジェクトリファイル) が出力された場合 - 周期境界で分子がジャンプしないようにする\\ $ gmx trjconv -s 1bna_md.tpr -f 1bna_md.trr -o 1bna_nojump.trr -pbc nojump -center * ''1bna_md.tpr'': 計算に使った tpr ファイル (境界線を分子がまたいでないものが望ましいため、最適化のものを使うと良い) * ''1bna_nojump.trr'': 出力ファイル - 特定の分子を中央に配置したボックス状の系を作成する\\ $ gmx trjconv -s 1bna_md.tpr -f 1bna_nojump.trr -o 1bna_nojump-center.trr -center -pbc mol -ur compact * ''1bna_md.tpr'': 計算に使った tpr ファイル (境界線を分子がまたいでないものが望ましいため、最適化のものを使うと良い) * ''1bna_nojump-center.trr'': 出力ファイル - トラジェクトリの変換\\ $ cpptraj > parm 1bna.prmtop > trajin 1bna_md_nojump-center.trr > trajout 1bna_md.nc netcdf > go * ''1bna_md.nc'' が出力される - トポロジーファイルの変換\\ $ parmed > gromber 1bna.top > outparm 1bna.prmtop > quit * ''gromber'' には計算に用いた .top ファイルを指定する * ''1bna.prmtop'' が出力される * parmed は、AmberTools に入っている変換ツール * parmed を使わない prmtop ファイル (tleap などで再作成したもの) は、VMD で見ると、周期境界で分子がうまく処理されない。 - あとは AMBER での解析を行う。 * 参考サイト: * [[http://blog.livedoor.jp/ag_plusplus/archives/67925050.html | Ag++ : GROMACSトラジェクトリからAMBERトラジェクトリへの変換 続き]] * [[http://www.ag.kagawa-u.ac.jp/charlesy/2016/12/16/gromacs%E5%BD%A2%E5%BC%8F%E3%81%AEtopology%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AEamber%E5%BD%A2%E5%BC%8F%E3%81%B8%E3%81%AE%E5%A4%89%E6%8F%9B/ | GROMACS形式のTopologyファイルのAMBER形式への変換 – 香川大学農学部 ケミカルバイオロジー研究室]] * [[http://biophysics.med.jhmi.edu/~yliu120/tutorials.html | Tutorials]] {{tag>Linux 分子シミュレーション アプリケーション}}