跳转到内容

User:Hao Siru/SMILES 规范

维基百科,自由的百科全书
SMILES
扩展名
.smi
互联网媒体类型
chemical/x-daylight-smiles
格式类型化学文件格式
环丙沙星的 SMILES 生成算法:打开环,然后写成一条主链上的分支形式。

简化分子线性输入规范(SMILES) 是一种用ASCII字符串明确描述分子结构的规范。大多数分子编辑器都可以导入SMILES字符串,以转换回分子的二维绘图或三维模型。

最初的 SMILES 规范始于 1980 年代,已经被多次修改和扩展。 2007 年,开源化学社区开发了一个名为 OpenSMILES 的开放标准

历史

[编辑]

最初的 SMILES 规范由David Weininger在 1980 年代在德卢斯的 USEPA 大陆生态部实验室发起。 [1] [2] [3] [4]感谢他们在早期开发中的贡献:“Gilman Veith 和 Rose Russo (USEPA) 以及 Albert Leo 和Corwin Hansch (Pomona College) 支持这项工作,以及 Arthur Weininger (Pomona; Daylight CIS) 和 Jeremy Scofield (Cedar River Software, Renton, WA) 为系统编程提供帮助。” [5]环境保护署资助了开发 SMILES 的初始项目。 [6] [7]

它已被其他人或组织修改和扩展,例如日光化学信息系统(Daylight Chemical Information Systems)。 2007 年,Blue Obelisk开源化学社区开发了一个名为“OpenSMILES”的开放标准。其他字符串符号表示方法包括 Wiswesser Line Notation (WLN)、 ROSDAL和SLN (Tripos Inc)。

2006年7月,IUPAC引入了InChI作为公式表示的标准。 通常认为SMILES比InChI具有更易于人类可读的优点;它还拥有广泛的软件支持基础,具有广泛的理论支持(例如图论)。

术语

[编辑]

术语 SMILES 是指用于编码分子结构的行符号,特定实例应严格称为 SMILES 字符串。然而,术语 SMILES 也常用于指单个 SMILES 字符串和多个 SMILES 字符串。确切的含义通常从上下文中显而易见。当应用于 SMILES 时,术语“规范”和“异构”可能会导致一些混淆。这些术语描述了 SMILES 字符串的不同属性,并不相互排斥。

可以为一个分子通常具有多个同样有效的 SMILES 字符串。例如, CCOOCCC(O)C 都指定了乙醇的结构。为给定的分子生成相同的 SMILES 字符串的算法已经被开发完毕;这些算法在许多可能的字符串中只选择其中一个。依赖于用于生成它的规范化算法,这个 SMILES 对于每个结构都是唯一的,这个 SMILES 被称为规范 SMILES。这些算法首先将 SMILES 转换为分子结构的内部表示;然后算法会检查该结构并生成唯一的 SMILES 字符串。下面是一些包含用于生成规范 SMILES 的算法的工具,包括 Daylight Chemical Information Systems、 OpenEye Scientific SoftwareMEDITChemical Computing Group 、 MolSoft LLC 和Chemistry Development Kit的算法。规范 SMILES 的一个常见应用是索引并确保数据库中分子的唯一性。

描述 CANGEN [2]算法的原始论文声称可以为表示分子的图形生成唯一的 SMILES 字符串,但该算法在许多简单情况下都失败了(例如cuneane 、1,2-二环丙基乙烷)并且被认为不能使用正确的方法典型地表示图形。 [8]目前没有跨商业软件的系统比较来测试这些软件包中是否存在此类缺陷。

SMILES 符号允许指定四面体中心的配置和双键几何形状。这些是不能仅由连接性指定的结构特征,因此编码此信息的 SMILES 称为异构 SMILES。这些规则的一个显着特征是它们允许对手性进行严格的部分说明。术语异构 SMILES 也适用于指定异构体的 SMILES。

基于图的定义

[编辑]

