|
NAMEChemistry::Ring::Find - Find the rings (cycles) in a moleculeSYNOPSISuse Chemistry::Ring::Find ':all'; # find the smallest ring containing $atom my $ring = find_ring($atom); # find all the rings containing $bond my @rings = find_ring($bond, all => 1); # see below for more options # find the six 4-atom rings in cubane @rings = find_rings($cubane); # find a cubane SSSR with five rings @rings = find_rings($cubane, sssr => 1); DESCRIPTIONThe Chemistry::Ring::Find module implements a breadth-first ring finding algorithm, and it can find all rings that contain a given atom or bond, the Smallest Set of Smallest Rings (SSSR), or the "almost SSSR", which is an unambiguous set of rings for cases such as cubane.The algorithms are based on ideas from:1) Leach, A. R.; Dolata, D. P.; Prout, P. Automated Conformational Analysis and Structure Generation: Algorithms for Molecular Perception J. Chem. Inf. Comput. Sci. 1990, 30, 316-324 2) Figueras, J. Ring perception using breadth-first search. J. Chem. Inf. Comput. Sci. 1996, 36, 986-991. Ref. 2 is only used for find_ring, not for find_rings, because it has been shown that the overall SSSR method in ref 2 has bugs. Ref 1 inspired find_rings, which depends on find_ring. This module is part of the PerlMol project, <http://www.perlmol.org/>. FUNCTIONSThese functions may be exported explicitly, or all by using the :all tag, but nothing is exported by default.
BUGSThe "all" option in find_ring doesn't quite work as expected. It finds all simple rings and some bridged rings. It never finds fused rings (which is good).VERSION0.20SEE ALSOChemistry::Ring, <http://www.perlmol.org>.AUTHORIvan Tubert-Brohman <itub@cpan.org>COPYRIGHTCopyright (c) 2009 Ivan Tubert-Brohman. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Visit the GSP FreeBSD Man Page Interface. |