第2章 PDB文件结构解析:标题记录、原子坐标、连接性、结晶参数

好,我们直接进入PDB文件的内核。你拿到一个.pdb文件,第一反应是什么?我当年第一次打开PDB文件,满屏的字符看得头大。其实它没那么复杂,本质上就是个有严格格式的纯文本。弄懂它的骨架,后面所有预处理工作才有意义。

2.1 文件的整体骨架

一个标准的PDB文件,记录类型按行区分。每行的前6个字符就是记录名,这决定了这行数据的含义。我个人习惯把这些记录分成三大块:头信息、坐标主体、以及补充描述。下面这张图可以帮你建立直观印象。

PDB文件四层核心结构 标题记录 HEADER · TITLE · COMPND SOURCE · KEYWDS · EXPDTA AUTHOR · REVDAT · JRNL 结晶参数 CRYST1 · SCALE1/2/3 MTRIXn · ORIGXn 晶胞参数a,b,c,α,β,γ 原子坐标 ATOM · HETATM · TER ANISOU · SIGATM x, y, z · 占有率 · 温度因子 连接性 CONECT · LINK SSBOND · HYDBND SLTBRG · CISPEP 🔗 数据流向: 标题记录提供实验背景 → 结晶参数定义晶体学空间 → 原子坐标给出三维位置 → 连接性重建化学键拓扑。 元数据层 (约70行) 晶体学层 结构数据层 (核心) 拓扑层

说白了,文件内容你可以理解为「谁做的实验 → 晶体什么样 → 原子怎么放 → 谁和谁连」。预处理的时候,这四块各有各的坑。

2.2 标题记录

标题记录都在文件最前面。它们不包含三维坐标,但提供了关键上下文。读取的时候,我个人习惯至少检查下面这几个:

记录名作用典型内容
HEADER分子类型、沉积日期、PDB IDPROTEIN, 15-JUL-24, 8XYZ
TITLE结构标题CRYSTAL STRUCTURE OF HUMAN ...
COMPND分子组成(链、亚基、配体)MOLECULE: HEMOGLOBIN; CHAIN: A, B
EXPDTA实验方法X-RAY DIFFRACTION / SOLUTION NMR
KEYWDS关键词HYDROLASE, ANTIBIOTIC RESISTANCE
我的一个习惯: 先扫一下EXPDTA。如果是NMR结构,后面通常是20-50个模型(MODEL记录)。我当年第一次处理NMR文件,没注意到多模型,结果算距离的时候把所有构象混在一起,算出来的全是垃圾值。你想想看,原子坐标混了几十套,那还能对吗?

2.3 原子坐标——文件的核心

原子坐标记录是PDB的身板骨。格式死板,但很规整。先看ATOM和HETATM的区别:

  • ATOM:标准氨基酸/核苷酸中的原子。
  • HETATM:非标准残基、配体、水分子、金属离子。
  • TER:链终止标记。

每个原子行占80列,列位置是固定的。看一个标准例子:

ATOM      1  N   ALA A   1       8.361  14.950  18.410  1.00 42.33           N
ATOM      2  CA  ALA A   1       9.468  15.822  19.001  1.00 38.28           C
ATOM      3  C   ALA A   1       9.850  15.266  20.353  1.00 35.86           C
HETATM  180  O   HOH A 301       6.542  17.384  12.656  1.00 23.45           O

列位对应关系:

列范围字段说明
1-6记录名右对齐,ATOM或HETATM
7-11原子序号整数,不要依赖它连续
13-16原子名称Ca是CA,Cα是CA
18-20残基名ALA, HEM, HOH
22链标识符空格或字母
23-26残基序号整数,可能会有插入码
31-38x坐标Å,实数,3位小数
39-46y坐标Å,实数,3位小数
47-54z坐标Å,实数,3位小数
55-60占有率0.00~1.00
61-66温度因子B因子,Ų
77-78元素符号右对齐,如 N, CA, FE
我曾经踩过的一个坑: 有些老旧PDB文件(93年以前的),原子名称的列对齐和现在不完全一致。早期的Cα写成"CA "(后面有空格),现在规范是" CA "。如果你用固定列截取,而不做trim或stripping,极有可能读出来是"CA "和" CA ",同一个原子在对齐时会变成两个不同的键。我当年写一个小工具时,就因为这个bug排查了整整一下午。

2.4 连接性——谁和谁通过化学键相连

连接性记录通常是CONECT。它指示原子间的成键关系,对重建完整分子结构非常关键。

CONECT 1179 1180 1181 1182
CONECT 1180 1179 1183
CONECT 1181 1179 1184 1185 1186 1187

格式很简单:CONECT后面跟原子序号,第一个是中心原子,后面列出相连的原子序号。注意几点:

  • 不是所有PDB文件都有完整的CONECT。
  • 某些数据库(如X-ray主流解析软件)可能不生成配体的CONECT。
  • SSBOND(二硫键)、LINK(残基间连接)提供更特殊成键信息。
我的经验: 大部分BioPython或PyMOL读取器会自动根据标准残基拓扑推断键,不依赖CONECT。但如果你做配体、金属配合、或者非标准残基的处理,一定手动检查CONECT。我曾经处理一个含铁离子的结构,CONECT里铁与四个氮的键被漏掉了。如果你只靠自动推断,那个铁原子就是孤立的,电荷和几何全都不对。

2.5 结晶参数——对称性和晶胞

CRYST1记录定义了晶体的晶胞参数和空间群。对于X-ray结构,这部分不仅存在,而且对后续建模非常关键。

CRYST1   64.920   64.920  115.030  90.00  90.00 120.00 P 32 2 1        6

字段含义:

列范围字段示例
7-15a (Å)64.920
16-24b (Å)64.920
25-33c (Å)115.030
34-40α (°)90.00
41-47β (°)90.00
48-54γ (°)120.00
55-66空间群P 32 2 1

你以为这就完了?还有SCALE和MTRIX记录。SCALE把非对称单元坐标转成正交坐标。MTRIX描述NMR模型中不同构象间的旋转变换。我见过不少初学者直接忽略这些,结果做一些晶体对称相关的计算时,原子坐标怎么都对不上。

一句话总结: PDB文件不是松散的信息堆。标题记录让你知道这是谁做的什么结构,结晶参数定义了晶体的数学规则,原子坐标给出三维位置,连接性重建了化学键网络。预处理的时候,你每一步都得确认这四块数据是完整的、可解析的。跳过任何一个环节,后面都有可能跑不通。