就基于图的计算过程而言,SMILES 是通过深度优先遍历分子结构式的中遇到的符号节点获得的字符串。首先去除图里氢原子,然后打开环以将其变成生成树。在环中断的地方插入包含数字后缀标签(相同数字的节点表示该两个原子相连)。括号用于表示支链。

生成的 SMILES 形式取决于选择:

SMILES 定义为上下文无关语言的字符串

[编辑]

从形式语言理论的角度来看,SMILES 是一个词。 SMILES 可以用上下文无关的解析器解析。基于相似分子具有相似特性的化学信息学的主要原理,这种表示的使用一直用于预测生化特性(包括毒性和生物降解性)。预测模型实现了句法模式识别方法(涉及定义分子距离) [9] ,以及基于统计模式识别的更强大的方案。 [10]

记法

[编辑]

原子

[编辑]

原子由方括号中的化学元素的标准缩写表示,例如[Au]表示。在以下原子的常见情况下可以省略括号:

  1. 属于BCNOPSFClBrI的“有机子集”
  2. 没有形式电荷
  3. 具有 SMILES 化合价模型所暗示的氢的数量(通常是它们的正常化合价,但对于 N 和 P,它是 3 或 5,对于 S,它是 2、4 或 6)
  4. 是正常同位素
  5. 不是手性中心

所有其他元素必须用括号括起来,并明确显示电荷和氢。例如,的 SMILES 可以写为O[OH2] 。氢也可以写成一个单独的原子;水也可以写成[H]O[H]

使用括号时,如果括号中的原子与一个或多个氢键合,则添加符号H ,如果大于 1,则添加氢原子数,然后添加符号+表示正电荷或-表示负电荷。例如, [NH4+]表示( NH+
4
)。如果有多个电荷,通常写为数字;但是,也可以根据离子的电荷多次重复该符号:对于(IV) Ti 4+ ,可以写为[Ti+4][Ti++++] 。因此,氢氧根阴离子Template:OH- ) 由[OH-]表示,水合氢阳离子 (H3O+)是[OH3+](III)阳离子(Co 3+ )是[Co+3][Co+++]

化学键

[编辑]

使用其中一个符号表示键. - = # $ : / \

除非另有说明,否则脂肪族化合物原子之间的键被假定为单键,并且通过 SMILES 字符串中的邻接来暗示。虽然单键可以写为- ,但通常省略。例如,乙醇的 SMILES 可以写成CCOCC-OC-CO ,但通常写成CCO

双键、三键和四分别用符号=#$表示,如 SMILES O=C=O二氧化碳)、 C#N氰化氢HCN)和[Ga+]$[As-]砷化镓)。

另一种键是“不成键”,用 表示., 表示两个部分没有粘合在一起。例如,氯化钠水溶液可写为[Na+].[Cl-]显示解离。

芳香味化合物的芳香键可以用: ,见下面的§ 环

与双键相邻的单键可以使用/\表示立体化学构型;见下面的§ 立体化学

[编辑]

为了形成无环结构,需要在所有环的任意点(某些特定的选择可能会使结果更简明)打断。添加数字标签以显示不相邻原子之间的连接性。

例如,环己烷二恶烷可以分别写成C1CCCCC1O1CCOCC1 。我们将第二个环的顺序编为2,例如,十氢化萘可以写为C1CCCC2C1CCCC2

这是一些符合SMILES规范但很少用的环号编码方法:

  • 环号的顺序可以是任意的
  • 在环结束之后可以重用环号
  • 可以使用0作为环号

但是这通常会使SMILES更难阅读。例如,环己基环己烷通常写为C1CCCCC1C2CCCCC2 ,但也可能写为C0CCCCC0C0CCCCC0

单个原子后的多个数字表示多个闭环键。例如,十氢化萘的另一种 SMILES 符号是C1CCCC2CCCCC12,其中最终的碳同时结束了环1和环2。

如果需要两位数的环号,则标签前面有% ,因此C%12是环12的单个闭环键。

