biosolveit::cli
组件 01 · 对接 Docking · v6.5

FlexX — 蛋白-配体对接

FlexX 是一个超快的"锚点-生长"(anchor-and-grow)对接工具,用增量构建算法把柔性配体放入刚性结合口袋。命令行版可处理无限数量的配体,支持标准、模板与共价三种对接,并能在对接过程中(而非事后过滤)使用药效团约束。

可执行文件
flexx
配体输入
.sdf .mol .mol2(需 3D)
输出
.sdf(含打分)
打分字段
DOCKING_SCORE

01 它能做什么

FlexX 在命令行下的核心能力:

  • 柔性配体对接:把配体灵活地放进目标空腔,口袋残基保持刚性。
  • 模糊模板对接:给定一个模板(如共同骨架),FlexX 把配体的公共部分叠到模板上,再把其余部分长进口袋。
  • 共价对接:自动识别弹头(warhead)并转换为蛋白结合态后对接(支持 36 种常见弹头)。
  • 药效团约束引导:约束在对接过程中起作用,从而加速计算并给出更相关的结果。
  • 可选在对接时枚举立体异构体;处理配体数量不限。
重要
FlexX 本身不含 HYDE 打分。官方强烈建议把对接姿势交给 HYDE 做去溶剂化重打分来改善排序,或载入 SeeSAR 做 HYDE 后处理。

02 前提与授权

你需要:FlexX 程序包、一个命令行环境(Linux/macOS 的 shell/terminal,或 Windows 的 cmd.exe / PowerShell),以及一个有效许可证。SeeSAR 许可证会被 FlexX 与 HYDE 视为有效。

放置测试许可证

在线申请的"测试许可证"可直接放到可执行文件旁边。macOS 上可执行文件通常在 /Applications/FlexX.app/Contents/MacOS/FlexX;在 Finder 里右键 FlexX.app → "显示包内容"即可进入。首次运行需在 Finder 中对 FlexX.app 右键打开并确认一次。

检查许可证状态

查看 license 信息 / 排错
./flexx --license-info

输出底部会给出一个申请许可证的链接;如果 FlexX 启动异常,这个信息也有助于排查。

03 Jump Start:一次经典对接

最少需要:一个含 3D 坐标配体的输入文件,加上结合位点定义。定义位点有两种方式。

方式 A — 蛋白 + 参考配体

提供蛋白(.pdb)和一个位于口袋中的参考配体(reference ligand)。参考配体用于界定结合位点。

flexx — 蛋白 + 参考配体
./flexx -i My3DLibrary.sdf -p MyProtein.pdb -r My3DReferenceLigand.sdf \
      -o MyDockingOutput.sdf

方式 B — 对接定义文件

从 SeeSAR 的 Docking Mode 导出 .flexx 定义文件,它已包含蛋白、预定义结合位点与药效团约束。

flexx — 定义文件
./flexx -i My3DLibrary.sdf --docking-definition MyDefinitionFile.flexx \
      -o MyDockingOutput.sdf

默认每个配体输出 10 个姿势,每个姿势的打分写在 SD 字段 <BIOSOLVEIT.DOCKING_SCORE> 中。

真实例子
用生物素-链霉亲和素复合物练手:从 PDB 下载 1stp 与配体 BTN(下载带 instance 坐标的文件),运行 ./flexx -i MyLigands.sdf -p 1stp.pdb -r 1stp_B_BTN.sdf -o out.sdf

04 程序选项(Program Options)

-i / --input

配体输入文件(.sdf .mol .mol2)。必须含 3D 坐标,否则该分子被跳过。大于 5 万分子的库建议用 Conformator 生成 3D。

-o / --output

输出文件,仅支持 .sdf。包含所有成功对接的分子及其姿势。

-p / --protein

蛋白文件(.pdb .ent .cif .mcif .mmcif)。也支持 DNA/RNA 靶标。使用 -p 时必须同时给 -r;不能与 --docking-definition 同用。

-r / --refligand

一个或多个参考配体(含 3D 坐标)。FlexX 自动把参考配体每个原子 6.5 Å 球内含重原子的残基纳入口袋。若参考配体太小(如片段),可在 SeeSAR 中加长它来扩大口袋。多个参考配体须位于部分重叠的子口袋。

--docking-definition

用从 SeeSAR Docking Mode 导出的 .flexx 文件对接,内含蛋白、结合位点和药效团约束。不能与 -p/-r 同用。

-d / --docking-type =0

对接类型:0 标准对接(默认)、1 模板对接(须配合 --template)、2 共价对接(输入须含弹头或恰好一个 linker 原子)。

-t / --template

模板配体文件。基于模板与待对接分子的最大公共子结构(MCS)生成多个叠合。最多 10 个模板;库分子须与模板共享至少 5 个重原子,否则被跳过。多模板时每个模板各返回 --max-nof-conf 个结果。

05 配置选项(Configuration)

选项默认说明
--allowed-6ring-confs0六元脂肪环允许的构象:0 仅椅式;1 椅式+扭船式;2 椅式+扭船式+船式。
--clash-tolerance0受体-配体重叠容忍度:0 标准 / 1 中 / 2 高。口袋很窄时可调高。
--keep-input-sd-tags把输入 SD 标签带到每个输出姿势上。需 SD 输入。
--max-nof-conf10每个配体的最大姿势数。大库虚筛建议降到 1–2;重对接/小库可升到 100 以便 HYDE 重打分找到近天然构象。
--rigid-attachment-point共价对接时让蛋白侧附着点保持刚性(需 -d 2)。用于 MD 快照或重对接晶体配体。
--stereo-mode0对接时翻转立体中心:0 不翻 / 1 翻 R/S / 2 翻 E/Z / 3 两者都翻。注意多手性中心会组合爆炸。
注意
若提供了 .flexx 定义文件,上述参数会从文件中读取作为默认,但仍可用命令行选项覆盖。开启 E/Z 翻转(模式 2、3)时算法会尝试把顺式酰胺翻成反式(反之不会)。

