Advertisement

使用AMBER跑分子动力学模拟

阅读量:

第一步:分子对接

选择合适的分子对接软件后,请准备好相应的蛋白-小分子复合物模型,并根据需求选择使用MOE、薛定谔平台或是Autodock平台进行配对操作。其中Autodock平台完全免费。

2. 选择蛋白和小分子,PDB,Pubchem下载。

自行搭建对接流程,请选择所需蛋白-小分子构象,并将蛋白与小分子进行分离处理。随后,请将蛋白分别以pdb文件格式存储,并将小分子以mol2文件格式存储。

第二步:对蛋白封端

封端操作采用将蛋白质两端附加特定保护基团的方式实现。详细介绍了利用软件工具 tleap 对蛋白质分子模型进行封端处理的具体步骤。

1. 启动 tleap

首先,启动 tleap

复制代码
    tleap

2. 加载力场和必要的库文件

导入 Amber 力场并引入其他必要的参数文件(例如 TIP3P 水模型的力场文件,请根据具体情况具体分析):

复制代码
 source leaprc.protein.ff14SB   # 或者根据你的蛋白质选择适合的力场

    
 source leaprc.water.tip3p      # 如果你还需要考虑水分子

3. 加载 PDB 文件

加载你的蛋白质的 PDB 文件:

复制代码
    protein = loadpdb "your_protein.pdb"

4. 为 N-端添加 ACE(乙酰基)

你可以通过以下方式为 N 端添加 ACE 基团:

复制代码
    addions protein ACE

5. 为 C-端添加 NME(甲基氨基乙酰基)

为 C 端添加 NME 基团:

复制代码
    addions protein NME

6. 保存修改后的结构

保存修改后的结构文件(比如 pdb 格式):

复制代码
    savepdb protein "protein_with_termini.pdb"

7. 退出 tleap

退出 tleap

复制代码
    quit

第三步:对模拟体系预处理

1. 蛋白预处理

去除非蛋白质原子后,在AmberTools软件中运行pdb4amber脚本即可实现蛋白质的加氢操作。这一过程主要依赖杜克大学Richardson实验室开发的Reduce程序来执行。

复制代码
 pdb4amber -i test.pdb -o rec.pdbpdb -y --reduce

    
 -i:输入蛋白质的pdb格式文件
    
 -y:该参数是指去除所有氢原
    
 --reduce : 运行Reduce来加氢
    
 之所以用了-y和–reduce选项,是因为pdb4amber会检查每个组氨酸(HIE、HIP、HID)的类型,如果用其他软件加氢则不一定是amber所支持的原子类型,所以还是用pdb4amber一劳永逸吧。

基于Antechamber开发的Acpype程序可为小分子生成拓扑参数文件。Acpype支持生成CNS/XPLOR、GROMACS、CHARMM和Amber等MD软件的拓扑参数文件。

复制代码
 acpype -i test.mol2 -a gaff2 -c gas -n 0

    
 -i:输入文件,建议为mol2格式,其他格式将通过openbabel转换
    
 -a:小分子力场参数
    
 -c:电荷类型
    
 -n:电荷数

2.2 小分子-蛋白复合物体系

通过Leap/Tleap程序构建小分子与蛋白质结合体的Amber参数体系,并产出相应的prmtop和inpcrd文件类型

复制代码
    tleap -f tleap.leaprc

前提提示:需要构建好tleap.leaprc文件,文件内容如下

复制代码
 source leaprc.protein.ff14SB #蛋白ff14SB力场

    
 source leaprc.water.tip3p #水的tip3p力场
    
 source leaprc.gaff2 #小分子的gaff2力场
    
 set default pbradii bondi #原子半径
    
 loadamberparams frcmod.ionsjc_tip3p #溶剂的力场参数文件
    
 loadamberparams test.acpype/test_AC.frcmod #修改后的小分子力场参数文件
    
 rec = loadpdb rec.pdb #加载蛋白文件
    
 lig = loadmol2 test.acpype/test_gas_gaff2.mol2 #加载小分子文件
    
 complex = combine{rec,lig} #行程复合体
    
 addions complex Na+ 0 #电荷平衡
    
 addions complex Cl- 0 #电荷平衡
    
 solvateoct complex TIP3PBOX 10 #形成一个TIP3P水模型的盒子,半径是10埃米
    
 saveamberparm complex complex_ions.prmtop complex_ions.inpcrd #保存amber格式的拓扑和坐标文件
    
 quit

3. Amber MD

首先需要各个阶段的参数文件,min1.inmin2.inheat.inpress.ineq.inmd.in

复制代码
 #min.in

    
 &cntrl
    
 imin=1,
    
 maxcyc=10000,
    
 ncyc=5000,
    
 ntb=1,
    
 ntr=1,
    
 restraintmask='@CA,N,C',
    
 restraint_wt=10,
    
 cut=8.0
    
 /
    
 END
