rdkit&python | 化学反应中心提取模板

  1. 将反应SMILES加载到RDKit中,作为代表反应物和产物的原子映射分子对象。
  2. 根据原子匹配编号,确定哪些原子在原子图之间发生了变化通过检查它们的(a)SMARTS符号,(b)原子序数,(c) 氢的总数,(d)电荷,(e)degree,(f)自由基电子数量,以及(g)bond-neighbor pairs的原子的原子序数和原子匹配编号。任何改变的原子都是“反应中心”的一部分,必须包含在最终的反应模板。
  3. 为“反应中心”中的每个原子生成SMARTS标签。这个默认情况是使用SMILES片段,因为SMILES片段可以用作SMARTS模式(尽管它们仅与确切的片段匹配)。调整了SMILES片段使氢的数量和电荷明确。例如,没有氢的四元碳可以具有SMILES表示[C:1],但SMARTS[C:1]将匹配任何脂肪族碳与任何数量的氢。我们改为用**[C;H0;+0:1]**替换此符号,以确保匹配碳原子具有正确数量的氢原子(0)。
  4. 检查反应物分子中紧邻的每个原子’反应中心’。如果该原子是匹配上的的,那么它必须出现在产物中(也就是说, 它不是一个leaving group)。这些原子完全泛化到SMARTS通配符来匹配任何重原子: * 。保留了原子匹配编号,因此,例如,[CH:2]SMARTS片段将被泛化到[*:2]。任何反应物的原子匹配编号在这个步骤中必须加到产物中去。如果邻居原子不是匹配上的的,则它是leaving group的一部分。这些原子基于它们的原子序数和芳香性而被概括。脂肪族碳都转换成相应的SMARTS片段 C,芳香碳都是转换为SMARTS片段 c,杂原子转换为SMARTS片段 #AN,其中AN是该杂原子的原子序数。以这种方式,所有的le

你可能感兴趣的:(RDKit,AI,药化,python)