0
|
1 <html>
|
|
2 <head>
|
|
3 <title>MayaChemTools:Documentation:MolecularDescriptors::RingsCountDescriptors.pm</title>
|
|
4 <meta http-equiv="content-type" content="text/html;charset=utf-8">
|
|
5 <link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css">
|
|
6 </head>
|
|
7 <body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10">
|
|
8 <br/>
|
|
9 <center>
|
|
10 <a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a>
|
|
11 </center>
|
|
12 <br/>
|
|
13 <div class="DocNav">
|
|
14 <table width="100%" border=0 cellpadding=0 cellspacing=2>
|
|
15 <tr align="left" valign="top"><td width="33%" align="left"><a href="./MolecularVolumeDescriptors.html" title="MolecularVolumeDescriptors.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./RotatableBondsDescriptors.html" title="RotatableBondsDescriptors.html">Next</a></td><td width="34%" align="middle"><strong>MolecularDescriptors::RingsCountDescriptors.pm</strong></td><td width="33%" align="right"><a href="././code/RingsCountDescriptors.html" title="View source code">Code</a> | <a href="./../pdf/RingsCountDescriptors.pdf" title="PDF US Letter Size">PDF</a> | <a href="./../pdfgreen/RingsCountDescriptors.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a> | <a href="./../pdfa4/RingsCountDescriptors.pdf" title="PDF A4 Size">PDFA4</a> | <a href="./../pdfa4green/RingsCountDescriptors.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr>
|
|
16 </table>
|
|
17 </div>
|
|
18 <p>
|
|
19 </p>
|
|
20 <h2>NAME</h2>
|
|
21 <p>RingsCountDescriptors</p>
|
|
22 <p>
|
|
23 </p>
|
|
24 <h2>SYNOPSIS</h2>
|
|
25 <p>use MolecularDescriptors::RingsCountDescriptors;</p>
|
|
26 <p>use MolecularDescriptors::RingsCountDescriptors qw(:all);</p>
|
|
27 <p>
|
|
28 </p>
|
|
29 <h2>DESCRIPTION</h2>
|
|
30 <p><strong>RingsCountDescriptors</strong> class provides the following methods:</p>
|
|
31 <p> <a href="#new">new</a>, <a href="#generatedescriptors">GenerateDescriptors</a>, <a href="#getdescriptornames">GetDescriptorNames</a>, <a href="#stringifyringscountdescriptors">StringifyRingsCountDescriptors</a>
|
|
32 </p><p><strong>RingsCountDescriptors</strong> is derived from <strong>MolecularDescriptors</strong> class which in turn
|
|
33 is derived from <strong>ObjectProperty</strong> base class that provides methods not explicitly defined
|
|
34 in <strong>RingsCountDescriptors</strong>, <strong>MolecularDescriptors</strong> or <strong>ObjectProperty</strong> classes using Perl's
|
|
35 AUTOLOAD functionality. These methods are generated on-the-fly for a specified object property:</p>
|
|
36 <div class="OptionsBox">
|
|
37 Set<PropertyName>(<PropertyValue>);
|
|
38 <br/> $PropertyValue = Get<PropertyName>();
|
|
39 <br/> Delete<PropertyName>();</div>
|
|
40 <p><strong>RingsCountDescriptors</strong> class doesn't perform any ring or aromaticity detection before
|
|
41 counting their number in a molecule. Instead, it assumes ring and aromaticity detection have
|
|
42 been performed by caller using <strong>DetectRings</strong> [Ref 31] and <strong>DetectAromaticity</strong> methods
|
|
43 available in <strong>Molecule</strong>.</p>
|
|
44 <p><strong>DetectAromaticity</strong> method available in <strong>Molecule</strong> class assigns aromaticity to rings
|
|
45 using Huckel rule as explained below:</p>
|
|
46 <p>o Ring aromaticity is determined using Huckel's rule: a ring containing 4n + 2 pi electrons is
|
|
47 considered aromatic.</p>
|
|
48 <p>o Hetrocyclic rings containing N, O and S atoms fall into two classes: Basic aromatic and
|
|
49 Non-basic aromatic. In Basic aromatic hetrocyclic rings, heteroatom itself is involved in a
|
|
50 double bond. (e.g. Pyridine) However, in non-basic hetrocyclic rings, heteroatom might have
|
|
51 an attached hydrogen atom and the remaining lone pair contribute to electron delocalization
|
|
52 and contributes to 4n + 2 electrons. (e.g. Pyrrole, Furan)</p>
|
|
53 <p>o For molecules containing fused rings, each fused ring set is considered as one aromatic
|
|
54 system for counting pi electrons to satisfy Huckel's rule; In case of a failure, rings in
|
|
55 fused set are treated individually for aromaticity detection. Additionally, non-fused
|
|
56 rings are handled on their own during aromaticity detection.</p>
|
|
57 <p>
|
|
58 </p>
|
|
59 <h2>METHODS</h2>
|
|
60 <dl>
|
|
61 <dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
|
|
62 <dd>
|
|
63 <div class="OptionsBox">
|
|
64 $NewRingsCountDescriptors = new MolecularDescriptors::
|
|
65 RingsCountDescriptors(
|
|
66 %NamesAndValues);</div>
|
|
67 <p>Using specified <em>RingsCountDescriptors</em> property names and values hash, <strong>new</strong>
|
|
68 method creates a new object and returns a reference to newly created <strong>RingsCountDescriptors</strong>
|
|
69 object. By default, the following properties are initialized:</p>
|
|
70 <div class="OptionsBox">
|
|
71 Molecule = ''
|
|
72 <br/> Type = 'RingsCount'</div>
|
|
73 <div class="OptionsBox">
|
|
74 @DescriptorNames = ('Rings', 'AromaticRings')
|
|
75 <br/> @DescriptorValues = ('None', 'None')</div>
|
|
76 <p>Examples:</p>
|
|
77 <div class="OptionsBox">
|
|
78 $RingsCountDescriptors = new MolecularDescriptors::RingsCountDescriptors(
|
|
79 'Molecule' => $Molecule);</div>
|
|
80 <div class="OptionsBox">
|
|
81 $RingsCountDescriptors = new MolecularDescriptors::RingsCountDescriptors();</div>
|
|
82 <div class="OptionsBox">
|
|
83 $RingsCountDescriptors->SetMolecule($Molecule);
|
|
84 <br/> $RingsCountDescriptors->GenerateDescriptors();
|
|
85 <br/> print "RingsCountDescriptors: $RingsCountDescriptors\n";</div>
|
|
86 </dd>
|
|
87 <dt><strong><a name="generatedescriptors" class="item"><strong>GenerateDescriptors</strong></a></strong></dt>
|
|
88 <dd>
|
|
89 <div class="OptionsBox">
|
|
90 $RingsCountDescriptors->GenerateDescriptors();</div>
|
|
91 <p>Calculate number of rings and aromatic rings in a molecule and returns
|
|
92 <em>RingsCountDescriptors</em>.</p>
|
|
93 </dd>
|
|
94 <dt><strong><a name="getdescriptornames" class="item"><strong>GetDescriptorNames</strong></a></strong></dt>
|
|
95 <dd>
|
|
96 <div class="OptionsBox">
|
|
97 @DescriptorNames = $RingsCountDescriptors->GetDescriptorNames();
|
|
98 <br/> @DescriptorNames = MolecularDescriptors::RingsCountDescriptors::
|
|
99 GetDescriptorNames();</div>
|
|
100 <p>Returns all available descriptor names as an array.</p>
|
|
101 </dd>
|
|
102 <dt><strong><a name="stringifyringscountdescriptors" class="item"><strong>StringifyRingsCountDescriptors</strong></a></strong></dt>
|
|
103 <dd>
|
|
104 <div class="OptionsBox">
|
|
105 $String = $RingsCountDescriptors->
|
|
106 StringifyRingsCountDescriptors();</div>
|
|
107 <p>Returns a string containing information about <em>RingsCountDescriptors</em> object.</p>
|
|
108 </dd>
|
|
109 </dl>
|
|
110 <p>
|
|
111 </p>
|
|
112 <h2>AUTHOR</h2>
|
|
113 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
|
|
114 <p>
|
|
115 </p>
|
|
116 <h2>SEE ALSO</h2>
|
|
117 <p><a href="./MolecularDescriptors.html">MolecularDescriptors.pm</a>, <a href="./MolecularDescriptorsGenerator.html">MolecularDescriptorsGenerator.pm</a>
|
|
118 </p>
|
|
119 <p>
|
|
120 </p>
|
|
121 <h2>COPYRIGHT</h2>
|
|
122 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
|
|
123 <p>This file is part of MayaChemTools.</p>
|
|
124 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
|
|
125 the terms of the GNU Lesser General Public License as published by the Free
|
|
126 Software Foundation; either version 3 of the License, or (at your option)
|
|
127 any later version.</p>
|
|
128 <p> </p><p> </p><div class="DocNav">
|
|
129 <table width="100%" border=0 cellpadding=0 cellspacing=2>
|
|
130 <tr align="left" valign="top"><td width="33%" align="left"><a href="./MolecularVolumeDescriptors.html" title="MolecularVolumeDescriptors.html">Previous</a> <a href="./index.html" title="Table of Contents">TOC</a> <a href="./RotatableBondsDescriptors.html" title="RotatableBondsDescriptors.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>MolecularDescriptors::RingsCountDescriptors.pm</strong></td></tr>
|
|
131 </table>
|
|
132 </div>
|
|
133 <br />
|
|
134 <center>
|
|
135 <img src="../../images/h2o2.png">
|
|
136 </center>
|
|
137 </body>
|
|
138 </html>
|