Bio.PDB.ic_rebuild 模块
将 XYZ 结构转换为内部坐标,反之亦然,并测试结果。
- Bio.PDB.ic_rebuild.structure_rebuild_test(entity, verbose: bool = False, quick: bool = False) dict
测试从内部坐标重建 PDB 结构。
为实体生成内部坐标并写入内存中的 .pic 文件,然后从 .pic 文件生成 XYZ 坐标,并将生成的实体与原始实体进行比较。
参见
IC_Residue.pic_accuracy
以在遇到坐标略微差异时更改中间 .pic 文件的数值精度。请注意,在默认设置下,氘化的初始结构将无法通过比较,使用替代 IC_Residue.accept_atoms 设置加载的结构也一样。使用 quick=True 以及/或 AtomKey.d2h 和 IC_Residue.accept_atoms 设置的变体。
- 参数:
entity (Entity) – Biopython 结构、模型或链。要测试的结构
verbose (bool) – 默认 False。打印更多消息
quick (bool) – 默认 False。仅检查内部坐标原子数组是否相同
- 返回值:
来自
compare_residues()
的比较字典
- Bio.PDB.ic_rebuild.report_IC(entity: Structure | Model | Chain | Residue, reportDict: dict[str, Any] | None = None, verbose: bool = False) dict[str, Any]
为每个实体级别生成包含 IC 数据元素计数的字典。
- reportDict 条目为
idcode : PDB ID
hdr : PDB 标题行
mdl : 模型
chn : 链
res : 残基对象
res_e : 具有二面角和/或多面角的残基
dih : 二面角
hed : 多面角
- 参数:
entity (Entity) – Biopython PDB 实体对象:S、M、C 或 R
- 引发:
PDBException – 如果实体级别不是 S、M、C 或 R
Exception – 如果实体没有 .level 属性
- 返回值:
包含 IC 数据元素计数的字典
- Bio.PDB.ic_rebuild.IC_duplicate(entity) Structure
使用 IC 数据复制结构实体,不包含原子坐标。
使用
write_PIC()
、read_PIC()
和 StringIO 缓冲区。如果需要,调用Chain.atom_to_internal_coordinates()
。- 参数:
entity (Entity) – Biopython PDB 实体(对于 Atom 将失败)
- 返回值:
Biopython PDBStructure,除了初始坐标外,没有 Atom 对象
- Bio.PDB.ic_rebuild.compare_residues(e0: Structure | Model | Chain, e1: Structure | Model | Chain, verbose: bool = False, quick: bool = False, rtol: float | None = None, atol: float | None = None) dict[str, Any]
比较两个 Biopython PDB 实体的完整 ID 和原子坐标。
跳过 DNA 和 HETATMs。
- 参数:
e0,e1 (Entity) – Biopython PDB 实体对象 (S、M 或 C)。要比较的结构、模型或链
verbose (bool) – 是否打印不匹配信息,默认 False
quick (bool) – 默认 False。仅检查原子数组是否相同,如果不同,则 aCoordMatchCount=0
atol (float rtol,) – 默认 1e-03,1e-03 或四舍五入到 3 位小数。NumPy allclose 参数;默认是将原子坐标四舍五入到 3 位小数并测试是否相等。对于 'quick',将使用上述默认值来比较原子数组
- 返回值字典:
残基、完整 ID 匹配残基、原子、完整 ID 匹配原子和坐标匹配原子的结果计数;报告字符串;错误状态(布尔值)