复制代码
 #min2.in

    
 &cntrl
    
 imin=1,
    
 maxcyc=10000,
    
 ncyc=5000,
    
 ntb=1,
    
 ntr=1,
    
 restraintmask='@CA,N,C',
    
 restraint_wt=10,
    
 cut=8.0
    
 /
    
 END
复制代码
 #heat.in

    
 explicit solvent initial heating: 50ps
    
 &cntrl
    
 imin=0,
    
 irest=0,
    
 nstlim=25000, dt=0.002,
    
 ntc=2, ntf=2, ntx=1,
    
 cut=8.0, ntb=1,
    
 ntpr=500, ntwx=500,
    
 ntt=3, gamma_ln=2.0,
    
 tempi=0.0, temp0=300.0, ig=-1,
    
 ntr=1,
    
 restraintmask=':1-1104',
    
 restraint_wt=2.0,
    
 iwrap=1
    
 nmropt=1
    
 /
    
 &wt TYPE='TEMP0', ISTEP1=0, ISTEP2=25000,
    
 VALUE1=0.0, VALUE2=300.0, /
    
 &wt TYPE = 'END' /
    
 END
复制代码
 #press.in

    
 explicit solvent initial heating: 50ps
    
 &cntrl
    
 imin=0,
    
 irest=0,
    
 nstlim=25000, dt=0.002,
    
 ntc=2, ntf=2, ntx=1,
    
 cut=8.0, ntb=1,
    
 ntpr=500, ntwx=500,
    
 ntt=3, gamma_ln=2.0,
    
 tempi=0.0, temp0=300.0, ig=-1,
    
 ntr=1,
    
 restraintmask=':1-1104',
    
 restraint_wt=2.0,
    
 iwrap=1
    
 nmropt=1
    
 /
    
 &wt TYPE='TEMP0', ISTEP1=0, ISTEP2=25000,
    
 VALUE1=0.0, VALUE2=300.0, /
    
 &wt TYPE = 'END' /
    
 END
复制代码
 #eq.in

    
 &cntrl
    
 imin=0, irest=1, ntx=5,
    
 nstlim=5000000, dt=0.002,
    
 ntc=2, ntf=2,
    
 cut=10.0, ntb=2, ntp=1, taup=2.0,
    
 ntpr=500, ntwx=500, ntwr=5000,
    
 ntt=3, gamma_ln=2.0,
    
 temp0=300.0,
    
 /
    
 END
复制代码
 #md.in

    
 &cntrl
    
 imin=0, irest=1, ntx=5,
    
 nstlim=5000000, dt=0.002,
    
 ntc=2, ntf=2,
    
 cut=10.0, ntb=2, ntp=1, taup=2.0,
    
 ntpr=500, ntwx=500, ntwr=5000,
    
 ntt=3, gamma_ln=2.0,
    
 temp0=300.0,
    
 /
    
 END

主要的模拟步骤如下脚本所示:

复制代码
  
    
 export CUDA_VISIBLE_DEVICES="0"
    
  
    
 #1. Minimize the system with restraints just on the backbone of the molecule
    
 pmemd.cuda -O -i min1.in -o complex_ions_min1.out -p complex_ions.prmtop -c complex_ions.inpcrd -r complex_ions_min1.rst -ref complex_ions.inpcrd
    
  
    
 #2. Relax the system with no restraints
    
 pmemd.cuda -O -i min2.in -o complex_ions_min2.out -p complex_ions.prmtop -c complex_ions_min1.rst -r complex_ions_min2.rst
    
  
    
 #3. Heat up the system from 100 K under constant volume
    
 pmemd.cuda -O -i heat.in -o complex_ions_heat.out -p complex_ions.prmtop -c complex_ions_min2.rst -r complex_ions_heat.rst -x complex_ions_heat.nc -ref complex_ions_min2.rst
    
  
    
 #4. Relax the system at a constant pressure
    
 pmemd.cuda -O -i press.in -o complex_ions_press.out -p complex_ions.prmtop -c complex_ions_heat.rst -r complex_ions_press.rst -x complex_ions_press.nc -ref complex_ions_min2.rst
    
  
    
 #5. eq, 10ns
    
 pmemd.cuda -O -i eq.in -o complex_ions_eq.out -p complex_ions.prmtop -c complex_ions_press.rst -r complex_ions_eq.rst -x complex_ions_eq.nc
    
  
    
 #6. md, 100ns
    
 pmemd.cuda -O -i md.in -o complex_ions_md.out -p complex_ions.prmtop -c complex_ions_eq.rst -r complex_ions_md.rst -x complex_ions_md.nc

全部评论 (0)

还没有任何评论哟~