6.17. PQR文件格式 MDAnalysis.coordinates.PQR
从原子中读出带电荷的原子 PQR 文件(由编写者 PDB2PQR) 。以下内容摘自对 PQR 使用的格式 APBS:
MDAnalysis 读取格式非常松散的PQR文件:所有字段都是 whitespace-delimited 而不是由 PDB 格式化。这种更自由的格式允许大于/小于±999?的坐标。
MDAnalysis使用以下格式从PQR文件中逐行读取数据:
recordName serial atomName residueName chainID residueNumber X Y Z charge radius
如果此操作失败,则假定 链ID 被省略,较短的格式为::
recordName serial atomName residueName residueNumber X Y Z charge radius
任何其他事情都会引发 ValueError
。
空格是这种格式最重要的功能:字段 must 至少由一个空格或制表符分隔。这些字段包括:
- 记录名
指定PQR条目类型的字符串,应为ATOM或HETATM。
- 串行
提供原子索引的整数(但请注意,MDAnalysis会对原子进行重新编号,因此不能依赖 串行 )
- 原子名称
提供原子名称的字符串。
- 剩余名称
提供残数名称的字符串。
- 链ID
提供原子链ID的可选字符串。
- 剩余数量
提供余数索引的整数。
- X、Y、Z
提供原子配位的三个浮子。
- 装药
提供原子电荷(以电子形式)的浮子。
- 半径
一个浮点,它提供原子半径(以?为单位)。
显然,这种格式可能会与 PDB 由于使用了空白而不是特定的列宽和对齐。当使用较大的坐标值时,此偏差可能会特别明显。
输出应该如下所示(尽管唯一实际的需求是 空格 之间的间隔 all 条目)。ChainID是可选的,可以省略::
ATOM 1 N MET 1 -11.921 26.307 10.410 -0.3000 1.8500
ATOM 36 NH1 ARG 2 -6.545 25.499 3.854 -0.8000 1.8500
ATOM 37 HH11 ARG 2 -6.042 25.480 4.723 0.4600 0.2245
警告
田 must be white-space separated 或者数据读取不正确。PDB格式的文件有 not 保证用空格分隔,因此在使用简单脚本将PDB文件快速转换为PQR文件时应格外小心。
例如,使用创建的PQR文件 PDB2PQR 以及 --whitespace 选项保证符合上述格式::
pdb2pqr --ff=charmm --whitespace 4ake.pdb 4ake.pqr
备注
PQR格式不提供提供方框信息的方法。在所有情况下, dimensions 属性将设置为 None 。
- class MDAnalysis.coordinates.PQR.PQRReader(filename, convert_units=True, n_atoms=None, **kwargs)[源代码]
阅读一篇 PQR 文件保存到MDAnalysis中。
在 0.11.0 版本发生变更: 帧现在基于0而不是基于1
- units = {'length': 'Angstrom', 'time': None}
带有以下单位的词典 time 和 长度 (及 速度 , 力 ..用于支持它的格式)
- class MDAnalysis.coordinates.PQR.PQRWriter(filename, convert_units=True, **kwargs)[源代码]
以空格分隔的PQR格式编写单个坐标框架。
费用(“Q”)取自
MDAnalysis.core.groups.Atom.charge
属性,而半径是从MDAnalysis.core.groups.Atom.radius
属性。如果segid是‘system’,则它将被设置为空字符串。否则,将使用第一个字母作为链ID。
对于原子,序列号始终从1开始并按顺序递增。
输出格式类似于
pdb2pqr --whitespace
。在 0.9.0 版本加入.
在 2.6.0 版本发生变更: 文件现在已写入 wt 模式和保留扩展名,允许以压缩格式写入文件
设置完全空格分隔的PQRWriter。
- 参数:
- units = {'length': 'Angstrom', 'time': None}
带有以下单位的词典 time 和 长度 (及 速度 , 力 ..用于支持它的格式)