环号前面可以有一个化学键符号用以指示闭环键的类型。例如,环丙烯通常写作C1=CC1,但如果选择双键作为闭环键,则可以写作C=1CC1C1CC=1C=1CC=1(尽量使用C1=CC1)。不可以对同一个闭环键指定多种类型,因此C=1CC-1是非法的。

Ring-closing bonds may not be used to denote multiple bonds. For example, C1C1 is not a valid alternative to C=C for ethylene. However, they may be used with non-bonds; C1.C2.C12 is a peculiar but legal alternative way to write propane, more commonly written CCC.

闭环键不能用于表示多重键。例如乙烯C1C1不是C=C的有效替代品。但它们可以与不成键一起使用C1.C2.C12是一种特殊但合法的书写丙烷的替代方式,更常见的是书写CCC

选择与支链相邻的断环点可以得出更简单的 SMILES 形式。例如,1,2-环己二醇最简单地写为OC1CCCCC1O。选择不同的位置断环会产生一个分支结构。

芳香环

[编辑]

诸如之类的芳香环可以写成以下三种形式之一:

  1. 具有交替单键和双键的凯库勒CC=CC=C1
  2. 使用芳香键符号: ,例如C1:C:C:C:C:C1
  3. 最常见的是,通过分别以小写形式bcnops编写构成 B、C、N、O、P 和 S 原子。

在最后一种情况下,允许未指出两个芳香原子之间的键是芳香键。因此,吡啶呋喃可以分别用 SMILES c1ccccc1n1ccccc1o1cccc1

吡咯中发现的与氢键合的芳香氮必须表示为[nH] ;因此咪唑用 SMILES 表示法写为n1c[nH]cc1

当芳族原子彼此单键时,必须明确显示单键。例如联苯c1ccccc1-c2ccccc2 。这是需要单键符号-的少数情况之一。(实际上大多数 SMILES 软件可以正确推断出两个环之间的键不能是芳香的,因此会接受非标准形式c1ccccc1c2ccccc2 。 )

用于生成规范 SMILES 的 Daylight 和 OpenEye 算法在处理芳香性方面有所不同。

3-氰基苯甲醚 表示为COc(c1)cccc1C#N

分支

[编辑]

支链用括号描述,如丙酸CCC(=O)O氟仿FC(F)F 。括号内的第一个原子和括号内的基团之后的第一个原子都与相同的分支点原子键合。化学键符号必须出现在括号内;外部(例如: CCC=(O)O )无效。

取代的环可以用环中的分支点书写,如编码 3 和 4-氰基苯甲醚异构体的 SMILES COc(c1)cccc1C#N见图片)和COc(cc1)ccc1C#N见图片)所示。以这种方式为替代环编写 SMILES 可以使它们更易于阅读。

可以按任何顺序编写分支。例如,二氟一氯一溴甲烷可写为FC(Br)(Cl)FBrC(F)(F)ClC(F)(Cl)(F)Br等。通常,如果较简单的分支出现在最前面,则 SMILES 表单最容易阅读,最后的未加括号的部分是最复杂的。这种重新排列的唯一警告是:

  • 如果环号被重复使用,它们将根据它们在 SMILES 字符串中出现的顺序进行配对。可能需要进行一些调整以保持正确的配对。
  • 如果指定了立体化学,则必须进行调整。

不需要括号的一种分支形式是闭环键。在合适的位置断环能减少括号的数量。例如,甲苯通常写成Cc1ccccc1c1ccccc1C ,避免写成c1cc(C)ccc1c1cc(ccc1)C时所需的括号。

立体化学

[编辑]
反-1,2-二氟乙烯

SMILES 允许但不要求对立体异构体进行规范。

双键周围的配置使用字符/\指定,以显示与双键相邻的定向单键。例如, F/C=C/F见图示)是-1,2-二氟乙烯的一种表示,其中氟原子位于双键的相对两侧(如图所示),而F/C=C\F见图示)是-1,2-二氟乙烯的一种可能表示形式,其中氟位于双键的同一侧。