06 三种对接类型详解

标准对接(-d 0,默认)

配体柔性、口袋刚性,通过增量构建得到姿势。只需配体 + 位点定义即可。

模板对接(-d 1)

先把配体的公共部分叠到已知构象的模板配体上,再保留该部分构象生成姿势。适合:已知结合模式的同系列化合物高速对接、从数据库快速挖掘模板样结构、片段类配体的"伪生长"。

模板对接(复用 1stp 的生物素同时作参考与模板)
./flexx -i MyLigands.sdf -p 1stp.pdb -r 1stp_B_BTN.sdf \
      -t 1stp_B_BTN.sdf -d 1 -o MyDockingOutput.sdf

共价对接(-d 2)

把带亲电弹头的配体共价连接到口袋中合适的亲核残基(通常是半胱氨酸或丝氨酸)。FlexX 自动识别弹头并转换到蛋白结合态。推荐用 SeeSAR 导出 .flexx 定义文件(载入含共价配体的蛋白后,结合位点残基会自动定为附着点)。

共价对接(Rhodesain 2p7u)
# 必须指定 -d 2,否则配体不会被转换、会按非共价对接
./flexx -i MyWarheads.sdf --docking-definition 2p7u.flexx \
      -d 2 -o MyDockingOutput.sdf

若弹头不在自动支持的 36 种之内,需手动给配体添加恰好一个 linker 原子(可在 SeeSAR 的 Molecule Editor 中,或对大批量用 CoLibri 的 ReactionSynthesizer 做转换)。

07 用 HYDE 重打分

无论哪种对接,都建议用 HYDE 去溶剂化打分优化并重排姿势。两条路:载入 SeeSAR(可视化逐原子贡献),或用独立的 HYDE 命令行工具。把 FlexX 的输出 .sdf 直接喂给 HYDE 即可。

08 自动共价对接支持的弹头

本节列出 FlexX 能自动识别的全部弹头(warhead)。当 --docking-type=2 时,这些弹头会被自动转换为蛋白结合态(protein-bound state),并对接到合适的蛋白残基上。共 36 种弹头,按反应类型分为 8 组。

共价对接还会感知转换过程中新生成的立体中心(见上一节 Figure 4):在附着点因与蛋白残基反应而新生成的立体中心总会被枚举(因此可能得到两个异构体);而在附着点相邻位置形成的新立体中心不显式枚举,但在对接时总会被翻转(两种变体都参与姿势生成),与 --stereo-mode 的设置无关。

按反应类型分组的弹头索引

反应类型弹头(warhead)
加成反应 AdditionAldehyde(醛)、Alkyne(炔)、Bicyclobutane(双环丁烷)、Boron(硼)、Cyanamide(氰胺)、Isothiocyanate(异硫氰酸酯)、Ketoalkyne(炔酮)、Ketoamide(酮酰胺)、Ketone(酮)、Nitrile(腈)、Propagylamine(炔丙胺)
芳香取代 Aromatic substitutionm-/o-/p-HalogenHeterocycle(间/邻/对-卤代杂环)、m-/o-/p-Nitroarene(间/邻/对-硝基芳烃)
缩合反应 CondensationAcylimidazole(酰基咪唑)、Acylpyrazole(酰基吡唑)、Aldehyde(醛)、Azide(叠氮)、Carbamate(氨基甲酸酯)、Ketoamide(酮酰胺)、Ketone(酮)、Nitroarene(硝基芳烃)、Sulfonylfluoride(磺酰氟)、Urea(脲)
二硫键形成 Disulfide formationThiole(硫醇)、Disulfide(二硫化物)
加成-消除 Addition-EliminationCyclicBoron(环硼酸酯)
迈克尔加成 Michael AdditionAcrylonitrile(丙烯腈)、Maleimide(马来酰亚胺)、Nitroalkene(硝基烯)、Vinylamide(乙烯基酰胺)、Vinylester(乙烯基酯)、Vinylketone(乙烯基酮)、Vinylsulfone(乙烯基砜)
开环 Ring OpeningAziridine(氮丙啶)、Diazirine(双吖丙啶)、Epoxide(环氧)、Oxetane(氧杂环丁烷)、Propriolactame(β-内酰胺)
取代 SubstitutionHaloketone(卤代酮)
不在列表里的弹头怎么办
若你的弹头不在上述 36 种之内,需手动把配体转换成蛋白结合态,使转换后的配体恰好含一个 linker 原子。少量化合物可在 SeeSAR 的 Molecule Editor Mode 手动加 linker;大批量则建议用 CoLibri 的 ReactionSynthesizer 做转换(见 CoLibri 页第 03 节)。

弹头结构对照表(官方原图)

下面是官方手册中每个弹头的结构与其蛋白结合态对照表,按反应类型分组。点开查看:

加成反应 Addition reaction(11 种)
加成反应弹头结构表
Addition reaction — warhead name / structure / protein-bound state
芳香取代 Aromatic substitution(6 种)
芳香取代弹头结构表
Aromatic substitution
缩合反应 Condensation reaction(10 种)
缩合反应弹头结构表
Condensation reaction
二硫键形成 / 加成-消除 Disulfide formation & Addition-Elimination(3 种)
二硫键形成与加成消除弹头结构表
Disulfide formation · Addition–Elimination
迈克尔加成 Michael Addition(7 种)
迈克尔加成弹头结构表
Michael Addition
开环 / 取代 Ring Opening & Substitution(6 种)
开环与取代弹头结构表
Ring Opening · Substitution