comparison docs/modules/txt/RingsCountDescriptors.txt @ 0:4816e4a8ae95 draft default tip

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 09:23:18 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4816e4a8ae95
1 NAME
2 RingsCountDescriptors
3
4 SYNOPSIS
5 use MolecularDescriptors::RingsCountDescriptors;
6
7 use MolecularDescriptors::RingsCountDescriptors qw(:all);
8
9 DESCRIPTION
10 RingsCountDescriptors class provides the following methods:
11
12 new, GenerateDescriptors, GetDescriptorNames,
13 StringifyRingsCountDescriptors
14
15 RingsCountDescriptors is derived from MolecularDescriptors class which
16 in turn is derived from ObjectProperty base class that provides methods
17 not explicitly defined in RingsCountDescriptors, MolecularDescriptors or
18 ObjectProperty classes using Perl's AUTOLOAD functionality. These
19 methods are generated on-the-fly for a specified object property:
20
21 Set<PropertyName>(<PropertyValue>);
22 $PropertyValue = Get<PropertyName>();
23 Delete<PropertyName>();
24
25 RingsCountDescriptors class doesn't perform any ring or aromaticity
26 detection before counting their number in a molecule. Instead, it
27 assumes ring and aromaticity detection have been performed by caller
28 using DetectRings [Ref 31] and DetectAromaticity methods available in
29 Molecule.
30
31 DetectAromaticity method available in Molecule class assigns aromaticity
32 to rings using Huckel rule as explained below:
33
34 o Ring aromaticity is determined using Huckel's rule: a ring containing
35 4n + 2 pi electrons is considered aromatic.
36
37 o Hetrocyclic rings containing N, O and S atoms fall into two classes:
38 Basic aromatic and Non-basic aromatic. In Basic aromatic hetrocyclic
39 rings, heteroatom itself is involved in a double bond. (e.g. Pyridine)
40 However, in non-basic hetrocyclic rings, heteroatom might have an
41 attached hydrogen atom and the remaining lone pair contribute to
42 electron delocalization and contributes to 4n + 2 electrons. (e.g.
43 Pyrrole, Furan)
44
45 o For molecules containing fused rings, each fused ring set is
46 considered as one aromatic system for counting pi electrons to satisfy
47 Huckel's rule; In case of a failure, rings in fused set are treated
48 individually for aromaticity detection. Additionally, non-fused rings
49 are handled on their own during aromaticity detection.
50
51 METHODS
52 new
53 $NewRingsCountDescriptors = new MolecularDescriptors::
54 RingsCountDescriptors(
55 %NamesAndValues);
56
57 Using specified *RingsCountDescriptors* property names and values
58 hash, new method creates a new object and returns a reference to
59 newly created RingsCountDescriptors object. By default, the
60 following properties are initialized:
61
62 Molecule = ''
63 Type = 'RingsCount'
64
65 @DescriptorNames = ('Rings', 'AromaticRings')
66 @DescriptorValues = ('None', 'None')
67
68 Examples:
69
70 $RingsCountDescriptors = new MolecularDescriptors::RingsCountDescriptors(
71 'Molecule' => $Molecule);
72
73 $RingsCountDescriptors = new MolecularDescriptors::RingsCountDescriptors();
74
75 $RingsCountDescriptors->SetMolecule($Molecule);
76 $RingsCountDescriptors->GenerateDescriptors();
77 print "RingsCountDescriptors: $RingsCountDescriptors\n";
78
79 GenerateDescriptors
80 $RingsCountDescriptors->GenerateDescriptors();
81
82 Calculate number of rings and aromatic rings in a molecule and
83 returns *RingsCountDescriptors*.
84
85 GetDescriptorNames
86 @DescriptorNames = $RingsCountDescriptors->GetDescriptorNames();
87 @DescriptorNames = MolecularDescriptors::RingsCountDescriptors::
88 GetDescriptorNames();
89
90 Returns all available descriptor names as an array.
91
92 StringifyRingsCountDescriptors
93 $String = $RingsCountDescriptors->
94 StringifyRingsCountDescriptors();
95
96 Returns a string containing information about
97 *RingsCountDescriptors* object.
98
99 AUTHOR
100 Manish Sud <msud@san.rr.com>
101
102 SEE ALSO
103 MolecularDescriptors.pm, MolecularDescriptorsGenerator.pm
104
105 COPYRIGHT
106 Copyright (C) 2015 Manish Sud. All rights reserved.
107
108 This file is part of MayaChemTools.
109
110 MayaChemTools is free software; you can redistribute it and/or modify it
111 under the terms of the GNU Lesser General Public License as published by
112 the Free Software Foundation; either version 3 of the License, or (at
113 your option) any later version.
114