Počítačová chemie (4. přednáška)

Slides:



Advertisements
Podobné prezentace
Grafové algoritmy.
Advertisements

DOTAZOVACÍ JAZYKY slajdy přednášce DBI006
Stavový prostor. • Existují úlohy, pro které není k dispozici univerzální algoritmus řešení • různé hry • problém batohu, problém obchodního cestujícího.
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Diskrétní matematika Opakování - příklady.
Aplikace teorie grafů Základní pojmy teorie grafů
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Principy překladačů Mezikód Jakub Yaghob.
ADT Strom.
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Lineární algebra.
Jak se atomy spojují.
LOGISTICKÉ SYSTÉMY 7/14.
Soustava lineárních nerovnic
ELEKTRONOVÝ OBAL.
1IT S ÍŤOVÝ DATOVÝ MODEL Ing. Jiří Šilhán. S ÍŤOVÝ DATOVÝ MODEL Je historicky nejstarším datovým modelem. Jeho základem jsou vzájemně propojené množiny.
SÍŤOVÁ ANALÝZA.
Informatika I 3. přednáška
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Řadicí algoritmy autor: Tadeáš Berkman.
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Vyučovací hodina 1 vyučovací hodina: Opakování z minulé hodiny 5 min Nová látka 20 min Procvičení nové látky 15 min Shrnutí 5 min 2 vyučovací hodiny: Opakování.
REDUKCE DAT Díváme-li se na soubory jako na text, pak je tento text redundantní. Redundance vyplývá z:  některé fráze nebo slova se opakují  existuje.
TI 7.1 NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6. TI 7.2 Nejkratší cesty z jednoho uzlu Seznámíme se s následujícími pojmy: w-vzdálenost (vzdálenost na.
GYMNÁZIUM, VLAŠIM, TYLOVA 271
ORIENTOVANÉ GRAFY V této části se seznámíme s následujícími pojmy:
MATEMATIKA I.
Formulace a vlastnosti úloh lineárního programování
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Gramatiky a jazyky Přednáška z předmětu Řízení v komplexních systémech
Stromy.
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Databázové systémy Přednáška č. 4 Proces návrhu databáze.
JavaScript Podmínky, cykly a pole.
Vztah bezkontextových jazyků a ZA
STROMY Datová struktura sestávající z uzlů
VLASTNOSTI GRAFŮ Vlastnosti grafů - kap. 3.
Algoritmizace a programování Vývojové diagramy - 03
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Turingův stroj.
Cyklus kyseliny citrónové, citrátový cyklus.
hledání zlepšující cesty
Vektorové prostory.
Distribuované algoritmy - přehled Přednášky z Distribuovaných systémů Ing. Jiří Ledvina, CSc.
Počítačová chemie (5. přednáška)
Kanonické indexování vrcholů molekulového grafu Molekulový graf: G = (V, E, L, ,  ) Indexování vrcholů molekulového grafu G: bijekce  : V  I I je indexová.
Počítačová chemie (2. přednáška)
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Planarita a toky v sítích
Hledání cyklů Komunikační sítě Elektrické obvody Odběr surovin a výrobků v průmyslové výrobě Logistika Chemie ….
Atomy a molekuly.
Jak se atomy spojují Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem.
Databáze ● úložiště dat s definovaným přístupem ● typy struktury – strom, sekvence, tabulka ● sestává z uspořádaných záznamů ● databáze – struktura – záznam.
NÁZEV ŠKOLY: Základní škola Strančice, okres Praha-východ AUTOR: Ing. Ivana Fiedlerová NÁZEV: VY_32_INOVACE_ F 12 TEMA: Chemie 8 - Molekula.
Organická chemie Přírodovědný seminář – chemie 9. ročník ZŠ Benešov, Jiráskova 888 Ing. Bc. Jitka Moosová.
NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6.
Úvod do databázových systémů
Funkce Funkce je zobrazení z jedné číselné množiny do druhé, nejčastěji Buď A a B množiny, f zobrazení. Potom definiční obor a obor hodnot nazveme množiny:
Financováno z ESF a státního rozpočtu ČR.
Definiční obor a obor hodnot
Znázornění dopravní sítě grafem a kostra grafu Předmět: Teorie dopravy - cvičení Ing. František Lachnit, Ph.D.
Překladače 5. Syntaktická analýza
Maximální propustnost rovinné dopravní sítě
AUTOR: Mgr. Blanka Hipčová NÁZEV: VY_52_INOVACE_02_CH+PŘ_09
1 Lineární (vektorová) algebra
Opakování základních příkazů a syntaxí v programovacím jazyce Pascal
Geografické informační systémy
Domácí úkol Pro molekulu morfinu (vzorec si najděte na Internetu) vytvořte: FSR (kořen = atom N) SAR SSSR Popište složitost jednotlivých kroků algoritmu.
Toky v sítích.
Číslo projektu CZ.1.07/1.5.00/ Číslo materiálu VY_32_INOVACE_04-10
Transkript prezentace:

Počítačová chemie (4. přednáška) Úvod (1. přednáška) Molekula Struktura molekuly (2., 3. a 4. přednáška) Geometrie molekuly (5. přednáška) Vhled do praxe (6. přednáška) Molekulové modelování Molekulová mechanika (7. a 8. přednáška) Kvantová mechanika (9. a 10. přednáška) Molekulová dynamika (11. přednáška) Vhled do praxe (12. přednáška)

Hledání cyklů Komunikační sítě Elektrické obvody Odběr surovin a výrobků v průmyslové výrobě Logistika Chemie ….

Hledání cyklů v chemii Predikce chemických vlastností molekuly Studium reaktivity a chemická syntéza přítomnost cyklu snižuje flexibilitu molekuly cykly omezují počet možností prostorového uspořádání molekuly Vytváření názvů sloučenin cykly = výchozí struktury při tvorbě názvu

Molekulový graf ® obecný graf Informace, nutné pro hledání cyklů: množina atomů vazby mezi nimi (není nutné znát jejich násobnost) => K hledání cyklů zjednodušíme na obecný graf Molekulový graf: MG = (V, E, L, j, b) Obecný graf příslušný MG: G = (V, H), kde H obsahuje všechny hrany z E, ale násobné pouze jedenkrát. Poznámka: Dále budeme značit |V| = N a |H| = M.

Molekulový graf ® obecný graf - příklad ? ®

Molekulový graf ® obecný graf - příklad

Množina cyklů Zápis množiny cyklů grafu G = (V, H): C = {R1, …, Rc}, kde c je počet cyklů Ri je cyklus, Ri Í H a i Î 1 … c Typy množin cyklů: Množina základních cyklů (Fundamental Set of Rings, FSR) Množina všech cyklů (Set of All Rings, SAR) Množina nejmenších základních cyklů (Smallest Set of Smallest Rings, SSSR)

Množina základních cyklů (FSR) Obsahuje minimální počet cyklů, které pokrývají všechny kruhové vrcholy a hrany daného grafu. Prvky FSR (základní cykly) jsou nezávislé žádný cyklus ve FRS nelze vyjádřit jako kombinaci ostatních cyklů této množiny Celkový počet základních (tedy nezávislých) cyklů je roven cyklomatickému číslu c: c = M - N + 1

Konstrukce FSR Sestrojení kořenového stromu grafu: zvolíme libovolný vrchol v Î V potomky kořene jsou vrcholy, spojené s vrcholem v hranou prvky další vrstvy jsou vrcholy, spojené hranou s potomky kořene výše uvedený postup se opakuje až do okamžiku, kdy jsou do stromu zapojeny všechny vrcholy

Konstrukce FSR II Vlastnosti kořenového stromu: strom obsahuje N vrcholů a N-1 hran => M - N + 1 hran není ve stromu zařazeno tyto hrany se nazývají hrany kruhového uzávěru počet základních cyklů grafu = počet hran kruhového uzávěru

Konstrukce FSR III Každá hrana kruhového uzávěru generuje jeden základní cyklus a to následovně: zvolíme libovolnou hranu a postavíme se ve stromu na její dva koncové vrcholy aplikujeme metodu zpětného prohledávání do vyšších úrovní stromu směrem ke kořeni nalezené hrany přidáváme do nově vytvořeného cyklu jakmile se dvě větve spojí ve společném vrcholu, proces končí Opakováním této jednoduché procedury pro všechny hrany kruhového uzávěru vytvoříme množinu základních cyklů.

Konstrukce FSR - příklad Graf:

Konstrukce FSR - příklad Kořenový strom (s kořenem v1): Graf: Hrany kruhového uzávěru: e7, e8, e9 Cykly grafu: R1= {e1, e4, e7, e5, e2}, R2= {e2, e5, e8, e6, e3}, R3= {e1, e4, e9, e6, e3} Poznámka: Pro jinou volbu kořene nalezneme odlišnou množinu cyklů.

Složitost konstrukce FSR Vztah mezi M a N - obecný graf: Maximální počet hran vzhledem k počtu uzlů má úplný graf (každé dva uzly jsou spojeny hranou). Pro úplný graf platí: Graf má N vrcholů Z každého vrcholu vychází N-1 hran Každá hrana má 2 vrcholy* => M = (N-1).N/2 *Ve výše uvedeném vzorci musíme dělit 2, abychom hrany nepočítali dvakrát (jedenkrát za každý její koncový vrchol). => Pro obecný graf platí: 0 £ M £ (N-1).N/2

Složitost konstrukce FSR II Vztah mezi c (počet cyklů) a N - obecný graf: c = M - N +1 0 £ c £ N2/2 - 3/2 N + 1 Pro účely výpočtu časové složitosti algoritmu v nejhorším případě: c » N2

Složitost konstrukce FSR III Vztah mezi M a N - molekulový graf: Počet hran v molekule závisí na vaznosti atomů (~ stupeň vrcholů) v molekule: Vaznost atomů: C: 4 N: 3 O, S: 2 H, F, Cl, Br, I: 1. Průměrná vaznost atomu v molekule (fB) se nachází převážně v intervalu: 1,5 - 3 (čím více cyklů má molekula, tím větší je průměrná vaznost) Pro molekulový graf platí: Graf má N vrcholů Z každého vrcholu vychází fB hran Každá hrana má 2 vrcholy => M = N.fB /2

Složitost konstrukce FSR IV Vztah mezi c (počet cyklů) a N - molekulový graf: c = M - N +1 c = N.fB/2 - N +1 = N (fB/2 - 1) + 1 c se nachází převážně v intervalu 0 až N/2

Složitost konstrukce FSR V Vytvoření stromu: Přidáváme postupně N vrcholů => nutno projít N-1 hran => složitost vytvoření stromu je O(N)

Složitost konstrukce FSR VI Dohledání cyklů: Počet cyklů je c Cyklus může obsahovat nejvýše N vrcholů a tedy N-1 nových hran => složitost dohledání cyklů je O(c.N) Složitost konstrukce FSR je O(c.N).* *Pro obecný graf O(N3).

Nevýhody FSR FSR není určena jednoznačně Na grafu s více než 1 cyklem lze nalézt více cyklů, než udává cyklomatické číslo grafu Dvě cesty k obecnější množině cyklů: množina všech cyklů (SAR) množina nejmenších základních cyklů (SSSR)

Konstrukce SAR - kombinace cyklů Nechť FSR = {R1, R2, ..., Rc} je množina základních cyklů, kde Ri Í E pro i = 1, 2, ..., c. Pak každý libovolný cyklus grafu lze vytvořit kombinací (složením) hran cyklů Ri, Rj Î FSR operací XOR. Poznámka: Operace XOR se označuje symbolem Å.

Konstrukce SAR - kombinace cyklů II Nechť P a R jsou dvě množiny, pak jejich složení definujeme takto: P Å R = {e; e Î P nebo e Î R, ale ne současně} (Mají-li P a R společnou hranu, tato hrana ve výsledné množině nebude.)

Konstrukce SAR - kombinace cyklů III Operací složení nemusí vždy vzniknout cyklus: P a R jsou disjunktní: P a R sdílejí pouze jeden vrchol: P a R jsou „nevhodné“ pro složení:

Konstrukce SAR - kombinace cyklů IV Algoritmus: Vytvořit libovolnou množinu základních cyklů (FSR). FOR každou možnou k-tici cyklů z FSR, kde k = 1, 2, …, {počet cyklů} DO: IF Kombinací cyklů této k-tice vzniknul cyklus. THAN IF Tento cyklus nebyl nalezen dříve. THAN Ulož cyklus.

Konstrukce SAR - kombinace cyklů V Optimalizace algoritmu: Vytvořit libovolnou množinu základních cyklů (FSR). Rozdělit FSR na vzájemně disjunktní shluky cyklů. FOR každou možnou k-tici cyklů z každého shluku, kde k = 1, 2, …, {počet cyklů ve shluku} DO: IF Kombinací cyklů této k-tice vzniknul cyklus. THAN IF Tento cyklus nebyl nalezen dříve. THAN Ulož cyklus.

Konstrukce SAR - kombinace cyklů VI SAR vzniká kombinací k-tic základních cyklů pro k = 1, 2, …, c Pro počet k-tic platí: c c c c 0 + 1 + 2 + … + c = 2c Složitost konstrukce SAR: O(c.2c)

Konstrukce SSSR Vytvoření prořezaného grafu Vytvoření HR grafu Prohledání HR grafu a nalezení externích cyklů Prohledání HR grafu a nalezení interních cyklů

Konstrukce SSSR - prořezaný graf Definice: Prořezaný graf (pruned graph) grafu G je takový podgraf GP grafu G, který neobsahuje vrcholy stupně jedna (tzv. koncové vrcholy). Algoritmus: WHILE $ koncové vrcholy DO: Odstraň koncové vrcholy Odstraň hrany z nich vycházející

Konstrukce SSSR - prořezaný graf - příklad Isoalloxazin (flavin): Obecný graf isoalloxazinu:

Konstrukce SSSR - prořezaný graf - příklad II Isoalloxazin je součástí flavinadenindinukleotidu, enzymu, který zprostředkovává přenos dvou elektronů v rámci metabolických reakcí (např. citrátový cyklus):

Konstrukce SSSR - prořezaný graf - příklad III Obecný graf isoalloxazinu: Prořezaný graf isoalloxazinu:

Konstrukce SSSR - HR graf Definice: Reducibilní vrchol: Vrchol stupně 2. Ireducibilní vrchol: Vrchol stupně 3 a více. Homeomorfně redukovaný graf (homeomorphically reduced graph, HR graf) grafu G: Obsahuje pouze ireducibilní vrcholy grafu G. Hrana HR grafu vyjadřuje takovou cestu v grafu G, která: Spojuje dva ireducibilní vrcholy. Neobsahuje další ireducibilní vrcholy.

Konstrukce SSSR - HR graf II Zápis hrany HR grafu: (u, v, VR), kde: Vrcholy u a v jsou: počáteční (u) a koncový (v) vrchol cesty v grafu G vrcholy hrany v HR grafu, reprezentující tuto cestu Množina VR je seznamem reducibilních vrcholů, nacházejících se v grafu G na cestě z vrcholu u do vrcholu v. Algoritmus pro tvorbu HR grafu: Vstup: Prořezaný graf GP = (V, H) Výstup: HR graf HRG = (V´, H´), kde: V´ Í V H´ = { (u, v, VR) | u, v Î V´; VR = {w | w Î V - V´}}

Konstrukce SSSR - HR graf III Inicializace HRG: V´= Æ, H´ = Æ FOR " v Î V DO: IF v je ireducibilní THAN " incidentní hrany vrcholu v dej do FIFO fronty F. WHILE fronta F je neprázdná DO Vyjmi hranu h z fronty F. Vytvoř cestu, začínající v,h a pokračující dalšími hranami a vrcholy až do nejbližšího ireducibilního vrcholu u. Reducibilní vrcholy mezi v a u umísti do množiny VR. Hrany mezi v a u umísti do množiny HR. Úprava HR grafu: V´ := V´ È {v, u} H´ := H´ È {(v, u, VR)} Úprava grafu G: V := V - VR H := H - HR IF je fronta F prázdná THAN V := V - {v}

Konstrukce SSSR - HR graf - příklad Prořezaný graf: HR graf : ?

Konstrukce SSSR - HR graf - příklad Prořezaný graf: HR graf - popis: HR graf - obrázek: h1: (v3, v12, {v1, v2, v13, v14}) h2: (v3, v5, {v4}) h3: (v3, v12, Æ) h4: (v5, v10, {v6, v7, v8, v9}) h5: (v5, v10, Æ) h6: (v10,v12, {v11})

Konstrukce SSSR - vyhledání externích cyklů Definice: Externí (vnější) cyklus: Obsahuje jeden nebo dva vrcholy. Interní (vnitřní): Obsahuje tři a více vrcholů. Cykly v SSSR jsou nezávislé (žádný z nich nelze vytvořit kombinací ostatních) a pokrývají celý graf (jejich kombinací lze vytvořit SAR). Externí cykly obsahující jeden vrchol nelze vytvořit kombinací ostatních cyklů v grafu => nutně musí být v SSSR. Pro externí cykly obsahující dva vrcholy existuje jednoduchý algoritmus, který z každé množiny externích cyklů, tvořených stejnými vrcholy*, vybere podmnožinu nezávislých cyklů. *Pouze v rámci této skupiny mohou být dané externí cykly závislé.

Konstrukce SSSR - vyhledání externích cyklů II Existuje-li taková hrana HR grafu, která začíná a končí ve stejném vrcholu, tvoří externí cyklus s jedním ireducibilním vrcholem. Existuje-li J hran HR grafu pro J > 1, které začínají ve vrcholu v a končí ve vrcholu u, generují tyto hrany J - 1 externích cyklů se dvěma ireducibilními vrcholy. Algoritmus pro tvorbu množiny externích cyklů HR grafu: Vstup: HRG = (V´, H´) s ohodnocenými vrcholy Výstup: množina externích cyklů SE

Konstrukce SSSR - vyhledání externích cyklů III Inicializace SE: SE := Æ FOR " h Î H´ DO: IF h == (u, u, VR) THAN Ext_ring := {h}; SE := SE È {Ext_ring} Vytvoř frontu hran: Seřaď hrany z množiny H´ podle počátečních vrcholů, skupiny hran se stejnými počátečními vrcholy seřaď dále podle koncových vrcholů. WHILE fronta je neprázdná DO Vyjmi z fronty hranu h (h = (u, v, VR)) a všechny následující hrany s vrcholy u a v zařaď je do množiny Suv. IF |Suv| > 1 THAN Najdi v Suv hranu hmin s nejmenším počtem prvků v VR. FOR " k Î Suv, k != hmin DO Ext_ring := {k, hmin}; SE := SE È {Ext_ring}

Konstrukce SSSR - vyhledání interních cyklů Mějme HR graf s vrcholy ohodnocenými přirozenými čísly. Pak je každý cyklus jednoznačně určen vrcholem s nejmenším ohodnocením. Pokud existují cykly A a B tak, že vrcholy cyklu A Í vrcholů cyklu B, pak říkáme, že cyklus B je obálkou cyklu A. Takovýto cyklus B nemůže patřit do SSSR (do nejmenší množiny nejmenších cyklů).

Konstrukce SSSR - vyhledání interních cyklů II Inicializace SI: SI := Æ FOR " v Î V´ DO: Vytvářej strom (s kořenem v) cest v HR grafu, vzniklých prohledáváním do hloubky Při " přidání uzlu u do procházené cesty se rozhoduje: IF u == v THAN Int_ring := {hrany dané cesty} /*cesta akceptována*/ IF $ R Î SI: Int_Ring Í R THAN /*R == obálka */ SI := (SI - {R}) È {Int_ring}; odstranění závislých cyklů ELSE IF $! R Î SI: R Í Int_Ring THAN /*Int_Ring!= obálka*/ SI := SI È {Int_ring}; odstranění závislých cyklů ELSE IF o(u) < o(v) nebo (u už náleží do cesty) THAN Cesta zamítnuta, procházíme vedlejší cestu. ELSE Přidej do cesty další uzel.

Konstrukce SSSR - dokončení Množiny externích a interních cyklů sjednotíme: SALL = SE È SI HR hrany v cyklech v množině SALL nahradíme klasickými hranami, a to následovně: HR hrana: (u, v, {w1, w2, ..., wn}) se nahradí hranami: {u, w1}, {w1, w2}, ..., {wn, v} Tím jsme z množiny SALL vytvořili množinu SSSR.

Literatura k vyhledávání cyklů Havelková L.: Paralelizace sekvenčních algoritmů v chemii. Masarykova univerzita - diplomová práce (1995) Kučera L.: Kombinatorické algoritmy. SNTL, (1989)

Formáty pro zápis struktury molekuly Úplný výpis atomů a vazeb SMILES Další formáty

Formáty pro zápis struktury molekuly - úplný výpis atomů a vazeb Každý atom je označen číslem. Pro každý atom je uveden typ atomu. Jsou uvedeny informace o všech dvojicích atomů, které jsou vázány chemickou vazbou (včetně nebo bez multiplicity).

Formáty pro zápis struktury molekuly - úplný výpis atomů a vazeb II Kromě informací o atomech a vazbách může soubor obsahovat další chemické informace (např. náboje atomů a další fyzikální konstanty). Informace o vazbách mohou být uvedeny v různých formátech, například: Informace o jednotlivých vazbách: 11 30 1 // atom 11 je vázán s atomem 30 jednoduchou vazbou Informace o vaznosti atomu: 11 30 (1) 31 (1) 32 (1) // atom 11 je vázán s atomy 30, 31 a 32 //jednoduchou vazbou Poznámka: Multiplicita nemusí být uvedena, řádky mohu mít jiný formát případně obsahovat klíčová slova.

Formáty pro zápis struktury molekuly - úplný výpis atomů a vazeb III Tento formát má mnoho (= několik desítek) různých implementací. Tady je několik nejvýznamějších: PDB soubory z Protein DataBank MOL soubory pro software Elsevier MDL SDF soubory z databází organických molekul ALC, TOP, HIN, MDL, M3D, MOL2, MOLEN, atd.

Formáty pro zápis struktury molekuly - úplný výpis atomů a vazeb IV Příklad PDB souboru pro molekulu formaldehydu:

Formáty pro zápis struktury molekuly - úplný výpis atomů a vazeb V Zhodnocení: Výhody: Nejobecnější zápis struktury molekuly Snadno použitelné jako vstup pro algoritmy, pracující se strukturou Nevýhody: Zabírá hodně místa Není vhodné pro některé speciální typy úkolů.

Formáty pro zápis struktury molekuly - SMILES SMILES znamená následující: Simplified Molecular Input Line Entry Specification = zakódování struktury molekuly do řetězce. Dále uvedu stručný popis SMILES. Podrobnější informace najdete např. zde: http://www.daylight.com/dayhtml/smiles/

Formáty pro zápis struktury molekuly - SMILES – kódování atomů - syntaxe Syntaxe v jazyce*, specifikujícím SMILES: atom : '[' <mass> symbol <chiral> <hcount> <sign<charge>> ']' ; Popis: symbol chemická značka atomu * = nespecifikovaný atom <sign<charge>> znaménko a náboj <mass> atomová hmotnost <chiral> chiralita (nebudeme používat) <hcount> počet vázaných vodíků * analogie DTD.

Formáty pro zápis struktury molekuly - SMILES – kódování atomů - příklady Obrázek SMILES string Popis [S] Elementární síra C Methan (C vázaný s tolika H, aby měl plně obsazenou valneční vrstvu) S Sirovodík (S vázaný s tolika H, aby měl plně obsazenou valneční vrstvu) [OH-], [OH-1] Hydroxidový anion [235U] Izotop uranu s at. hmot. 235 [*+2] Nespecif. atom s nábojem 2+

Formáty pro zápis struktury molekuly - SMILES – kódování vazeb - syntaxe Syntaxe v jazyce, specifikujícím SMILES: bond : <empty> | '-' | '=' | '#' | ':' ; Popis: <empty> libovolná vazba (při níž je valenční vrstva plně obsazena) - jednoduchá vazba = dvojná vazba # trojná vazba : aromatická vazba

Formáty pro zápis struktury molekuly - SMILES – kódování vazeb - příklady Obrázek SMILES string Popis CH3-CH3 CC, C-C, [CH3]-[CH3] Ethan C=O, O=C Formaldehyd H-CN C#N, N#C Kyanovodík CH2=CH2 C=C (lze i cc) Ethen CH2=CH-CH=CH2 C=C-C=C (lze i cccc) 1,3-butadien ? ccc Nelze odhadnout typ vazeb

Formáty pro zápis struktury molekuly - SMILES – kódování větvení - syntaxe Syntaxe v jazyce, specifikujícím SMILES: branch : '(' <chain> ')' | '(' <chain> <branch> ')' | '(' <branch> <chain> ')' | '(' <chain> <branch> <chain> ')' ; Popis: <chain> řetězec <branch> větev

Formáty pro zápis struktury molekuly - SMILES – kódování větvení - příklady Obrázek SMILES string Popis CC(C)C(=O)O Isobutanová kyselina FC(F)F, C(F)(F)F Fluoroform O=Cl(=O)(=O)[O-], Cl(=O)(=O)(=O)[O-] Perchlorátový anion CCCC(C(=O)O)CCC 4-heptanová kyselina

Formáty pro zápis struktury molekuly - SMILES – kódování větvení - příklady Obrázek Popis Isobutanová kyselina Fluoroform Perchlorátový anion 4-heptanová kyselina

Formáty pro zápis struktury molekuly - SMILES – kódování cyklů Zvolíme v cyklu libovolnou vazbu a její koncové atomy označíme číslem. Cyklus v místě dané vazby přerušíme a zapíšeme ho jako lineární sekvenci atomů. Příklady:

Formáty pro zápis struktury molekuly - SMILES - zhodnocení Výhody SMILES: Komprimace místa Možnost zápisu molekuly pomocí regulárního výrazu Nevýhody SMILES: Nejednoznačnost (neexistuje „korektní“ pořadí atomů, 1 fakt lze zapsat více způsoby). Nutnost vytvoření úplného výpisu předtím, než lze na molekulu aplikovat nějaký algoritmus (izomorfismus, cykly atd.)

Formáty pro zápis struktury molekuly - SMILES – zhodnocení II Využití SMILES: Názvosloví a automatického generování názvů. Vyhledávání částí molekul pomocí regulárních výrazů. Rozšíření SMILES: Pokročilejší verzí SMILES stringů jsou SMARTS stringy. Jsou definovány stejně jako SMILES + obsahují navíc další pravidla. Podrobněji o SMARTS: http://www.daylight.com/dayhtml/doc/theory/ theory.smarts.html

Formáty pro zápis struktury molekuly - další formáty Fingerprints CHUCKLES, CHORTLES, and CHARTS SMIRKS, SSMARTS atd