自然界中往往存在一些对PH值敏感的蛋白,当我们想要探究这些蛋白在不同PH条件下构象变化时自然离不开MD的辅助。遗憾的是Gromacs暂不支持恒定PH条件下的模拟,因为这涉及到了蛋白表面残基质子化状态需要时刻改变。一种折衷的方法是:用
propka
等预测工具预测蛋白极性/可质子化残基的pka值(因为实际蛋白表面的pka值可能受到邻近残基的影响而发生偏移),然后根据想要模拟的PH环境,自主确定各个可质子化残基质子化状态(比如某个残基pKa=4,pH环境为7,那么这个残基自然是处于离去质子的解离状态)。然后修改对应pdb文件中的残基名,比如脱去质子的CYS改名为CYM(这个问题文末有提及)。这种方法存在的最大缺点在于:质子化状态一但设定好就会一成不变,这和实际情况显然是不符的。因此我们今天不介绍这种方法,而是介绍在Amber中的实现方法。
1. 准备结构
有这样一张表(下图所示),罗列了常见质子化残基,包括
ASP、GLU、HIS、CYS、LYS、TYR
. 第三列数据对应它们各自的pKa值。第二列对应它们在恒定PH环境模拟时Amber识别的名字,如果想让Amber在模拟时对某个残基上面的质子化状态"多多关照",总得披上"马甲"好让Amber认识它吧。比如我想要模拟PH=7的环境,查看下表可以看出ASP、GLU、HIS
在此条件下质子会发生解离,那么就把pdb文件中它们的名称改成对应的"马甲"。ASP
→AS4
、GLU
→GL4
、HIS
→HIP
本次就以11个氨基酸长度的小肽test.pdb
在pH为7的环境下模拟为例:
- 第一步,修改pdb文件
首先修改需要更换“马甲”的残基名,这里我们做了
ASP
→AS4
、GLU
→GL4
修改,由于没有HIS残基,所以就不做考虑。此外该分子种有两个距离较靠近的CYS,我们想让他们之间成二硫键,所以修改做出修改:CYS
→CYX
。修改后的文件名为test_fix.pdb
#用pdb4amber不加氢,补全缺失原子,连接二硫键
pdb4amber -i test_fix.pdb --nohyd -o test_fix2.pdb
#不知道什么原因pdb4amber除氢总是失败,只能用下条