Кіріспе
Химиялық түрлердің құрылымдық белгілеуі
Молекулалық енгізудің оңайлатылған желілік жүйесі (SMILES) – химиялық түрлердің құрылымын қысқа ASCII тізбектері арқылы сипаттауға арналған желілік белгілеу түріндегі ереже. SMILES тізбектерін көптеген молекулалық редакторлар молекулалардың екі өлшемді суреттеріне немесе үш өлшемді модельдеріне айналдыру үшін импорттай алады. SMILES ережесінің бастапқы нұсқасы 1980-ші жылдары жасалған. Кейіннен ол өзгертіліп, толықтырылған. 2007 жылы ашық кодты химия қауымдастығында OpenSMILES деп аталатын ашық стандарт әзірленді.
Тарих
SMILES-тің бастапқы сипаттамасын 1980 жылдары Дэвид Вайнингер Дулуттегі USEPA Mid Continent Ecology Division Laboratory-де бастады. Алғашқы дамуға Гилман Вейт пен Роуз Руссо (USEPA), Альберт Лео мен Корвин Ханш (Помона колледжі) жұмысты қолдағандары үшін, сондай-ақ Артур Вайнингер (Помона; Daylight CIS) және Джереми Скофилд (Cedar River Software, Renton, WA) жүйені бағдарламалауға көмектескені үшін алғыс айтылды. SMILES-ті әзірлеудің бастапқы жобасын Қоршаған ортаны қорғау агенттігі қаржылады. Кейіннен оны басқалар, ең әйгілісі – Daylight Chemical Information Systems өзгертіп, кеңейтті. 2007 жылы Blue Obelisk ашық кодты химия қауымдастығы "OpenSMILES" деп аталатын ашық стандартты жасады. Басқа "сызықтық" жазбаларға Висвессер сызық нотациясы (WLN), ROSDAL және SLN (Tripos Inc) жатады. 2006 жылдың шілдесінде IUPAC InChI-ді формулаларды көрсету стандарты ретінде енгізді. SMILES, әдетте, InChI-ге қарағанда оқуға оңайырақ деп есептеледі; сонымен қатар, ол кең теориялық негіздермен (мысалы, граф теориясы) қолдауға ие, кең ауқымды бағдарламалық қамтамасыз ету базасын қамтиды.
Терминология
SMILES термині молекулалық құрылымдарды кодтау үшін сызықтық белгіге жатады және нақты жағдайларды SMILES тізбектері деп атау керек. Дегенмен, SMILES термині бір SMILES тізбегін немесе бірнеше SMILES тізбегін білдіру үшін де қолданылады; нақты мағынасы көбінесе контексттен белгілі болады. SMILES-ке қатысты қолданылғанда "каноникалық" және "изомерлік" терминдері шатасу тудыруы мүмкін. Бұл терминдер SMILES тізбегінің әртүрлі қасиеттерін сипаттайды және бір-бірімен байланысты емес. Әдетте, бір молекула үшін бірнеше бірдей жарамды SMILES тізбектерін жазуға болады. Мысалы, CCO, OCC және C(O)C – барлығы этанолдың құрылымын көрсетеді. Белгілі бір молекула үшін бірдей SMILES тізбегін жасау үшін алгоритмдер әзірленді; көптеген мүмкін тізбектердің ішінде бұл алгоритмдер тек біреуін таңдайды. Бұл SMILES әр құрылым үшін бірегей, бірақ оны жасау үшін қолданылған канонизация алгоритміне тәуелді және "каноникалық SMILES" деп аталады. Бұл алгоритмдер ең алдымен SMILES-ті молекулалық құрылымның ішкі бейнесіне түрлендіреді; содан кейін алгоритм осы құрылымды талдайды және бірегей SMILES тізбегін шығарады. Каноникалық SMILES-ті жасау үшін әртүрлі алгоритмдер әзірленді, олардың қатарында Daylight Chemical Information Systems, OpenEye Scientific Software, MEDIT, Chemical Computing Group, MolSoft LLC және Chemistry Development Kit бар. Каноникалық SMILES-тің кең таралған қолданылуы – деректер базасындағы молекулаларды индекстеу және олардың бірегейлігін қамтамасыз ету. CANGEN сипатталған бастапқы мақала. Қазіргі уақытта коммерциялық бағдарламалық қамтамасыздағы осындай кемшіліктердің болуын тексеру үшін жүйелі салыстыру жүргізілген жоқ. SMILES белгісі тетраэдрлік орталықтардағы конфигурацияны және екі байланыстың геометриясын көрсетуге мүмкіндік береді. Бұл тек байланыс арқылы анықтауға болмайтын құрылымдық ерекшеліктер, сондықтан осы ақпаратты кодтайтын SMILES "изомерлік SMILES" деп аталады. Бұл ережелердің ерекшелігі – олар хиральдылықтың толық емес спецификациясын жасауға мүмкіндік береді. "Изомерлік SMILES" термині изомерлері көрсетілген SMILES-ке де қолданылады.
SMILES анықтамасы контекстсіз тілдің тізбегі ретінде
Формалды тіл теориясы тұрғысынан алғанда, SMILES – сөз. SMILES контекстсіз синтаксистік талдаушымен талдауға болады. Осы бейнелеудің қолданылуы биохимиялық қасиеттерді (улылығы мен ыдырау қабілеті сияқты) болжау үшін пайдаланылды, бұл химиялық-информатиканың негізгі принципіне негізделген – ұқсас молекулалардың қасиеттері де ұқсас болады. Болжамдық модельдер синтаксистік үлгіні тану әдісін (молекулалық қашықтықты анықтауды қамтиды), сондай-ақ статистикалық үлгіні тануға негізделген, сенімдірек схеманы іске қосты.
Бондаждар
Байланыс = # $ : / \ символдарының бірімен көрсетіледі. Алифалық атомдар арасындағы байланыстар, егер басқаша көрсетілмесе, жай байланыс деп есептеледі және SMILES жолындағы жанында орналасуымен білдіріледі. Жай байланыстар , түрінде жазылуы мүмкін, бірақ көбінесе олар жіберіліп қалады. Мысалы, этанолдың SMILES формуласы C C O, CC O немесе C CO деп жазылуы мүмкін, бірақ әдетте CCO деп жазылады. Қос, үш және төрттік байланыстар тиісінше =, # және $ символдарымен көрсетіледі, мысалы: O=C=O (көмірқышқыл газы), C#N (сутек цианиді HCN) және [Ga+]$[As ] (галлий арсениді). Байланыстың тағы бір түрі – "байланыссыз", ол екі бөлік байланыспағанын көрсету үшін . символымен белгіленеді. Мысалы, сулы натрий хлориді [Na+].[Cl-] деп жазылуы мүмкін, бұл диссоциацияны көрсетеді. Ароматтық "бір жарым" байланыс :; символымен көрсетілуі мүмкін, қараңыз төменде. Қос байланысқа жақын жай байланыстар стереохимиялық конфигурацияны көрсету үшін / немесе \ символымен көрсетілуі мүмкін, қараңыз төменде.
Сақиналар
Сақиналық құрылымдар әрбір сақинаны кездейсоқ нүктеде бөліп жазу арқылы жасалады (бірақ кейбір таңдаулар басқаларына қарағанда оқуға қолайлырақ SMILES формуласына әкеледі) ациклді құрылымды жасау және жақын орналаспаған атомдар арасындағы байланысты көрсету үшін сандық сақина жабу белгілерін қосу үшін. Мысалы, циклогексан және диоксан C1CCCCC1 және O1CCOCC1 ретінде жазылуы мүмкін. Екінші сақина үшін белгі 2 болады. Мысалы, декалин (декагидронафталин) C1CCCC2C1CCCC2 ретінде жазылуы мүмкін. SMILES сақина нөмірін нақты бір ретпен қолдануды талап етпейді және сақина нөмірі 0-ге рұқсат береді, бірақ бұл сирек қолданылады. Сондай-ақ, бірінші сақина жабылып болғаннан кейін сақина нөмірін қайта пайдалануға рұқсат етіледі, бірақ бұл әдетте формулаларды оқуды қиындатады. Мысалы, бициклогексил әдетте C1CCCCC1C2CCCCC2 деп жазылады, бірақ оны C0CCCCC0C0CCCCC0 деп те жазуға болады. Бір атомнан кейін бірнеше сан келсе, ол сақинаның бірнеше жабылу байланысын білдіреді. Мысалы, декалин үшін SMILES-тің баламалы жазуы C1CCCC2CCCCC12 болып табылады, онда соңғы көміртек 1 және 2 сақина жабу байланысына қатысады. Егер екі таңбалы сақина нөмірі қажет болса, таңбаның алдына % қойылады, сондықтан C%12 – бұл 12-ші сақинаның бір сақина жабу байланысы. Сандардың бірінің немесе екеуінің алдына байланыс түрін қоюға болады, ол сақина жабу байланысының түрін көрсетеді. Мысалы, циклопропен әдетте C1=CC1 деп жазылады, бірақ егер қос байланыс сақина жабу байланысы ретінде таңдалса, оны C=1CC1, C1CC=1 немесе C=1CC=1 деп жазуға болады. (Бірінші нұсқасы артықшылыққа ие.) C=1CC 1 жарамсыз, өйткені ол сақина жабу байланысының қарама-қайшы түрлерін көрсетеді. Сақина жабу байланысын бірнеше байланысты көрсету үшін қолдануға болмайды. Мысалы, C1C1 этилен үшін C=C-ге жарамды балама емес. Дегенмен, оны байланыссыз қолдануға болады; C1.C2.C12 – пропанды жазудың ерекше, бірақ жарамды тәсілі, көбінесе CCC деп жазылады. Қосылған топтарға жақын сақинаны бөлу нүктесін таңдау, тармақтарды болдырмау арқылы қарапайым SMILES формуласын жасауға көмектеседі. Мысалы, циклогексан 1,2 диолы ең қарапайым OC1CCCCC1O ретінде жазылады; басқа сақинаны бөлу орнын таңдау жақшаларды қажет ететін тармақталған құрылымды тудырады.
Салалық
Тармақтар жақшамен сипатталады, мысалы, пропион қышқылы үшін CCC(=O)O және фторформы үшін FC(F)F. Жақша ішіндегі бірінші атом және жақшаланған топтан кейінгі бірінші атом екеуі де бір тармақтану нүктесіне байланған. Байланыс символы жақшаның ішінде болуы керек; сыртында (мысалы: CCC=(O)O) жарамсыз. Ауыстырылған сақиналар сақинадағы тармақтану нүктесімен жазылуы мүмкін, мысалы, 3 және 4 цианоанизоль изомерлерін кодтайтын SMILES COc(c1)cccc1C#N (суретке қараңыз) және COc(cc1)ccc1C#N (суретке қараңыз). Осылайша ауыстырылған сақиналарға SMILES жазу оларды түсінуді жеңілдетеді. Тармақтар кез келген ретпен жазылуы мүмкін. Мысалы, бромхлордифторметан FC(Br)(Cl)F, BrC(F)(F)Cl, C(F)(Cl)(F)Br немесе осыған ұқсас түрде жазылуы мүмкін. Әдетте, SMILES түрі қарапайым тармақпен басталып, ең күрделісі жақшасыз бөлік болып келгенде оқуға ыңғайлы. Мұндай өзгертулерге екі ескерту бар:
Егер сақина нөмірлері қайта қолданылса, олар SMILES тізбегінде пайда болу ретіне сәйкес жұпталады. Дұрыс жұптау сақталуын қамтамасыз ету үшін түзетулер қажет болуы мүмкін. Егер стереохимия көрсетілсе, түзетулер енгізілуі керек; төмендегі мәліметтерге қараңыз. Жақша қажет етпейтін тармақтың бір түрі – сақина жабу байланыстары. Сақина жабу байланыстарын дұрыс таңдау қажетті жақшалар санын азайтуға көмектеседі. Мысалы, толуол әдетте Cc1ccccc1 немесе c1ccccc1C деп жазылады, c1cc(C)ccc1 немесе c1cc(ccc1)C деп жазғанда қажет болатын жақшалардан аулақ болуға болады.
If ring numbers are reused, they are paired according to their order of appearance in the SMILES string. Some adjustments may be required to preserve the correct pairing. If stereochemistry is specified, adjustments must be made; see below. The one form of branch which does not require parentheses are ring closing bonds. Choosing ring closing bonds appropriately can reduce the number of parentheses required. For example, toluene is normally written as Cc1ccccc1 or c1ccccc1C, avoiding the parentheses required if written as c1cc(C)ccc1 or c1cc(ccc1)C.
Стереохимия
SMILES стереоизомерлерді көрсетуге рұқсат береді, бірақ талап етпейді. Қос байланыстардағы конфигурация / және \ таңбаларын пайдаланып, қос байланыстың жанындағы бағытталған жеке байланыстарды көрсетеді. Мысалы, F/C=C/F (суретті қараңыз) – транс-1,2-дифторэтиленнің бір бейнесі, онда фтор атомдары қос байланыстың қарама-қарсы жағында (суретте көрсетілгендей), ал F/C=C\F (суретті қараңыз) – цис-1,2-дифторэтиленнің бір бейнесі, онда фторлар қос байланыстың бір жағында орналасқан. Байланыс бағыты таңбалары әрқашан кем дегенде екі топта болады, олардың біріншісі кездейсоқ. Яғни, F\C=C\F, F/C=C/F-қа тең. Кезектесетін жеке және қос байланыстар болғанда, топтар екіден көп болады, ал ортаңғы бағыттау таңбалары екі қос байланыстың арасында орналасқан. Мысалы, (2,4)-гексадиеннің кең таралған түрі C/C=C/C=C/C деп жазылады. Күрделірек мысал ретінде бета-каротинде кезектесетін жеке және қос байланыстардан тұратын өте ұзын тізбек бар, оны 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 деп жазуға болады. Тетраэдрлі көміртектегі конфигурация @ немесе @@ арқылы көрсетіледі. SMILES пішіміндегі солдан оңға қарай төрт байланысты қарастырыңыз. Бірінші байланыстан орталық көміртекке қарағанда, қалған үш байланыс сағат тілі бойынша немесе сағат тіліне қарсы бағытта орналасқан. Бұл жағдайлар сәйкесінше @@ және @ таңбаларымен көрсетіледі (өйткені @ таңбасының өзі сағат тіліне қарсы спираль). Мысалы, аланин аминқышқылын қарастырайық. Оның SMILES пішімінің бірі – NC(C)C(=O)O, толық жазылуы – N[CH](C)C(=O)O. Көбірек таралған энантиомер L-аланин 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)C және OC(=O)[C@H](C)N. Әдетте, төрт байланыстың біріншісі көміртек атомының сол жағында болады, бірақ егер SMILES хиральды көміртекпен басталса, мысалы C(C)(N)C(=O)O, онда төрт байланыстың барлығы оң жақта орналасқан, бірақ бірінші пайда болған (осы жағдайда [CH] байланысы) келесі үш байланыстың ретін анықтау үшін сілтеме ретінде қолданылады: L-аланин [C@@H](C)(N)C(=O)O деп те жазылуы мүмкін. SMILES сипаттамасында тригональды бипирамидалық молекулалық геометрия сияқты күрделі хиральды орталықтардағы стереохимияны көрсету үшін @ таңбасын кеңейтулер де қарастырылған.
Configuration at tetrahedral carbon is specified by @ or @@. Consider the four bonds in the order in which they appear, left to right, in the SMILES form. Looking toward the central carbon from the perspective of the first bond, the other three are either clockwise or counter clockwise. These cases are indicated with @@ and @, respectively (because the @ symbol itself is a counter clockwise spiral). For example, consider the amino acid alanine. One of its SMILES forms is NC(C)C(=O)O, more fully written as N[CH](C)C(=O)O. L Alanine, the more common enantiomer, is written as N[C@@H](C)C(=O)O (see depiction). Looking from the nitrogen–carbon bond, the hydrogen (H), methyl (C), and carboxylate (C(=O)O) groups appear clockwise. D Alanine can be written as N[C@H](C)C(=O)O (see depiction). While the order in which branches are specified in SMILES is normally unimportant, in this case it matters; swapping any two groups requires reversing the chirality indicator. If the branches are reversed so alanine is written as NC(C(=O)O)C, then the configuration also reverses; L alanine is written as N[C@H](C(=O)O)C (see depiction). Other ways of writing it include C[C@H](N)C(=O)O, OC(=O)[C@@H](N)C and OC(=O)[C@H](C)N.
Normally, the first of the four bonds appears to the left of the carbon atom, but if the SMILES is written beginning with the chiral carbon, such as C(C)(N)C(=O)O, then all four are to the right, but the first to appear (the [CH] bond in this case) is used as the reference to order the following three: L alanine may also be written [C@@H](C)(N)C(=O)O. The SMILES specification includes elaborations on the @ symbol to indicate stereochemistry around more complex chiral centers, such as trigonal bipyramidal molecular geometry.
Изотоптар
Изотоптар атомдық символдың алдында тұрған толық санмен, изотоптық массасының мәнімен көрсетіледі. Көміртегі-14 атомы бар бензол [14C]1ccccc1 деп жазылады, ал дейтерохлороформ [2H]C(Cl)(Cl)Cl болып белгіленеді.
SMILES-тің басқа үлгілері
SMILES белгісі Daylight Chemical Information Systems ұсынған SMILES теориялық нұсқаулығында толыққанды сипатталған, сондай-ақ көптеген мысалдар келтірілген. Daylight-тің «бейнелеу» құралы пайдаланушыларға өздерінің SMILES мысалдарын тексеруге мүмкіндік береді және пайдалы оқу құралы болып табылады.
Ұзартулар
SMARTS – молекулалардағы субструктуралық үлгілерді көрсетуге арналған сызықтық жазу тәсілі. SMILES сияқты көптеген символдарды қолданғанымен, ол химиялық деректер базасын іздеу үшін субструктуралық сұраныстарды анықтауға мүмкіндік беретін жолдама атомдары мен байланыстарын көрсетуге де мүмкіндік береді. Жиі кездесетін жаңылыс түсінік – SMARTS негізіндегі субструктуралық іздеу SMILES және SMARTS тізбектерін сәйкестендіруді қамтиды. Шындығында, екі тізбек те – SMILES және SMARTS – алдымен ішкі график түріне түрлендіріледі, содан кейін субграфикалық изоморфизм ізделеді. SMIRKS, "реакциялық SMILES" жиынтығының үстінен және "реакциялық SMARTS" жиынтығының астынан жатқан нұсқасы, реакция түрлендірулерін көрсетуге арналған сызықтық жазу тәсілі болып табылады. Реакция кеңейтулерінің жалпы синтаксисі: REACTANT>AGENT>PRODUCT (бос орынсыз), мұнда кез келген өріс бос қалдырылуы немесе нүкте (.) арқылы бөлінген бірнеше молекуламен толтырылуы мүмкін, сондай-ақ негізгі тілге байланысты басқа да сипаттамалар да болуы мүмкін. Атомдарды карталау үшін қосымша санмен (мысалы, [C:1]) белгілеуге болады, мысалы, SMILES дискретті молекулалық құрылымдарға сәйкес келеді. Дегенмен, көптеген материалдар макромолекулалар болып табылады, олар SMILES-ті ыңғайлы түрде жасау үшін тым үлкен (және көбінесе стохастикалық). BigSMILES – SMILES-тің кеңейтілген нұсқасы, макромолекулалар үшін тиімді бейнелеу жүйесін қамтамасыз етуді мақсат етеді.
SMILES corresponds to discrete molecular structures. However many materials are macromolecules, which are too large (and often stochastic) to conveniently generate SMILES for. BigSMILES is an extension of SMILES that aims to provide an efficient representation system for macromolecules.
Қайта құру
SMILES форматы құрылымдық диаграмма құру (SDG) алгоритмдерін пайдаланып екі өлшемді бейнелеуге айналдырылуы мүмкін. Мұндай түрлендіру кейде нақты емес болуы мүмкін. Үш өлшемді бейнелеуге түрлендіру энергияны ең төмендету әдістері арқылы қол жеткізіледі. Жүктеліп алуға болатын және веб-базалық түрлендіру құралдарының көптеген нұсқалары бар.