annotate mayachemtools/docs/modules/txt/MolecularDescriptorsGenerator.txt @ 9:ab29fa5c8c1f draft default tip

Uploaded
author deepakjadmin
date Thu, 15 Dec 2016 14:18:03 -0500
parents 73ae111cf86f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
2 MolecularDescriptorsGenerator
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
3
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
4 SYNOPSIS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
5 use MolecularDescriptors::MolecularDescriptorsGenerator;
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
6
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
7 use MolecularDescriptors::MolecularDescriptorsGenerator qw(:all);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
8
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
9 DESCRIPTION
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
10 MolecularDescriptorsGenerator class provides the following methods:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
11
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
12 new, GenerateDescriptors, GetAvailableClassAndDescriptorNames,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
13 GetAvailableClassNameForDescriptorName,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
14 GetAvailableDescriptorClassNames, GetAvailableDescriptorNames,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
15 GetAvailableDescriptorNamesForDescriptorClass,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
16 GetDescriptorClassParameters, GetDescriptorNames,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
17 GetDescriptorNamesAndValues, GetDescriptorValueByName,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
18 GetDescriptorValues, GetRuleOf3DescriptorNames,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
19 GetRuleOf5DescriptorNames, IsDescriptorClassNameAvailable,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
20 IsDescriptorNameAvailable, IsDescriptorsGenerationSuccessful,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
21 SetDescriptorClassParameters, SetDescriptorNames, SetMode, SetMolecule,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
22 StringifyMolecularDescriptorsGenerator
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
23
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
24 MolecularDescriptorsGenerator is derived from is derived from
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
25 ObjectProperty base class that provides methods not explicitly defined
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
26 in MolecularDescriptorsGenerator or ObjectProperty classes using Perl's
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
27 AUTOLOAD functionality. These methods are generated on-the-fly for a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
28 specified object property:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
29
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
30 Set<PropertyName>(<PropertyValue>);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
31 $PropertyValue = Get<PropertyName>();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
32 Delete<PropertyName>();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
33
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
34 MolecularDescriptorsGenerator is designed to provide a plug-in
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
35 environment for molecular descriptors development. The molecular
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
36 descriptor class modules available in MolecularDescriptors directory
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
37 under MayaChemTools/lib directory are automatically detected and loaded
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
38 into the system. The descriptor names provided by each descriptor class
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
39 module through its GetDescriptorNames function are retrieved and are
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
40 made available for calculations of their values for a specified
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
41 molecule.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
42
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
43 Any combination of available descriptor names can be specified during
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
44 calculation of descriptor values using GenerateDescriptors method. The
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
45 current release of MayaChemTools supports generation of four sets of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
46 descriptors: All available descriptors, rule of 5 or 3 descriptors, or a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
47 specified set of descriptor names.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
48
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
49 RuleOf5 [ Ref 91 ] descriptor names are: MolecularWeight,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
50 HydrogenBondDonors, HydrogenBondAcceptors, SLogP. RuleOf5 states:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
51 MolecularWeight <= 500, HydrogenBondDonors <= 5, HydrogenBondAcceptors
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
52 <= 10, and logP <= 5.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
53
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
54 RuleOf3 [ Ref 92 ] descriptor names are: MolecularWeight,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
55 RotatableBonds, HydrogenBondDonors, HydrogenBondAcceptors, SLogP, TPSA.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
56 RuleOf3 states: MolecularWeight <= 300, RotatableBonds <= 3,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
57 HydrogenBondDonors <= 3, HydrogenBondAcceptors <= 3, logP <= 3, and TPSA
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
58 <= 60.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
59
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
60 Before calculation of a specified set of descriptors by
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
61 GenerateDescriptors method, a set of descriptor calculation control
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
62 parameters for a specific descriptor class name can be set using
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
63 SetDescriptorClassParameters method. The specified control parameter
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
64 names and values are simply passed on to specified descriptor class
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
65 during instantiation of descriptor class object without performing any
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
66 validation of parameter names and associated values. It's up to the
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
67 appropriate descriptor class methods to validate these parameters and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
68 values. In addition to specified parameter names and values, the
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
69 parameter hash must also contain descriptor class name as key and value
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
70 pair with DescriptorClassName as key with class name as value.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
71
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
72 METHODS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
73 new
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
74 $NewMolecularDescriptorsGenerator = new MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
75 MolecularDescriptorsGenerator(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
76 %NamesAndValues);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
77
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
78 Using specified *MolecularDescriptorsGenerator* property names and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
79 values hash, new method creates a new object and returns a reference
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
80 to newly created MolecularDescriptorsGenerator object. By default,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
81 the following properties are initialized:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
82
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
83 Mode = 'All'
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
84 @{$This->{DescriptorNames}} = ()
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
85 %{$This->{DescriptorClassParameters}} = ()
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
86 @{$This->{DescriptorClassNames}} = ()
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
87 %{$This->{DescriptorClassObjects}} = ()
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
88 @{$This->{DescriptorValues}} = ()
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
89
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
90 Examples:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
91
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
92 $MolecularDescriptorsGenerator = new MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
93 MolecularDescriptorsGenerator(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
94 'Molecule' => $Molecule);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
95
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
96 @DescriptorNames = qw(MolecularWeight HydrogenBondDonors Fsp3Carbons)
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
97 $MolecularDescriptorsGenerator = new MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
98 MolecularDescriptorsGenerator(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
99 'Mode' => 'Specify',
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
100 'DescriptorNames' => \@DescriptorNames);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
101
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
102 $MolecularDescriptorsGenerator->SetDescriptorClassParameters(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
103 'DescriptorClassName' => 'WeightAndMassDescriptors',
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
104 'WeightPrecision' => 2,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
105 'MassPrecision' => 2);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
106
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
107 $MolecularDescriptorsGenerator->SetDescriptorClassParameters(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
108 'DescriptorClassName' => 'HydrogenBondsDescriptors',
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
109 'HydrogenBondsType' => 'HBondsType1');
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
110
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
111 $MolecularDescriptorsGenerator->SetMolecule($Molecule);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
112 $MolecularDescriptorsGenerator->GenerateDescriptors();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
113 print "MolecularDescriptorsGenerator: $MolecularDescriptorsGenerator\n";
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
114
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
115 GenerateDescriptors
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
116 $MolecularDescriptorsGenerator->GenerateDescriptors();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
117
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
118 Calculates descriptor values for specified descriptors and returns
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
119 *MolecularDescriptorsGenerator*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
120
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
121 Descriptor class objects are instantiated only once at first
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
122 invocation. During subsequent calls to GenerateDescriptors method,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
123 descriptor values are initialized and GenerateDescriptors method
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
124 provided by descriptor class is used to calculate descriptor values
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
125 for specified descriptors.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
126
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
127 GetAvailableClassAndDescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
128 %ClassAndDescriptorNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
129 GetAvailableClassAndDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
130 %ClassAndDescriptorNames = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
131 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
132 GetAvailableClassAndDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
133
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
134 Returns available descriptors class and descriptors names as a hash
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
135 containing key and value pairs corresponding to class name and an
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
136 array of descriptor names available for the class.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
137
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
138 GetAvailableClassNameForDescriptorName
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
139 $DescriptorClassName = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
140 GetAvailableClassNameForDescriptorName($DescriptorName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
141
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
142 $DescriptorClassName = MolecularDescriptors::MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
143 GetAvailableClassNameForDescriptorName($DescriptorName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
144
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
145 Returns available descriptor class name for a descriptor name.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
146
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
147 GetAvailableDescriptorClassNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
148 $Return = $MolecularDescriptorsGenerator->GetAvailableDescriptorClassNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
149
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
150 @DescriptorClassNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
151 GetAvailableDescriptorClassNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
152 @DescriptorClassNames = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
153 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
154 GetAvailableDescriptorClassNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
155
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
156 Returns available descriptor class names as an array or number of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
157 available descriptor class names in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
158
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
159 GetAvailableDescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
160 @DescriptorNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
161 GetAvailableDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
162 @DescriptorNames = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
163 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
164 GetAvailableDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
165
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
166 Returns available descriptor names as an array or number of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
167 available descriptor names in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
168
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
169 GetAvailableDescriptorNamesForDescriptorClass
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
170 @DescriptorNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
171 GetAvailableDescriptorNamesForDescriptorClass($DescriptorClassName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
172 @DescriptorNames = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
173 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
174 GetAvailableDescriptorNamesForDescriptorClass($DescriptorClassName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
175
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
176 Returns available descriptors names for a descriptor class as an
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
177 array or number of available descriptor names in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
178
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
179 GetDescriptorClassParameters
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
180 $DescriptorClassParametersRef = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
181 GetDescriptorClassParameters();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
182 $DescriptorClassParametersRef = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
183 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
184 GetDescriptorClassParameters();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
185
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
186 Returns descriptor name parameters as a reference to hash of hashes
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
187 with hash keys corresponding to class name and class parameter name
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
188 with hash value as class parameter value.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
189
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
190 GetDescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
191 @DescriptorNames = $MolecularDescriptorsGenerator->GetDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
192 @DescriptorNames = MolecularDescriptors::MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
193 GetDescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
194
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
195 Returns all available descriptor names as an array or number of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
196 available descriptors in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
197
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
198 GetDescriptorNamesAndValues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
199 %NamesAndValues = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
200 GetDescriptorNamesAndValues();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
201
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
202 Returns calculated molecular descriptor names and values as a hash
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
203 with descriptor names and values as hash key and value pairs.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
204
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
205 GetDescriptorValueByName
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
206 $Value = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
207 GetDescriptorValueByName($Name);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
208
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
209 Returns calculated descriptor values for a specified descriptor
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
210 name.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
211
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
212 GetDescriptorValues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
213 @DescriptorValues = $MolecularDescriptorsGenerator->GetDescriptorValues();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
214
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
215 Returns all calculated descriptor values as an array corresponding
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
216 to specified descriptor names.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
217
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
218 GetRuleOf3DescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
219 @DescriptorNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
220 GetRuleOf3DescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
221 @DescriptorNames = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
222 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
223 GetRuleOf3DescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
224
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
225 Returns rule of 3 descriptor names as an array or number of rule of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
226 3 descriptors in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
227
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
228 RuleOf3 [ Ref 92 ] descriptor names are: MolecularWeight,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
229 RotatableBonds, HydrogenBondDonors, HydrogenBondAcceptors, SLogP,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
230 TPSA. RuleOf3 states: MolecularWeight <= 300, RotatableBonds <= 3,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
231 HydrogenBondDonors <= 3, HydrogenBondAcceptors <= 3, logP <= 3, and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
232 TPSA <= 60.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
233
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
234 GetRuleOf5DescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
235 @DescriptorNames = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
236 GetRuleOf5DescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
237 @DescriptorNames = $MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
238 GetRuleOf5DescriptorNames();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
239
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
240 Returns rule of 5 descriptor names as an array or number of rule of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
241 4 descriptors in scalar context.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
242
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
243 RuleOf5 [ Ref 91 ] descriptor names are: MolecularWeight,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
244 HydrogenBondDonors, HydrogenBondAcceptors, SLogP. RuleOf5 states:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
245 MolecularWeight <= 500, HydrogenBondDonors <= 5,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
246 HydrogenBondAcceptors <= 10, and logP <= 5.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
247
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
248 IsDescriptorClassNameAvailable
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
249 $Status = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
250 IsDescriptorClassNameAvailable($ClassName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
251 $Status = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
252 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
253 IsDescriptorClassNameAvailable($ClassName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
254
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
255 Returns 1 or 0 based on whether specified descriptor class name is
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
256 available.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
257
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
258 IsDescriptorNameAvailable
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
259 $Status = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
260 IsDescriptorNameAvailable($DescriptorName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
261 $Status = MolecularDescriptors::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
262 MolecularDescriptorsGenerator::
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
263 IsDescriptorNameAvailable($DescriptorName);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
264
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
265 Returns 1 or 0 based on whether specified descriptor name is
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
266 available.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
267
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
268 IsDescriptorsGenerationSuccessful
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
269 $Status = $MolecularDescriptorsGenerator->
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
270 IsDescriptorsGenerationSuccessful();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
271
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
272 Returns 1 or 0 based on whether descriptors generation is
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
273 successful.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
274
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
275 SetDescriptorClassParameters
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
276 $MolecularDescriptorsGenerator->SetDescriptorClassParameters(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
277 %NamesAndValues);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
278
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
279 Sets descriptor calculation control parameters for a specified
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
280 descriptor class name and returns *MolecularDescriptorsGenerator*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
281
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
282 The specified parameter names and values are simply passed on to
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
283 specified descriptor class during instantiation of descriptor class
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
284 object without any performing any validation of parameter names and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
285 associated values. It's up to the appropriate descriptor class
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
286 methods to validate these parameters and values.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
287
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
288 In addition to specified parameter names and values, the parameter
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
289 hash must also contain descriptor class name as key and value pair
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
290 with DescriptorClassName as key with class name as value.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
291
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
292 SetDescriptorNames
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
293 $MolecularDescriptorsGenerator->SetDescriptorNames(@Names);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
294 $MolecularDescriptorsGenerator->SetDescriptorNames(\@Names);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
295
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
296 Sets descriptor names to use for generating descriptor values using
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
297 an array or reference to an array and returns
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
298 *MolecularDescriptorsGenerator*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
299
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
300 SetMode
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
301 $MolecularDescriptorsGenerator->SetMode($Mode);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
302
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
303 Sets descriptors generation mode and returns
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
304 *MolecularDescriptorsGenerator*. Possible *Mode* values: *All,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
305 RuleOf5, RuleOf3, Specify*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
306
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
307 SetMolecule
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
308 $MolecularDescriptorsGenerator->SetMolecule($Molecule);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
309
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
310 Sets molecule to use during calculation of molecular descriptors and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
311 returns *MolecularDescriptorsGenerator*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
312
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
313 StringifyMolecularDescriptorsGenerator
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
314 $String = $MolecularDescriptorsGenerator->StringifyMolecularDescriptorsGenerator();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
315
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
316 Returns a string containing information about
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
317 *MolecularDescriptorsGenerator* object.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
318
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
319 AUTHOR
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
320 Manish Sud <msud@san.rr.com>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
321
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
322 SEE ALSO
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
323 MolecularDescriptors.pm
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
324
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
325 COPYRIGHT
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
326 Copyright (C) 2015 Manish Sud. All rights reserved.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
327
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
328 This file is part of MayaChemTools.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
329
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
330 MayaChemTools is free software; you can redistribute it and/or modify it
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
331 under the terms of the GNU Lesser General Public License as published by
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
332 the Free Software Foundation; either version 3 of the License, or (at
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
333 your option) any later version.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
334