键方向符号总是以至少两个为一组出现,其中第一个是任意的。也就是说, F\C=C\FF/C=C/F相同。当存在交替的单双键时,基团大于两个,中间方向符号与两个双键相邻。例如,(2,4)-己二烯的常见形式写作C/C=C/C=C/C见图示)。

β-胡萝卜素,突出显示了 11 个双键。

作为一个更复杂的例子, β-胡萝卜素有一个很长的单键和双键交替的主链,可以写成CC1CCC/C(C)=C1/C=C/C(C)=C/C=C/C(C)=C/C=C/C=C(C)/C=C/C=C(C)/C=C/C2=C(C)/CCCC2(C)C见图示)。

手性碳的顺序由@@@指定。按从字符串左侧到右侧的顺序以顺序规则考虑四个键。从第一个键的角度看向碳,其他三个是顺时针@@或逆时针@(因为@符号本身是逆时针螺旋)。

L-丙氨酸

例如,考虑丙氨酸。它的 SMILES 形式之一是NC(C)C(=O)O ,更完整地写为N[CH](C)C(=O)OL-丙氨酸,更常见的一种对映异构体,写作N[C@@H](C)C(=O)O见描述)。从氮碳键看,氢 ( H )、甲基 ( C ) 和羧酸盐 ( C(=O)O ) 基团顺时针出现。 D -丙氨酸可以写成N[C@H](C)C(=O)O见描述)。

虽然在 SMILES 中指定分支的顺序通常并不重要,但在这种情况下它很重要;交换任何两个组需要反转手性指标。如果分支颠倒,因此丙氨酸写为NC(C(=O)O)C ,那么配置也会颠倒; L-丙氨酸写为N[C@H](C(=O)O)C见描述)。其他写法包括C[C@H](N)C(=O)O, OC(=O)[C@@H](N)COC(=O)[C@H](C)N

第一个键通常出现在手性碳原子的左侧,但如果 SMILES 以手性碳开头,例如C(C)(N)C(=O)O ,那么所有四个键都是右边。但最先出现的(在这种情况下是[CH]键)被用作对以下三个进行排序的参考: L -丙氨酸也可以写作[C@@H](C)(N)C(=O)O

SMILES 规范包括对@符号的详细说明,以指示更复杂的手性中心周围的立体化学,例如双三角锥形分子构型

同位素

[编辑]

同位素的指定数字等于原子符号前的整数同位素质量。其中一个原子是碳14写成[14c]1ccccc1氘代氯仿写成[2H]C(Cl)(Cl)Cl

例子

[编辑]
分子 结构 SMILES
氮气 N≡N N#N
异氰酸甲酯(MIC) CH3−N=C=O CN=C=O
硫酸铜 (II) Cu2+SO2−
4
[Cu+2].[O-]S(=O)(=O)[O-]
香兰素 Molecular structure of vanillin O=Cc1ccc(O)c(OC)c1COc1cc(C=O)ccc1O
褪黑激素(C13H16N2O2) Molecular structure of melatonin CC(=O)NCCC1=CNc2c1cc(OC)cc2CC(=O)NCCc1c[nH]c2ccc(OC)cc12
Flavopereirin(C17H15N2)

//译者翻不出来,希望有人能帮忙补全

Molecular structure of flavopereirin CCc(c1)ccc2[n+]1ccc3c2[nH]c4c3cccc4CCc1c[n+]2ccc3c4ccccc4[nH]c3c2cc1
尼古丁(C10H14N2) Molecular structure of nicotine CN1CCC[C@H]1c2cccnc2
鱼尾藻毒素(C17H22O2) Molecular structure of oenanthotoxin CCC[C@@H](O)CC\C=C\C=C\C#CC#C\C=C\COCCC[C@@H](O)CC/C=C/C=C/C#CC#C/C=C/CO
除虫菊素II(C22H28O5) Molecular structure of pyrethrin II CC1=C(C(=O)C[C@@H]1OC(=O)[C@@H]2[C@H](C2(C)C)/C=C(\C)/C(=O)OC)C/C=C\C=C
黄曲霉毒素B1(C17H12O6) Molecular structure of aflatoxin B1 O1C=C[C@H]([C@H]1O2)c3c2cc(OC)c4c3OC(=O)C5=C4CCC(=O)5
葡萄糖(β- D-吡喃葡萄糖)(C6H12O6) Molecular structure of glucopyranose OC[C@@H](O1)[C@@H](O)[C@H](O)[C@@H](O)[C@H](O)1
Bergenin(cuscutin,一种树脂)(C14H16O9)

