MD-钙调素中钙离子的替换和保存

本文探讨了在进行钙调素蛋白动力学模拟时遇到的问题,即修改pdb文件中钙离子名称后,在VMD中显示的位置发生变化。通过对比不同pdb文件发现,确保蛋白残基链与杂原子链对齐是关键。

今天在实验钙调素蛋白的动力学模拟时遇到一个问题:在pdb文件中修改钙离子后,用VMD打开后,钙离子位置发生变化?

在pdb中钙离子的残基名为CA,然而在力场gromos54a7文件夹下rtp中钙离子残基名为CA2+,所以要做把CA替换为CA2+

PDBID:2BBM

# 2BBM 未修改
ATOM   2700 2HD2 LEU B  26      17.951 -18.980 -17.260  1.00  7.95           H  
ATOM   2701 3HD2 LEU B  26      17.818 -20.520 -16.416  1.00  7.62           H  
TER    2702      LEU B  26 
HETATM 2703 CA    CA A 181      11.240   1.243  10.109  1.00  1.14          CA2+
HETATM 2704 CA    CA A 182      19.123   4.066   0.604  1.00  0.99          CA2+
HETATM 2705 CA    CA A 183     -15.000 -10.457  -0.757  1.00  0.94          CA2+
HETATM 2706 CA    CA A 184     -21.362   0.710  -5.410  1.00  0.93          CA2+
TER    2707       CA A 184 
# 2BBM-1.pdb 修改1
ATOM   2700 2HD2 LEU B  26      17.951 -18.980 -17.260  1.00  7.95           H  
ATOM   2701 3HD2 LEU B  26      17.818 -20.520 -16.416  1.00  7.62           H  
TER    2702      LEU B  26 
HETATM 2703 CA   CA2+ A 181      11.240   1.243  10.109  1.00  1.14          CA2+
HETATM 2704 CA   CA2+ A 182      19.123   4.066   0.604  1.00  0.99          CA2+
HETATM 2705 CA   CA2+ A 183     -15.000 -10.457  -0.757  1.00  0.94          CA2+
HETATM 2706 CA   CA2+ A 184     -21.362   0.710  -5.410  1.00  0.93          CA2+
TER    2707       CA A 184 
# 2BBM-2.pdb 修改2
ATOM   2700 2HD2 LEU B  26      17.951 -18.980 -17.260  1.00  7.95           H  
ATOM   2701 3HD2 LEU B  26      17.818 -20.520 -16.416  1.00  7.62           H  
TER    2702      LEU B  26 
HETATM 2703 CA   CA2+A 181      11.240   1.243  10.109  1.00  1.14          CA2+
HETATM 2704 CA   CA2+A 182      19.123   4.066   0.604  1.00  0.99          CA2+
HETATM 2705 CA   CA2+A 183     -15.000 -10.457  -0.757  1.00  0.94          CA2+
HETATM 2706 CA   CA2+A 184     -21.362   0.710  -5.410  1.00  0.93          CA2+
TER    2707       CA A 184 

在这里插入图片描述
钙离子以球状表示,蓝色表示2BBM-2.pdb,红色表示2BBM-1.pdb,经过比对,2BBM-2.pdb与2BBM.pdb完全重合,钙离子位置没有偏差。
2BBM-1.pdb和2BBM-2.pdb相比:A链和B链没有对齐

又测试了3CLN,修改pdb文件如下所示:

# 3CLN 未修改
ATOM   1125  O   ALA A 147      -1.938  22.966   5.190  1.00 63.20           O  
ATOM   1126  CB  ALA A 147      -1.738  26.270   6.293  1.00 63.07           C  
TER    1127      ALA A 147 
HETATM 1128 CA    CA A 149     -13.638  53.352  31.500  1.00 12.29          CA2+
HETATM 1129 CA    CA A 150     -17.797  50.156  20.859  1.00 15.64          CA2+
HETATM 1130 CA    CA A 151      15.035  17.711  17.954  1.00 28.17          CA2+
HETATM 1131 CA    CA A 152      13.784  23.887   8.345  1.00 29.20          CA2+
TER    1132       CA A 152 
# 3CLN-1 修改1
ATOM   1125  O   ALA A 147      -1.938  22.966   5.190  1.00 63.20           O  
ATOM   1126  CB  ALA A 147      -1.738  26.270   6.293  1.00 63.07           C  
TER    1127      ALA A 147 
HETATM 1128 CA   CA2+ A 149     -13.638  53.352  31.500  1.00 12.29          CA
HETATM 1129 CA   CA2+ A 150     -17.797  50.156  20.859  1.00 15.64          CA
HETATM 1130 CA   CA2+ A 151      15.035  17.711  17.954  1.00 28.17          CA
HETATM 1131 CA   CA2+ A 152      13.784  23.887   8.345  1.00 29.20          CA
TER    1132      CA A 152 
# 3CLN-2 修改2
ATOM   1125  O   ALA A 147      -1.938  22.966   5.190  1.00 63.20           O  
ATOM   1126  CB  ALA A 147      -1.738  26.270   6.293  1.00 63.07           C   
HETATM 1127 CA   CA2+A 149     -13.638  53.352  31.500  1.00 12.29           CA2+
HETATM 1128 CA   CA2+A 150     -17.797  50.156  20.859  1.00 15.64           CA2+
HETATM 1129 CA   CA2+A 151      15.035  17.711  17.954  1.00 28.17           CA2+
HETATM 1130 CA   CA2+A 152      13.784  23.887   8.345  1.00 29.20           CA2+
TER    1131      CA  A 152 

得到的结果:
在这里插入图片描述
蛋白残基链和杂原子链在pdb文件中要对齐,才不会出现钙离子位置发生偏差。在做模拟时,要比对原始文件和转换文件中结构的差别,别一开始就错了。

在C语言里,位左对齐右对齐一般在格式化输出时会用到,主要用于控制数据在输出时的位置。以下是相关介绍: ### 整型数据的左对齐右对齐 通过`printf`函数实现整型数据的左对齐右对齐右对齐是默认方式,在格式说明符`%`和`d`之间添加数字来规定输出宽度,若数字位数小于规定宽度,会在左边补空格;左对齐则需在数字前加`-`号,若数字位数小于规定宽度,会在右边补空格。 示例代码如下: ```c #include <stdio.h> int main() { // 右对齐。数字宽度为10,若不足10,在左边补足空格 printf("%10d\n", 1234); // 左对齐。数字宽度为10,若不足10,在右边补足空格 printf("%-10d\n", 1234); return 0; } ``` ### 不同输出长度的情况 当规定的输出宽度和数字实际位数不同时,有不同的处理方式。若规定宽度小于数字实际位数,会完整输出数字;若规定宽度大于数字实际位数,右对齐在左边补空格,左对齐在右边补空格。 示例代码如下: ```c #include <stdio.h> int main() { // -5是左对齐,输出长度为5。5是右对齐,输出长度为5 printf("%-5d %5d\n", 455, 455); printf("%-5d %5d\n", -123, -123); // 规定宽度小于实际位数,完整输出数字 printf("%-5d %5d\n", 987654, 987654); return 0; } ``` ### 其他数据类型的对齐 除整型外,其他数据类型也能实现左对齐右对齐。例如浮点数(`%f`)、字符串(`%s`)等,方法和整型一致。 示例代码如下: ```c #include <stdio.h> int main() { // 右对齐浮点数,宽度为10 printf("%10f\n", 3.14); // 左对齐浮点数,宽度为10 printf("%-10f\n", 3.14); // 右对齐字符串,宽度为10 printf("%10s\n", "hello"); // 左对齐字符串,宽度为10 printf("%-10s\n", "hello"); return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值