comparison docs/modules/txt/TopologicalAtomTorsionsFingerprints.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 TopologicalAtomTorsionsFingerprints
3
4 SYNOPSIS
5 use Fingerprints::TopologicalAtomTorsionsFingerprints;
6
7 use Fingerprints::TopologicalAtomTorsionsFingerprints qw(:all);
8
9 DESCRIPTION
10 TopologicalAtomTorsionsFingerprints class provides the following
11 methods:
12
13 new, GenerateFingerprints, GetAtomTorsionsIDs, GetDescription,
14 SetAtomIdentifierType, SetAtomicInvariantsToUse,
15 SetFunctionalClassesToUse, StringifyTopologicalAtomTorsionsFingerprints
16
17 TopologicalAtomTorsionsFingerprints is derived from Fingerprints class
18 which in turn is derived from ObjectProperty base class that provides
19 methods not explicitly defined in TopologicalAtomTorsionsFingerprints,
20 Fingerprints or ObjectProperty classes using Perl's AUTOLOAD
21 functionality. These methods are generated on-the-fly for a specified
22 object property:
23
24 Set<PropertyName>(<PropertyValue>);
25 $PropertyValue = Get<PropertyName>();
26 Delete<PropertyName>();
27
28 The current release of MayaChemTools supports generation of
29 TopologicalAtomTorsionsFingerprints corresponding to following
30 AtomtomIdentifierTypes:
31
32 AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
33 FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes,
34 SYBYLAtomTypes, TPSAAtomTypes, UFFAtomTypes
35
36 Based on the values specified for AtomIdentifierType along with other
37 specified parameters such as AtomicInvariantsToUse and
38 FunctionalClassesToUse, initial atom types are assigned to all
39 non-hydrogen in a molecule. All unique atom torsions are identified and
40 an atom torsion identifier is generated; the format of atom torsion
41 identifier is:
42
43 <AtomType1>-<AtomType2>-<AtomType3>-<AtomType4>
44
45 AtomType1, AtomType2, AtomType3, AtomTyp4: Assigned atom types
46
47 where AtomType1 <= AtomType2 <= AtomType3 <= AtomType4
48
49 The atom torsion identifiers for all unique atom torsions corresponding
50 to non-hydrogen atoms constitute topological atom torsions fingerprints
51 of the molecule.
52
53 The current release of MayaChemTools generates the following types of
54 topological atom torsions fingerprints vector strings:
55
56 FingerprintsVector;TopologicalAtomTorsions:AtomicInvariantsAtomTypes;3
57 3;NumericalValues;IDsAndValuesString;C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-
58 C.X3.BO4 C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-N.X3.BO3 C.X2.BO2.H2-C.X2.BO
59 2.H2-C.X3.BO3.H1-C.X2.BO2.H2 C.X2.BO2.H2-C.X2.BO2.H2-C.X3.BO3.H1-O...;
60 2 2 1 1 2 2 1 1 3 4 4 8 4 2 2 6 2 2 1 2 1 1 2 1 1 2 6 2 4 2 1 3 1
61
62 FingerprintsVector;TopologicalAtomTorsions:AtomicInvariantsAtomTypes;3
63 3;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3-C.X3.BO3.H1-C.X3
64 .BO4-C.X3.BO4 2 C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-N.X3.BO3 2 C.X2.BO2.H
65 2-C.X2.BO2.H2-C.X3.BO3.H1-C.X2.BO2.H2 1 C.X2.BO2.H2-C.X2.BO2.H2-C.X3.B
66 O3.H1-O.X1.BO1.H1 1 C.X2.BO2.H2-C.X2.BO2.H2-N.X3.BO3-C.X3.BO4 2 C.X2.B
67 O2.H2-C.X3.BO3.H1-C.X2.BO2.H2-C.X3.BO3.H1 2 C.X2.BO2.H2-C.X3.BO3.H1...
68
69 FingerprintsVector;TopologicalAtomTorsions:DREIDINGAtomTypes;27;Numeri
70 calValues;IDsAndValuesString;C_2-C_3-C_3-C_3 C_2-C_3-C_3-O_3 C_2-C_R-C
71 _R-C_3 C_2-C_R-C_R-C_R C_2-C_R-C_R-N_R C_2-N_3-C_R-C_R C_3-C_3-C_2-O_2
72 C_3-C_3-C_2-O_3 C_3-C_3-C_3-C_3 C_3-C_3-C_3-N_R C_3-C_3-C_3-O_3 C_...;
73 1 1 1 2 1 2 1 1 3 1 3 2 2 2 1 1 1 3 1 2 2 32 2 2 5 3 1
74
75 FingerprintsVector;TopologicalAtomTorsions:EStateAtomTypes;36;Numerica
76 lValues;IDsAndValuesString;aaCH-aaCH-aaCH-aaCH aaCH-aaCH-aaCH-aasC aaC
77 H-aaCH-aasC-aaCH aaCH-aaCH-aasC-aasC aaCH-aaCH-aasC-sF aaCH-aaCH-aasC-
78 ssNH aaCH-aasC-aasC-aasC aaCH-aasC-aasC-aasN aaCH-aasC-ssNH-dssC a...;
79 4 4 8 4 2 2 6 2 2 2 4 3 2 1 3 3 2 2 2 1 2 1 1 1 2 1 1 1 1 1 1 1 2 1 1 2
80
81 FingerprintsVector;TopologicalAtomTorsions:FunctionalClassAtomTypes;26
82 ;NumericalValues;IDsAndValuesString;Ar-Ar-Ar-Ar Ar-Ar-Ar-Ar.HBA Ar-Ar-
83 Ar-HBD Ar-Ar-Ar-Hal Ar-Ar-Ar-None Ar-Ar-Ar.HBA-Ar Ar-Ar-Ar.HBA-None Ar
84 -Ar-HBD-None Ar-Ar-None-HBA Ar-Ar-None-HBD Ar-Ar-None-None Ar-Ar.H...;
85 32 5 2 2 3 3 3 2 2 2 2 1 2 1 1 1 2 1 1 1 1 3 1 1 1 3
86
87 FingerprintsVector;TopologicalAtomTorsions:MMFF94AtomTypes;43;Numerica
88 lValues;IDsAndValuesString;C5A-C5B-C5B-C5A C5A-C5B-C5B-C=ON C5A-C5B-C5
89 B-CB C5A-C5B-C=ON-NC=O C5A-C5B-C=ON-O=CN C5A-C5B-CB-CB C5A-CB-CB-CB C5
90 A-N5-C5A-C5B C5A-N5-C5A-CB C5A-N5-C5A-CR C5A-N5-CR-CR C5B-C5A-CB-C...;
91 1 1 1 1 1 2 2 2 1 1 2 2 2 2 1 1 2 1 1 2 1 2 1 1 1 2 1 1 1 2 18 2 2 1 1
92 1 1 2 1 1 3 1 3
93
94 FingerprintsVector;TopologicalAtomTorsions:SLogPAtomTypes;49;Numerical
95 Values;IDsAndValuesPairsString;C1-C10-N11-C20 1 C1-C10-N11-C21 1 C1-C1
96 1-C21-C21 2 C1-C11-C21-N11 2 C1-CS-C1-C10 1 C1-CS-C1-C5 1 C1-CS-C1-CS
97 2 C10-C1-CS-O2 1 C10-N11-C20-C20 2 C10-N11-C21-C11 1 C10-N11-C21-C21 1
98 C11-C21-C21-C20 1 C11-C21-C21-C5 1 C11-C21-N11-C20 1 C14-C18-C18-C20
99 2 C18-C14-C18-C18 2 C18-C18-C14-F 2 C18-C18-C18-C18 4 C18-C18-C18-C...
100
101 FingerprintsVector;TopologicalAtomTorsions:SYBYLAtomTypes;26;Numerical
102 Values;IDsAndValuesPairsString;C.2-C.3-C.3-C.3 1 C.2-C.3-C.3-O.3 1 C.2
103 -C.ar-C.ar-C.3 1 C.2-C.ar-C.ar-C.ar 2 C.2-C.ar-C.ar-N.ar 1 C.2-N.am-C.
104 ar-C.ar 2 C.3-C.3-C.2-O.co2 2 C.3-C.3-C.3-C.3 3 C.3-C.3-C.3-N.ar 1 C.3
105 -C.3-C.3-O.3 3 C.3-C.3-C.ar-C.ar 2 C.3-C.3-C.ar-N.ar 2 C.3-C.3-N.ar-C.
106 ar 2 C.3-C.ar-C.ar-C.ar 1 C.3-C.ar-N.ar-C.3 1 C.3-C.ar-N.ar-C.ar 1 ...
107
108 FingerprintsVector;TopologicalAtomTorsions:TPSAAtomTypes;8;NumericalVa
109 lues;IDsAndValuesPairsString;N21-None-None-None 9 N7-None-None-None 4
110 None-N21-None-None 10 None-N7-None-None 3 None-N7-None-O3 1 None-None-
111 None-None 44 None-None-None-O3 3 None-None-None-O4 5
112
113 FingerprintsVector;TopologicalAtomTorsions:UFFAtomTypes;27;NumericalVa
114 lues;IDsAndValuesPairsString;C_2-C_3-C_3-C_3 1 C_2-C_3-C_3-O_3 1 C_2-C
115 _R-C_R-C_3 1 C_2-C_R-C_R-C_R 2 C_2-C_R-C_R-N_R 1 C_2-N_3-C_R-C_R 2 C_3
116 -C_3-C_2-O_2 1 C_3-C_3-C_2-O_3 1 C_3-C_3-C_3-C_3 3 C_3-C_3-C_3-N_R 1 C
117 _3-C_3-C_3-O_3 3 C_3-C_3-C_R-C_R 2 C_3-C_3-C_R-N_R 2 C_3-C_3-N_R-C_R 2
118 C_3-C_R-C_R-C_R 1 C_3-C_R-N_R-C_3 1 C_3-C_R-N_R-C_R 1 C_3-N_R-C_R-...
119
120 METHODS
121 new
122 $NewTopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
123 %NamesAndValues);
124
125 Using specified *TopologicalAtomTorsionsFingerprints* property names
126 and values hash, new method creates a new object and returns a
127 reference to newly created TopologicalAtomTorsionsFingerprints
128 object. By default, the following properties are initialized:
129
130 Molecule = ''
131 Type = 'TopologicalAtomTorsions'
132 AtomIdentifierType = ''
133 AtomicInvariantsToUse = ['AS', 'X', 'BO', 'H', 'FC']
134 FunctionalClassesToUse = ['HBD', 'HBA', 'PI', 'NI', 'Ar', 'Hal']
135
136 Examples:
137
138 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
139 'Molecule' => $Molecule,
140 'AtomIdentifierType' =>
141 'AtomicInvariantsAtomTypes');
142
143 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
144 'Molecule' => $Molecule,
145 'AtomIdentifierType' =>
146 'AtomicInvariantsAtomTypes',
147 'AtomicInvariantsToUse' =>
148 ['AS', 'X', 'BO', 'H', 'FC'] );
149
150 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
151 'Molecule' => $Molecule,
152 'AtomIdentifierType' =>
153 'DREIDINGAtomTypes');
154
155 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
156 'Molecule' => $Molecule,
157 'AtomIdentifierType' =>
158 'SYBYLAtomTypes');
159
160 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
161 'Molecule' => $Molecule,
162 'AtomIdentifierType' =>
163 'SLogPAtomTypes');
164
165 $TopologicalAtomTorsionsFingerprints = new TopologicalAtomTorsionsFingerprints(
166 'Molecule' => $Molecule,
167 'AtomIdentifierType' =>
168 'FunctionalClassAtomTypes',
169 'FunctionalClassesToUse' =>
170 ['HBD', 'HBA', 'PI', 'NI', 'Ar', 'Hal'] );
171
172
173 $TopologicalAtomTorsionsFingerprints->GenerateFingerprints();
174 print "$TopologicalAtomTorsionsFingerprints\n";
175
176 GetDescription
177 $Description = $TopologicalAtomTorsionsFingerprints->GetDescription();
178
179 Returns a string containing description of topological atom torsions
180 fingerprints.
181
182 GenerateFingerprints
183 $TopologicalAtomTorsionsFingerprints->GenerateFingerprints();
184
185 Generates topological atom torsions fingerprints and returns
186 *TopologicalAtomTorsionsFingerprints*.
187
188 GetAtomTorsionsIDs
189 $AtomPairIDsRef = $TopologicalAtomTorsionsFingerprints->GetAtomTorsionsIDs();
190 @AtomPairIDs = $TopologicalAtomTorsionsFingerprints->GetAtomTorsionsIDs();
191
192 Returns atom torsion IDs corresponding to atom torsion count values
193 in topological atom torsions fingerprints vector as an array or
194 reference to an array.
195
196 SetAtomIdentifierType
197 $TopologicalAtomTorsionsFingerprints->SetAtomIdentifierType($IdentifierType);
198
199 Sets atom *IdentifierType* to use during atom torsions fingerprints
200 generation and returns *TopologicalAtomTorsionsFingerprints*.
201
202 Possible values: *AtomicInvariantsAtomTypes, DREIDINGAtomTypes,
203 EStateAtomTypes, FunctionalClassAtomTypes, MMFF94AtomTypes,
204 SLogPAtomTypes, SYBYLAtomTypes, TPSAAtomTypes, UFFAtomTypes*.
205
206 SetAtomicInvariantsToUse
207 $TopologicalAtomTorsionsFingerprints->SetAtomicInvariantsToUse($ValuesRef);
208 $TopologicalAtomTorsionsFingerprints->SetAtomicInvariantsToUse(@Values);
209
210 Sets atomic invariants to use during *AtomicInvariantsAtomTypes*
211 value of *AtomIdentifierType* for topological atom torsions
212 fingerprints generation and returns
213 *TopologicalAtomTorsionsFingerprints*.
214
215 Possible values for atomic invariants are: *AS, X, BO, LBO, SB, DB,
216 TB, H, Ar, RA, FC, MN, SM*. Default value: *AS,X,BO,H,FC*.
217
218 The atomic invariants abbreviations correspond to:
219
220 AS = Atom symbol corresponding to element symbol
221
222 X<n> = Number of non-hydrogen atom neighbors or heavy atoms
223 BO<n> = Sum of bond orders to non-hydrogen atom neighbors or heavy atoms
224 LBO<n> = Largest bond order of non-hydrogen atom neighbors or heavy atoms
225 SB<n> = Number of single bonds to non-hydrogen atom neighbors or heavy atoms
226 DB<n> = Number of double bonds to non-hydrogen atom neighbors or heavy atoms
227 TB<n> = Number of triple bonds to non-hydrogen atom neighbors or heavy atoms
228 H<n> = Number of implicit and explicit hydrogens for atom
229 Ar = Aromatic annotation indicating whether atom is aromatic
230 RA = Ring atom annotation indicating whether atom is a ring
231 FC<+n/-n> = Formal charge assigned to atom
232 MN<n> = Mass number indicating isotope other than most abundant isotope
233 SM<n> = Spin multiplicity of atom. Possible values: 1 (singlet), 2 (doublet) or
234 3 (triplet)
235
236 Atom type generated by AtomTypes::AtomicInvariantsAtomTypes class
237 corresponds to:
238
239 AS.X<n>.BO<n>.LBO<n>.<SB><n>.<DB><n>.<TB><n>.H<n>.Ar.RA.FC<+n/-n>.MN<n>.SM<n>
240
241 Except for AS which is a required atomic invariant in atom types,
242 all other atomic invariants are optional. Atom type specification
243 doesn't include atomic invariants with zero or undefined values.
244
245 In addition to usage of abbreviations for specifying atomic
246 invariants, the following descriptive words are also allowed:
247
248 X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors
249 BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms
250 LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms
251 SB : NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms
252 DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms
253 TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms
254 H : NumOfImplicitAndExplicitHydrogens
255 Ar : Aromatic
256 RA : RingAtom
257 FC : FormalCharge
258 MN : MassNumber
259 SM : SpinMultiplicity
260
261 *AtomTypes::AtomicInvariantsAtomTypes* module is used to assign
262 atomic invariant atom types.
263
264 SetFunctionalClassesToUse
265 $TopologicalTorsionsFingerprints->SetFunctionalClassesToUse($ValuesRef);
266 $TopologicalTorsionsFingerprints->SetFunctionalClassesToUse(@Values);
267
268 Sets functional classes invariants to use during
269 *FunctionalClassAtomTypes* value of *AtomIdentifierType* for
270 topological atom torsions fingerprints generation and returns
271 *TopologicalAtomTorsionsFingerprints*.
272
273 Possible values for atom functional classes are: *Ar, CA, H, HBA,
274 HBD, Hal, NI, PI, RA*. Default value [ Ref 24 ]:
275 *HBD,HBA,PI,NI,Ar,Hal*.
276
277 The functional class abbreviations correspond to:
278
279 HBD: HydrogenBondDonor
280 HBA: HydrogenBondAcceptor
281 PI : PositivelyIonizable
282 NI : NegativelyIonizable
283 Ar : Aromatic
284 Hal : Halogen
285 H : Hydrophobic
286 RA : RingAtom
287 CA : ChainAtom
288
289 Functional class atom type specification for an atom corresponds to:
290
291 Ar.CA.H.HBA.HBD.Hal.NI.PI.RA or None
292
293 *AtomTypes::FunctionalClassAtomTypes* module is used to assign
294 functional class atom types. It uses following definitions [ Ref
295 60-61, Ref 65-66 ]:
296
297 HydrogenBondDonor: NH, NH2, OH
298 HydrogenBondAcceptor: N[!H], O
299 PositivelyIonizable: +, NH2
300 NegativelyIonizable: -, C(=O)OH, S(=O)OH, P(=O)OH
301
302 StringifyTopologicalAtomTorsionsFingerprints
303 $String = $TopologicalAtomTorsionsFingerprints->
304 StringifyTopologicalAtomTorsionsFingerprints();
305
306 Returns a string containing information about
307 *TopologicalAtomTorsionsFingerprints* object.
308
309 AUTHOR
310 Manish Sud <msud@san.rr.com>
311
312 SEE ALSO
313 Fingerprints.pm, FingerprintsStringUtil.pm,
314 AtomNeighborhoodsFingerprints.pm, AtomTypesFingerprints.pm,
315 EStateIndiciesFingerprints.pm, ExtendedConnectivityFingerprints.pm,
316 MACCSKeys.pm, PathLengthFingerprints.pm,
317 TopologicalAtomPairsFingerprints.pm,
318 TopologicalAtomTripletsFingerprints.pm,
319 TopologicalPharmacophoreAtomPairsFingerprints.pm,
320 TopologicalPharmacophoreAtomTripletsFingerprints.pm
321
322 COPYRIGHT
323 Copyright (C) 2015 Manish Sud. All rights reserved.
324
325 This file is part of MayaChemTools.
326
327 MayaChemTools is free software; you can redistribute it and/or modify it
328 under the terms of the GNU Lesser General Public License as published by
329 the Free Software Foundation; either version 3 of the License, or (at
330 your option) any later version.
331