È­ÇÐ :: ¹ÝÀÀ

¸í½Ã Àû È­ÇÐ ¹ÝÀÀ
Áö±Ý ´Ù¿î·Îµå

È­ÇÐ :: ¹ÝÀÀ ¼øÀ§ ¹× ¿ä¾à

±¤°í

  • Rating:
  • ƯÇã:
  • Perl Artistic License
  • °¡°Ý:
  • FREE
  • °Ô½ÃÀÚ À̸§:
  • Ivan Tubert-Brohman
  • °Ô½ÃÀÚ À¥»çÀÌÆ®:
  • http://search.cpan.org/~itub/

È­ÇÐ :: ¹ÝÀÀ ű×


È­ÇÐ :: ¹ÝÀÀ ¼³¸í

¸í½Ã Àû È­ÇÐ ¹ÝÀÀ È­ÇÐ :: ÆÐÅÏ°ú ÇÔ²² È­ÇÐ :: ÆÐÅÏÀº ¸í¹éÇÑ È­ÇÐ ¹ÝÀÀÀÇ ÀÌÇàÀ» Á¦°øÇÕ´Ï´Ù. ³ë°ñÀûÀÎ È­ÇÐ ¹ÝÀÀÀº ÁÖ¾îÁø È­ÇÐ ¹ÝÀÀ¿¡¼­ ÀϾ´Â º¯ÇüÀ» ³ªÅ¸³»´Â °ÍÀÔ´Ï´Ù. ¸í¹éÇÑ È­ÇÐ ¹ÝÀÀ¿¡¼­, ±âÁú ºÐÀÚ´Â ±âÁ¸ °áÇÕÀ» Æı«ÇÏ°í ¿øÀÚ »çÀÌÀÇ »õ·Î¿î °áÇÕÀ» »ý¼ºÇÏ´Â °ÍÀ¸·Î »ý¼º µÈ Á¦Ç° ºÐÀÚ·Î º¯ÇüµÈ´Ù. ¸í¹éÇÑ È­ÇÐ ¹ÝÀÀÀÇ Ç¥ÇöÀº È­ÇÐ ¹ÝÀÀ ÀÌÀüÀÇ °áÇÕÀÇ ¼ø¼­°¡ Ưº°ÇÑ ºÐÀÚÀÌ´Ù. È­ÇÐ ¹ÝÀÀ ÈÄ¿¡ °áÇÕÀÇ ¼ø¼­. µû¶ó¼­, ±âÁ¸ °áÇÕÀÇ ÆÄ´ÜÀº 3/2, 2/1, 1/0 (´ÜÀÏ °áÇÕÀÇ ÆÄ¼Õ ¶Ç´Â ¼ø¼­¸¦ ´ÜÀ§·Î ³·Ã߰ųª 1, 1, 2/0)ÀÇ ÀüÈÄ¿¡ ´ÙÀ½ Áß Çϳª·Î Ç¥ÇöµÈ´Ù. (ÀÌÁß °áÇÕ ¶Ç´Â 2 °³¸¦ ÁÙÀÌ´Â °Í) 3/0 (Æ®¸®Çà °áÇÕÀÇ Æı«) »õ·Î¿î °áÇÕÀÇ »ý¼ºÀº ´ÙÀ½ Áß Çϳª°¡ ´ÙÀ½ Áß Çϳª·Î Ç¥½ÃµË´Ï´Ù : 0/1, 1/2, 2 / 3 (´ÜÀÏ °áÇÕ ¶Ç´Â ÁÖ¹® ¼öÁØÀÇ »ý¼º) 0/2, 1/3 (ÀÌÁß °áÇÕ ¶Ç´Â 2 °³ Áõ°¡) 0/3 (Æ®¸®Çà °áÇÕ »ý¼º) ¸í¹éÇÑ È­ÇÐ ¹ÝÀÀ $ ¹ÝÀÀÀº ÀüÁø ¶Ç´Â ¿ªÀü»ç°¡ $ MolÀÇ Ã¹ ¹ø° ¼­ºê ±×·¡ÇÁ¿¡¼­ $ molÀÇ Ã¹ ¹ø° ¼­ºê ±×·¡ÇÁ¿¡¼­ $ mol¿¡¼­ $ molÀ» Àû¿ëÇÕ´Ï´Ù. $ react : my $ subst = $ ¹ÝÀÀ -> ±âÁú; if ($ subst-> match ($ mol)) {$ ¹ÝÀÀ -> ¾ÕÀ¸·Î ($ mol, $ subst-> atom_map); } ¶ÇÇÑ ¸í½Ã Àû È­ÇÐ ¹ÝÀÀÀº $ ¹ÝÀÀÀÇ ±âÁúÀ̳ª Á¦Ç°¿¡ ´ëÇÑ isomorphic ÀÎ $ molÀÇ °¢ ¼­ºê ±×·¡ÇÁÀÇ °¢ ÇÏÀ§ ±×·¡ÇÁ¿¡¼­ $ molÀÇ ºÐÀÚ¿¡ ÇÑ ¹ø Àû¿ëµÉ ¼ö ÀÖ½À´Ï´Ù : my $ subst = $ ¹ÝÀÀ -> ±âÁú; ³» @products; ($ subst-> match ($ mol)) {My $ new_mol = $ mol-> Ŭ·Ð; # ½Å¼±ÇÑ ºÐÀÚ¿¡¼­ ½ÃÀÛÇϽʽÿÀ @map = $ subst-> atom_map; # @m = map {$ new_mol-> by_id ($ _-> id)} @ ¸ÊÀ¸·Î Atom ¸ÊÀ» º¹Á¦ÇϽʽÿÀ. $ React-> Forward ($ new_mol, @m); Ǫ½Ã @Products, $ new_mol; } ´õ¿íÀÌ, ¸í½Ã Àû È­ÇÐ ¹ÝÀÀÀº $ molÀÇ Ã¹ ¹ø° ¼­ºê ±×·¡ÇÁ¿¡¼­ $ molÀÇ Ã¹ ¹ø° ÇÏÀ§ ±×·¡ÇÁ¿¡¼­ $ molÀÇ ºÐÀÚ¿¡°Ô ÃÖ´ëÇÑ ÇÑ ¹ø¸¸ Àû¿ëµÉ ¼ö ÀÖ½À´Ï´Ù. $ react : My $ subst = $ ¹ÝÀÀ -> ±âÆÇ; ($ subst-> ($ mol)) {$ React-> Àü´Þ ($ mol, $ subst-> atom_map); } ½Ã³ñ½Ã½º »ç¿ë È­ÇÐ :: ¹ÝÀÀ; È­ÇÐ :: ÆÄÀÏ :: ¹Ì¼Ò; MY $ s = È­ÇÐ :: ÆÐÅÏ -> ±¸¹® ( 'C = CC = C.C = C', Çü½Ä => '¹Ì¼Ò'); ³» $ P = È­ÇÐ :: ÆÐÅÏ -> ±¸¹® ( 'C1 = CCCCCC1', FORMAT => 'SMILES'); ³» % m; ($ i $ i = 1, $ I ¿øÀÚ; $ i ++) {$ m {$ s-> ¿øÀÚ ($ i)} = $ p-> ¿øÀÚ ($ i); } My $ R = È­ÇÐ :: ¹ÝÀÀ -> »õ·Î¿î ($ s, $ p, \ % m); ¿ä±¸ »çÇ× : ¡¤ Perl.


È­ÇÐ :: ¹ÝÀÀ °ü·Ã ¼ÒÇÁÆ®¿þ¾î