Chemie :: Reactie

Expliciete chemische reacties
Download nu

Chemie :: Reactie Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Ivan Tubert-Brohman
  • Uitgever website:
  • http://search.cpan.org/~itub/

Chemie :: Reactie Tags


Chemie :: Reactie Beschrijving

Expliciete chemische reacties De chemie :: Reactiemodule, samen met chemie :: patroon, verschaft een implementatie van expliciete chemische reacties. Een expliciete chemische reactie is een weergave van de transformatie die plaatsvindt in een bepaalde chemische reactie. In een expliciete chemische reactie wordt een substraatmolecuul getransformeerd in een productmolecuul door bestaande obligaties te breken en nieuwe obligaties te creëren tussen atooms. De weergave van een expliciete chemische reactie is een molecuul waarin de volgorde van een binding wordt onderscheiden de volgorde van de band na de chemische reactie. Aldus wordt het breken van een bestaande obligatie vertegenwoordigd door een van de volgende vóór / na paren: 3/2, 2/1, 1/0 (doorbreken van een enkele obligatie of een bestelling met één) 3/1, 2/0 (het breken van een dubbele binding of het verminderen van de bestelling met twee) 3/0 (het breken van een drievoudige obligatie) het creëren van een nieuwe obligatie wordt weergegeven door een van de volgende voor / na paren: 0/1, 1/2, 2 / 3 (Creatie van een enkele binding of verhoging van de bestelling door één) 0/2, 1/3 (oprichting van een dubbele binding of verhoging van de orde met twee) 0/3 (creatie van een drievoudige binding) Een expliciete chemische reactie $ reageren kan zijn Vooruit of achteruit aangebracht eenmaal naar een molecuul $ mol bij de eerste subgraph van $ mol gevonden die isomorf is op het substraat of product van $ reageer: mijn $ subst = $ react-> substraat; if ($ subst-> match ($ mol)) {$ react-> vooruit ($ mol, $ subst-> atom_map); } Ook kan een expliciete chemische reactie $ reageren per keer vooruitstaand of omgekeerd aangebracht op een molecuul $ mol bij elke subgraph van $ mol die isomorf is op het substraat of product van $ react: mijn $ SUB = $ react-> substraat; mijn @producten; terwijl ($ subst-> match ($ mol)) {mijn $ new_mol = $ mol-> kloon; # Begin van een vers molecuul mijn @map = $ subst-> atom_map; # Vertalen atom map naar de kloon mijn @m = kaart {$ new_mol-> by_id ($ _-> id)} @map; $ reageren-> vooruit ($ new_mol, @m); duw @Producten, $ new_mol; } Bovendien kan een expliciete chemische reactie $ reageren voorwaarts of achteruit worden aangebracht zo lang mogelijk op een molecuul $ mol op de eerste subgraph van $ mol gevonden die isomorf is op het substraat of product van $ reageer: mijn $ SUB = $ reageert -> Substraat; while ($ subst-> match ($ mol)) {$ react-> vooruit ($ mol, $ subst-> atom_map); } Synopsis Gebruik chemie :: Reactie; Gebruik chemie :: Bestand :: Gleden; mijn $ s = chemie :: patroon-> parsse ('c = cc = c.c = c', formaat => 'lacht'); Mijn $ P = Chemistry :: Pattern-> Parse ('C1 = CCCCC1', formaat => 'Smiles'); mijn% m; Want (mijn $ i = 1; $ I-atomen; $ i ++) {$ m {$ s-> atomen ($ I)} = $ p-> atomen ($ i); } Mijn $ R = Chemistry :: Reactie-> Nieuw ($ s, $ P, \% m); Vereisten: · Perl


Chemie :: Reactie Gerelateerde software