用Gromacs对蛋白与小分子进行模拟

本文主要参考Gromacs官方的教程,另外关于amber的部分主要参考了antechamber和acpype

用Gromacs对蛋白与小分子进行模拟最重要的是要生成小分子的力场文件。因为Gromacs本身不能自己生成小分子的力场参数文件,所以需要用第三方的工具。官方教程列举了很多种方式,主要推荐用cgenff。

CGenFF

  1. 下载最新的gromacs力场,我下载的是charmm36-jul2020

  2. 处理蛋白

     gmx pdb2gmx -f clean.pdb -o processed.gro -ignh
    
  3. 处理小分子

首先要准备好小分子的mol2文件,氢原子必须都加上(可以用pymol直接生成)。要保证mol2文件里的残基名称是一致的。然后将准备好的mol2文件上传到cgenff网站生成str文件。
最后将str文件用cgenff_charmm2gmx.py转换为gromacs的力场文件。

python cgenff_charmm2gmx.py JZ4 jz4_fix.mol2 jz4.str charmm36-mar2019.ff

注意这个python脚本必须用python2,并且要安装networkx库。生成的文件包括jz4.prm,jz4.itp以及jz4_ini.pdb
然后用gromacs的editconf将jz4_ini.pdb转换为jz4_ini.gro。
然后将蛋白及小分子的gro文件合并到一起,手动删掉多余的行,更新原子数。
最后在topol.top文件引入jz4.prm和jz4.itp,并在最下面的[ molecules ]中加入小分子

AnteChamber

注意用cgenff并不总能成功,因为cgenff生成的str文件有时候包含了多余的dummy atoms,这个时候我推荐用ambertools中的antechamber来生成小分子的力场文件,然后用acpype来转换为gromacs力场文件。

  1. 由于amber力场与gromacs力场冲突,所以我们需要选择amber的99SB力场重新生成蛋白的gro文件及力场文件。

     gmx pdb2gmx -f clean.pdb -o processed.gro -ignh
    
  2. 安装ambertools及acpype
    我选择用conda直接安装acpype,这样会自动安装ambertools

     conda install -c conda-forge acpype
    
  3. 用antechamber生成小分子的力场文件

    首先添加H原子

     reduce sustiva.pdb > sustiva_h.pdb
    

    然后计算电荷

     antechamber -i sustiva_new.pdb -fi pdb -o sustiva.mol2 -fo mol2 -c bcc -s 2
    

    然后检查参数

     parmchk -i sustiva.mol2 -f mol2 -o sustiva.frcmod
    

    打开tleap

     tleap -f oldff/leaprc.ff99SB
    

    导入GAFF力场

     source leaprc.gaff
    

    载入小分子结构

     SUS = loadmol2 sustiva.mol2
    

    导入小分子的extra参数

     loadamberparams sustiva.frcmod
    

    保存

     saveoff SUS sus.lib
     saveamberparm SUS sustiva.prmtop sustiva.rst7
    
  4. 用acpype生成gromacs的力场文件

     acpype -p FFF_AC.prmtop -x FFF_AC.inpcrd
    

    以上命令可以生成小分子的top及gro文件。

  5. 合并蛋白和小分子的gro文件,并更改top文件。

完成以上步骤之后,剩下的是标准的gromacs的模拟的过程,这里不再赘述。

你可能感兴趣的:(用Gromacs对蛋白与小分子进行模拟)