美文网首页数据库
SMILES & InChI | 化学结构的线性表示法

SMILES & InChI | 化学结构的线性表示法

作者: AspirinCode | 来源:发表于2019-12-10 15:57 被阅读0次

SMILES表示法、SMARTS表示法和InChI表示法都是用少量字符表示结构信息的重要方法。

化合物的图表示

可以将一个分子视为一个以原子为节点,结合为边的图。图形可以表示一个原子如何连接到另一个原子。如果已知原子之间的键数,则可以在以后添加氢原子,因此在计算机上表示分子时通常会省略氢原子。
例如,丙烷可以表示为:



图结构中,不考虑原子的位置,仅原子之间的连接很重要,因此即使像“ CCC ”这样忽略它,也可能会想到结构

这样,按照一定的规则分子中的分子结构的表达被称为“ 线性符号 ”。

SMILES表示法

SMILES符号是“线性符号”之一,用于用单行文本表达化合物的结构。它是由David Weininger于1986年采用的,由Daylight Chemical Information Systems开发并共同创建。由于其简单性,它是使用最广泛的线性符号。SMILES具有以下六个缩写。

Simplified Molecular Input Line Entry System: SMILES

SMILES表示法规则

SMILES标记根据某些规则将化学结构转换为字符串:

  • 原子由各自原子符号表示
  • 省略简单的H连接
  • 相邻原子表示彼此相连
  • 双键和叁键分别以“=”和“#”表示(单键和芳香键可省略)
  • 分支用“()”表示
  • 用分配的数字表示环上相连的原子
  • 裂解环结构以形成链结构,并且裂解位点用数字表示。
  • 根据这些规则创建的SMILES 有时称为“ 通用SMILES ”。

为了进一步显示三维结构,

  • 同位素表示为[13C]。
  • 绝对定位由“ @”和“ @@”指示。
  • 双键几何异构由“ /”和“ \”表示。
    有一些规则,例如 包含这些同位素和不对称中心的描述的SMILES 有时也称为“ 异构SMILES ”。

Canonical SMILES表示法的规则

先前的规则中,没有关于哪个原子是起点的项目。

实际上,只要将SMILES表示法简单地更改为结构式,它的书写方式就无关紧要。然而,在“检查数据库中是否存在相同的化合物”的情况下,如果表示法不统一,则很麻烦。为此,将发现该化合物应该有一个与该化合物名称的IUPAC名称相对应的SMILES标记。这种SMIELS表示法称为“ Canonical SMILES ”。

Morgan 算法

一种用于对分子中的原子进行优先排序的最广泛使用的算法之一称为“Morgan 算法”。Morgan算法中,原子连通性值是迭代确定的。具体过程如下。

  • 写出附着在每个原子上的原子数
  • 求和与每个原子键合的原子数,以更新原子的化合价
  • 重复步骤2,直到具有不同化合价的原子数恒定为止


Canonical SMILES

规范的SMILES是根据类似于上述Morgan算法的“ CANGEN算法”生成的。通用(generic)SMILES到规范SMILES的这种转换称为“规范化(canonicalization)”。

问题在于该算法的实现是商业化的。当使用Daylight软件时,会生成相同的SMILES,但是其他开源软件使用独特的算法,即使使用相同的化合物也可以获得不同的SMILES。

SMARTS表示法

SMARTS是SMILES基础之上的改进版。SMARTS中增加的一点是,它允许使用通配符表示原子和化学键。因此,它在化合物数据库中广泛用于结构的计算机化搜索。这种搜索的机理是先通过输入的SMILES式重构化学式,再搜索子图的同形;而不是直接通过SMILES式的对比完成的。

InChI

规范的SMILES存在无法自由使用的问题,因为其生成算法是商业性的。史蒂夫·海勒(Steve Heller)和史蒂夫·斯坦(Steve Stein)于1999年提出InChI,以开发可自由使用的化合物的规范表示法。后来,第一个版本在2005年与IUPAC合作宣布。自2009年以来,它一直由一个名为InChI Trust的组织进行管理和开发。

InChI是以人类可以理解的形式编写的分子信息。由于每种化合物都具有不同的InChI,因此可以认为它与化合物名称的IUPAC名称相似。如前所述,与Canonical SMILES的不同之处在于生成算法是非盈利性的,可以自由使用。

InChI:International Chemical Identifier

InChI功能

InChI的发展目标是可以自由使用的标准规范化合物,并具有以下特征。

  • 生成算法是非盈利性的,可免费获得
  • 仅通过结构信息即可轻松计算
  • 人类易于理解的表示法
    由于这些特性,已被许多化合物数据库(包括PubChem和ChemSpider)采用。

InChI Key

这是固定长度为25个字符的分子表示形式,也称为哈希InChI。与InChI不同,很少会从不同的分子生成相同的InChIKey。


参考:

  1. https://www.daylight.com/dayhtml/doc/theory/theory.smiles.html

  2. http://opensmiles.org/opensmiles.html

  3. https://www.daylight.com/dayhtml/doc/theory/theory.smarts.html

    DrugAI

相关文章

  • SMILES & InChI | 化学结构的线性表示法

    SMILES表示法、SMARTS表示法和InChI表示法都是用少量字符表示结构信息的重要方法。 化合物的图表示 可...

  • SMILES 和 SMARTS 式

    SMILES SMILES是简化分子线性输入的方法(Simplified molecular input line...

  • 第六章树

    1,什么是树?2,什么是树的度?3,结点的层次4 线性结构和树结构的比较5 树的三种存储结构(双亲表示法,孩子表示...

  • 【线性代数学习笔记(一)】矩阵表示法和矩阵乘法规则是怎么来的?

    目录 求解线性方程组:高斯消元法简化线性方程组的表示——得到原始的矩阵定义用矩阵的表示方法表示高斯消元法解线性方程...

  • 线性表

    背景 上一篇文章说过,数据的结构分为线性结构和非线性结构,而线性结构表示结构中所有数据元素都按某种次序排列在一个序...

  • 六、树(二)、树的存储结构

    数据结构目录 1.树三种不同的表示法: 双亲表示法 孩子表示法 孩子兄弟表示法 双亲表示法 双亲表示法,就是以双亲...

  • 线性表---GoLang实现

    线性表 线性表分为顺序存储结构和链式存储结构 线性表的顺序存储结构 优点:无需为表示表中元素之间的逻辑关系而增加额...

  • 数据结构

    一.课程内容概要 二.数组 三.稀疏矩阵 考试中使用带入法即可: 四.数据结构的定义 线性结构: 非线性结构:树,...

  • 数据结构-线性表的顺序表示以及实现(C语言)

    数据结构-线性表的顺序表示 线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素,这种表示也称作...

  • 数据结构与算法-树的存储结构

    树在内存中的存储结构 双亲表示法 存储结构的设计 孩子表示法 孩子表示法有不同的方案,让我们看看 不同方案之间的区...

网友评论

    本文标题:SMILES & InChI | 化学结构的线性表示法

    本文链接:https://www.haomeiwen.com/subject/dvsggctx.html