SMILES
SMILES (Simplified Molecular Input Line Entry Specification, англ. спецификация упрощенного представления молекул в строке ввода) — система правил (спецификация) однозначного описания состава и структуры молекулы химического вещества с использованием строки символов ASCII. Название в английском языке является омонимом к слову smiles (улы́бки), однако пишется только заглавными буквами. В русском языке однозначного аналога не имеет, рекомендуется употребление на языке оригинала. Произносится: смайлз.
Строка символов, составленная по правилам SMILES, может быть преобразована многими молекулярными редакторами в двумерную или трёхмерную структурную формулу молекулы.
Первоначальный вариант спецификации SMILES был разработан Артуром Вейнингером и Дэвидом Вейнингером в конце 1980-х[1]. В дальнейшем стандарт был модифицирован и расширен; наиболее активное участие в этой работе приняла компания Daylight Chemical Information Systems, Inc..
Среди остальных линейных нотаций стоит выделить нотацию Висвессера (WLN), SMARTS, ROSDAL и Sybyl Line Notation (Tripos Inc.). Недавно IUPAC предложил InChI в качестве стандарта для линейного представления формул. SMILES имеет преимущества перед InChI, в частности, лучшее восприятие формул человеком, а также более простая программная поддержка в связи с наличием обширной теоретической базы — теории графов.
Варианты спецификации SMILES[править | править код]
В изначальной спецификации SMILES отсутствуют правила, касающиеся способа построения записи и способа различения пространственных изомеров молекул. Для решения этих проблем были разработаны расширения стандарта:
- «Каноническая SMILES» (Canonical SMILES)[2] — версия спецификации, включающая правила канонизации, позволяющие записать формулу молекулы любого вещества однозначным образом. Эти правила касаются выбора первого атома в записи, направления обхода циклов, выбора направления основной цепи при разветвлениях. Поскольку в разных пакетах молекулярного моделирования используются различные алгоритмы канонизации SMILES, вследствие чего могут получаться разные записи одной и той же молекулы, понятие «каноническая SMILES» не является абсолютным. Данная версия стандарта обычно применяется для индексирования и проверки уникальности молекул в базах данных.
- «Изомерическая SMILES» (Isomeric SMILES)[3] — версия спецификации, позволяющая включать в запись данные об изотопном составе, конфигурации асимметрических атомов углерода и двойных связей. Особенность этой версии по сравнению с официальной номенклатурой ИЮПАК в том, что изомерическая SMILES позволяет хранить информацию о молекулах, для которых известны конфигурации лишь некоторых хиральных центров или двойных связей.
Определение в терминах теории графов[править | править код]
В терминах теории графов SMILES представляет собой строку, полученную путём вывода символов вершин молекулярного графа в порядке, соответствующем их обходу в глубину. Первоначальная обработка графа включает в себя удаление атомов водорода и разбивку циклов таким образом, чтобы получившийся граф представлял собой остовный лес. Местам разбиения графа ставятся в соответствие числа, показывающие наличие связи в исходной молекуле. Для указания точек ветвления молекулы используются скобки.
Основные принципы построения SMILES[править | править код]
Атомы[править | править код]
Атомы обозначаются символами химических элементов в квадратных скобках, например, золото обозначается как [Au]
. Для элементов-органогенов (B, C, N, O, P, S, F, Cl, Br, I) скобки могут быть опущены. В этом случае атомы водорода можно не указывать в явном виде, если их число соответствует наименьшей нормальной валентности в соответствии с явно заданными связями. Атомы в составе ароматических циклов обычно записываются строчными буквами вместо прописных, хотя в некоторых диалектах SMILES применяется явное чередование двойных и одинарных связей (как в структурной формуле бензола, предложенной Кекуле). При необходимости указать формальный заряд частицы атомы водорода и символ заряда записываются в явном виде[3]. Изотопы записываются в квадратных скобках с указанием атомного веса перед символом атома, например, изотоп 13C будет записан как [13C]
.
Например, запись SMILES для воды будет выглядеть как O
, для этанола — CCO
. Гидроксильный анион записывается [OH-]
, а ион железа (II) как [Fe+2]
.
Связи[править | править код]
Одинарная химическая связь может быть записана с использованием символа -
между атомами, соединёнными связью, но на практике это не применяется, символ дефиса опускают. Обозначение ароматической связи (:) обычно тоже опускают. Двойная связь обозначается с помощью знака равенства, например, двуокись углерода записывается в виде O=C=O
. Тройная связь обозначается с помощью октоторпа, например, синильная кислота записывается как C#N
.
Разветвления молекулы[править | править код]
Боковые цепи молекулы заключаются в круглые скобки. Например, пропионовая кислота записывается как CCC(=O)O
. Каноническая форма записи трифторметана выглядит как C(F)(F)F
, однако такая запись неудобна для чтения из-за своей перегруженности скобками, поэтому ту же молекулу можно записать в неканонической форме как FC(F)F
.
Циклические соединения[править | править код]
Атомы, находящиеся на концах разорванной при построении остовного леса связи, обозначаются одним и тем же номером. Например, циклогексан записывается как C1CCCCC1
, а бензол — как c1ccccc1
.
Стереохимия[править | править код]
Конфигурация относительно двойной связи записывается при помощи символов / и \. Например, F/C=C/F
соответствует транс-дифторэтилену, а F/C=C\F
или F\C=C/F
соответствует цис-дифторэтилену (см. рис.).
Расширения[править | править код]
SMARTS — модификация SMILES, которая позволяет использовать неупорядоченную структуру атомов и связей. Широко используется в системах поиска в базах данных о веществах. Практика применения вызвала распространённое заблуждение, что в компьютерном поиске структур производится сравнение записей-цепочек, в то время как производится гораздо более производительное сравнение графов, построенных на основании формул SMILES.
Преобразования[править | править код]
Формула SMILES может быть преобразована в двухмерную структурную формулу при помощи алгоритма (Structure Diagram Generation algorithms), разработанного Хелсоном[4]. Преобразование не всегда даёт однозначный результат. Преобразование в трехмерную структурную формулу производится с использованием принципа минимальной энергии образования вещества.
Примечания[править | править код]
- ↑ David Weininger «SMILES, a chemical language and information system. 1. Introduction to methodology and encoding rules» // J. Chem. Inf. Comput. Sci.. — 1988. — Т. 28. — № 1. — С. 31-36.
- ↑ David Weininger, Arthur Weininger, Joseph L. Weininger «SMILES. 2. Algorithm for generation of unique SMILES notation» // J. Chem. Inf. Comput. Sci.. — 1989. — Т. 29. — № 2. — С. 97-101.
- ↑ а б "SMILES - A Simplified Chemical Language". Daylight Chemical Information Systems, Inc. Archived from the original on 2012-02-12. Retrieved 2009-05-04. Unknown parameter
|description=
ignored (help); Unknown parameter|lang=
ignored (help) - ↑ Helson, Harold E. (1999) Structure Diagram Generation. Reviews in Computational Chemistry 13, 313-98, Eds. Lipkowitz, K.B, Boyd, D.B., Wiley-VCH Press.