//译者翻不出来,希望有人能帮忙补全

Molecular structure of cuscutine (bergenin) OC[C@@H](O1)[C@@H](O)[C@H](O)[C@@H]2[C@@H]1c3c(O)c(OC)c(O)cc3C(=O)O2
加利福尼亚介壳虫的一种信息素 (3Z,6R)-3-methyl-6-(prop-1-en-2-yl)deca-3,9-dien-1-yl acetate CC(=O)OCCC(/C)=C\C[C@H](C(C)=C)CCC=C
(2 S ,5 R )-Chalcogran

树皮甲虫Pityogenes chalcographus [11]信息素

(2S,5R)-2-ethyl-1,6-dioxaspiro[4.4]nonane CC[C@H](O1)CC[C@@]12CCCO2
α-Thujone(C10H16O) Molecular structure of thujone CC(C)[C@@]12C[C@@H]1[C@@H](C)C(=O)C2
硫胺素(维生素B1)(C12H17N4OS+ Molecular structure of thiamin OCCc1c(C)[n+](cs1)Cc2cnc(C)nc2N

为了说明具有超过 9 个环的分子,请考虑头孢他汀 -1, [12]一种具有经验式C 54 H 74 N 2 O 10的甾体 13 环吡嗪,从印度洋半脊索动物Cephalodiscus gilchristi中分离出来:

从图中最左边的甲基开始:

CC(C)(O1)C[C@@H](O)[C@@]1(O2)[C@@H](C)[C@@H]3CC=C4[C@]3(C2)C(=O)C[C@H]5[C@H]4CC[C@@H](C6)[C@]5(C)Cc(n7)c6nc(C[C@@]89(C))c7C[C@@H]8CC[C@@H]%10[C@@H]9C[C@@H](O)[C@@]%11(C)C%10=C[C@H](O%12)[C@]%11(O)[C@H](C)[C@]%12(O%13)[C@H](O)C[C@@]%13(C)CO

注意%出现在 9 以上的闭环标签索引前面;见§ 环上面的§ 环

SMILES 的其他例子

[编辑]

SMILES 符号在 Daylight Chemical Information Systems 提供的 SMILES 理论手册中进行了广泛的描述,并提供了许多说明性示例。 Daylight 的描绘实用程序为用户提供了检查他们自己的 SMILES 示例的方法,并且是一种有价值的教育工具。

发展

[编辑]

SMARTS是用于指定分子中的子结构模式的线符号。虽然它使用许多与 SMILES 相同的符号,但它还允许指定通配符原子和键,可用于定义化学数据库搜索的子结构查询。一种常见的误解是基于 SMARTS 的子结构搜索涉及匹配 SMILES 和 SMARTS 字符串。事实上,SMILES 和 SMARTS 字符串都首先转换为内部图表示,然后搜索子图同构

SMIRKS 是“reaction SMILES”的超集和“reaction SMARTS”的子集,是用于指定反应变换的线符号。反应扩展的一般语法是REACTANT > AGENT > PRODUCT (不带空格),其中任何字段可以留空或填充以点 ( . ) 分隔的多个分子,以及其他依赖于基本语言的描述。原子还可以用数字标识(例如[C:1] ) 用于映射,例如[13]在 . [14]

SMILES 对应于离散的分子结构。然而,许多材料都是大分子,它们太大(而且通常是随机的),无法方便地为其生成 SMILES。 BigSMILES 是 SMILES 的扩展,旨在为大分子提供有效的表示系统。 [15]

转换

[编辑]

可以使用结构图生成 (SDG) 算法将 SMILES 转换回二维表示。 [16]这种转换并不总是明确的。通过能量最小化方法实现向三维表示的转换。有许多可下载和基于 Web 的转换实用程序。

另请参照

[编辑]

参考

[编辑]

[[Category:编码]] [[Category:化学命名法]]

  1. ^ SMILES, a chemical language and information system. 1. Introduction to methodology and encoding rules. Journal of Chemical Information and Computer Sciences. February 1988, 28 (1): 31–6. doi:10.1021/ci00057a005. 
  2. ^ 2.0 2.1 SMILES. 2. Algorithm for generation of unique SMILES notation. Journal of Chemical Information and Modeling. May 1989, 29 (2): 97–101. doi:10.1021/ci00062a008. 
  3. ^ SMILES. 3. DEPICT. Graphical depiction of chemical structures. Journal of Chemical Information and Modeling. August 1990, 30 (3): 237–43. doi:10.1021/ci00067a005. 
  4. ^ https://wayback.archive-it.org/2118/20100925010036/http://64.251.202.97/pubs/asist2002/17-swanson.pdf |chapterurl=缺少标题 (帮助) (PDF). The Entrance of Informatics into Combinatorial Chemistry. Medford, NJ: Information Today. 2004: 205. ISBN 978-1-57387-229-4. 
  5. ^ Acknowledgements on Daylight Tutorial smiles-etc page. 1998 [24 June 2013]. 
  6. ^ SMILES: A line notation and computerized interpreter for chemical structures (PDF). Duluth, MN: U.S. EPA, Environmental Research Laboratory-Duluth. 1987. Report No. EPA/600/M-87/021. 
  7. ^ SMILES Tutorial: What is SMILES?. U.S. EPA. [2012-09-23]. (原始内容存档于28 March 2008). 
  8. ^ https://doi.org/10.1007%2F11530084_13 |chapterurl=缺少标题 (帮助). Assigning Unique Keys to Chemical Compounds for Data Integration: Some Interesting Counter Examples. Lecture Notes in Computer Science 3615. Berlin: Springer. 2005: 145–157 [2013-02-12]. ISBN 978-3-540-27967-9. doi:10.1007/11530084_13. 
  9. ^ NLP-inspired structural pattern recognition in chemical application.. Pattern Recognition Letters. August 2014, 45: 11–16. doi:10.1016/j.patrec.2014.02.012. 
  10. ^ Bridging from syntactic to statistical methods: Classification with automatically segmented features from sequences.. Pattern Recognition. November 2015, 48 (11): 3749–3756. doi:10.1016/j.patcog.2015.05.001. 
  11. ^ Isolation of pheromone synergists of bark beetle,Pityogenes chalcographus, from complex insect-plant odors by fractionation and subtractive-combination bioassay. Journal of Chemical Ecology. March 1990, 16 (3): 861–876. PMID 24263601. doi:10.1007/BF01016496. 
  12. ^ CID 183413. PubChem. [May 12, 2012] (英语). 
  13. ^ SMIRKS Tutorial. Daylight Chemical Information Systems, Inc. [29 October 2018]. 
  14. ^ Reaction SMILES and SMIRKS. Daylight Chemical Information Systems, Inc. [29 October 2018]. 
  15. ^ BigSMILES: A Structurally-Based Line Notation for Describing Macromolecules. ACS Central Science. September 2019, 5 (9): 1523–1531. PMC 6764162可免费查阅. PMID 31572779. doi:10.1021/acscentsci.9b00476. 
  16. ^ Reviews in Computational Chemistry 13. New York: Wiley-VCH. 1999: 313–398. ISBN 978-0-470-12590-8. doi:10.1002/9780470125908.ch6.