大环(macrocycle)通常指含 12 元及以上环的化合物。它们在类药空间中占据特殊位置:分子量常超过 Ro5 上限,却能保持良好的口服吸收。理解这个「例外」,对设计难成药靶点的分子很有启发。
大环的两个核心优势
- 构象预组织:环化本身限制了构象自由度。相比同样大小的线性分子,大环结合时损失的构象熵少得多——这直接转化为更高的亲和力。
- 更大的接触面积:能覆盖平坦的 PPI 界面,而常规小分子难以做到。同时保持了足够的构象柔性来适应界面。
- 介于两者之间的性质:比线性肽稳定(抗蛋白酶),比蛋白小得多。
为什么能突破 Ro5
与降解剂类似(见 362《降解剂成药性》),大环靠分子伞效应实现通透:
- 水相中:伸展构象,极性基团朝外与水形成氢键,保持溶解度;
- 膜环境中:塌缩折叠,形成分子内氢键,把极性基团藏进内部,疏水面朝外,从而穿过膜;
- 环化本身促进了这种塌缩——环的几何约束让供受体更容易配对。
环孢素是最经典的案例:MW 1202、11 个氨基酸的环肽,含多个 N-甲基化酰胺,口服生物利用度可观。它的分子内氢键网络在膜环境中形成,是分子伞行为的教科书例子。
影响通透性的设计因素
| 因素 | 影响 |
|---|---|
| N-甲基化 | 减少 HBD + 促进构象塌缩,最有效的手段 |
| 分子内氢键能力 | 决定能否塌缩 |
| 暴露的 HBD 数量 | 越少越好(比 MW 更重要) |
| 环大小 | 影响柔性与塌缩能力 |
| 侧链疏水性 | 塌缩后需要疏水外表面 |
| 构象刚性 | 过刚则无法塌缩,过柔则熵代价大 |
计算处理的特殊要求
大环的构象生成是常规工具的弱项,必须专门处理:
from rdkit import Chem
from rdkit.Chem import AllChem
import numpy as np
def generate_macrocycle_conformers(smiles, n_confs=500, seed=0xf00d):
"""大环构象生成 —— 必须启用大环扭转"""
mol = Chem.AddHs(Chem.MolFromSmiles(smiles))
params = AllChem.ETKDGv3()
params.randomSeed = seed
params.useMacrocycleTorsions = True # 关键:大环专用扭转知识
params.useSmallRingTorsions = True
params.pruneRmsThresh = 1.0
params.numThreads = 0
params.maxIterations = 2000 # 大环需要更多迭代
cids = AllChem.EmbedMultipleConfs(mol, numConfs=n_confs, params=params)
if not cids:
# 嵌入失败时的后备方案
params.useRandomCoords = True
cids = AllChem.EmbedMultipleConfs(mol, numConfs=n_confs, params=params)
res = AllChem.MMFFOptimizeMoleculeConfs(mol, numThreads=0, maxIters=5000)
return mol, cids, res
# 常见问题:
# 1) 嵌入失败率高 —— 大环的距离几何约束更难满足
# 2) 构象覆盖不足 —— 需要更多构象数
# 3) 高能构象 —— 需要充分的力场优化
# 4) 环翻转(ring flipping)—— 不同的环构象可能都重要
评估塌缩能力
def count_intramolecular_hbonds(mol, conf_id, max_dist=3.5):
"""统计构象中的分子内氢键 —— 塌缩能力的关键指标"""
conf = mol.GetConformer(conf_id)
donors, acceptors = [], []
for a in mol.GetAtoms():
if a.GetSymbol() in ("N", "O"):
if a.GetTotalNumHs() > 0:
donors.append(a.GetIdx())
acceptors.append(a.GetIdx())
count = 0
for d in donors:
for acc in acceptors:
if d == acc or mol.GetBondBetweenAtoms(d, acc):
continue
# 排除通过 2~3 个键相连的(不算真正的分子内氢键)
path = Chem.GetShortestPath(mol, d, acc)
if len(path) < 5:
continue
dist = np.linalg.norm(
np.array(conf.GetAtomPosition(d)) -
np.array(conf.GetAtomPosition(acc)))
if dist < max_dist:
count += 1
return count
# 分析构象系综
mol, cids, _ = generate_macrocycle_conformers(smiles)
hb_counts = [count_intramolecular_hbonds(mol, cid) for cid in cids]
print(f"分子内氢键: 中位 {np.median(hb_counts):.1f}, 最多 {max(hb_counts)}")
print(f"能形成 ≥3 个分子内氢键的构象比例: "
f"{np.mean([c >= 3 for c in hb_counts]):.1%}")
# 该比例高 → 有塌缩能力,通透性可能优于静态性质的预期
大环的合成来源
| 来源 | 特点 |
|---|---|
| 天然产物 | 许多大环药物源自天然产物(大环内酯、环肽等) |
| 大环化线性前体 | 头尾环化、侧链环化 |
| 关环复分解(RCM) | 最常用的合成大环方法之一 |
| 点击化学 | 叠氮-炔环加成,条件温和 |
| DNA 编码库 | 可构建超大规模大环库 |
| mRNA 展示 | 环肽的超大文库筛选 |
合成难度是大环的主要限制:关环反应的产率常受构象影响(成环 vs 聚合的竞争),且难以预测。这是设计时必须与合成化学家紧密配合的地方。
适用的靶点类型
- PPI 界面:面积大、相对平坦,大环的接触面积合适(见 382《PPI 抑制剂》);
- 浅口袋:常规小分子结合太弱,大环能覆盖更大面积;
- 需要高选择性:更多接触点带来更好的区分度;
- 转运体与通道:某些体系适合大环。
关键要点
- 大环的核心优势是构象预组织(减少结合熵损失)+ 更大接触面积;
- 靠分子伞效应突破 Ro5,N-甲基化是最有效的通透性优化手段;
- 构象生成必须启用
useMacrocycleTorsions,常规参数会失败或覆盖不足; - 合成的关环步骤难度大且产率难预测,设计时需与合成密切配合。
延伸资源
- 多肽:372《多肽药物设计》、374《多肽通透性与口服化》;降解剂性质:362《降解剂成药性》;
- PPI:382《PPI 抑制剂》;构象生成:279《OpenEye Omega》。