Mercurial > repos > deepakjadmin > mayatool3_test2
comparison docs/modules/man3/PathLengthFingerprints.3 @ 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 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22) | |
2 .\" | |
3 .\" Standard preamble: | |
4 .\" ======================================================================== | |
5 .de Sp \" Vertical space (when we can't use .PP) | |
6 .if t .sp .5v | |
7 .if n .sp | |
8 .. | |
9 .de Vb \" Begin verbatim text | |
10 .ft CW | |
11 .nf | |
12 .ne \\$1 | |
13 .. | |
14 .de Ve \" End verbatim text | |
15 .ft R | |
16 .fi | |
17 .. | |
18 .\" Set up some character translations and predefined strings. \*(-- will | |
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left | |
20 .\" double quote, and \*(R" will give a right double quote. \*(C+ will | |
21 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and | |
22 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, | |
23 .\" nothing in troff, for use with C<>. | |
24 .tr \(*W- | |
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' | |
26 .ie n \{\ | |
27 . ds -- \(*W- | |
28 . ds PI pi | |
29 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch | |
30 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch | |
31 . ds L" "" | |
32 . ds R" "" | |
33 . ds C` "" | |
34 . ds C' "" | |
35 'br\} | |
36 .el\{\ | |
37 . ds -- \|\(em\| | |
38 . ds PI \(*p | |
39 . ds L" `` | |
40 . ds R" '' | |
41 'br\} | |
42 .\" | |
43 .\" Escape single quotes in literal strings from groff's Unicode transform. | |
44 .ie \n(.g .ds Aq \(aq | |
45 .el .ds Aq ' | |
46 .\" | |
47 .\" If the F register is turned on, we'll generate index entries on stderr for | |
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index | |
49 .\" entries marked with X<> in POD. Of course, you'll have to process the | |
50 .\" output yourself in some meaningful fashion. | |
51 .ie \nF \{\ | |
52 . de IX | |
53 . tm Index:\\$1\t\\n%\t"\\$2" | |
54 .. | |
55 . nr % 0 | |
56 . rr F | |
57 .\} | |
58 .el \{\ | |
59 . de IX | |
60 .. | |
61 .\} | |
62 .\" | |
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). | |
64 .\" Fear. Run. Save yourself. No user-serviceable parts. | |
65 . \" fudge factors for nroff and troff | |
66 .if n \{\ | |
67 . ds #H 0 | |
68 . ds #V .8m | |
69 . ds #F .3m | |
70 . ds #[ \f1 | |
71 . ds #] \fP | |
72 .\} | |
73 .if t \{\ | |
74 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) | |
75 . ds #V .6m | |
76 . ds #F 0 | |
77 . ds #[ \& | |
78 . ds #] \& | |
79 .\} | |
80 . \" simple accents for nroff and troff | |
81 .if n \{\ | |
82 . ds ' \& | |
83 . ds ` \& | |
84 . ds ^ \& | |
85 . ds , \& | |
86 . ds ~ ~ | |
87 . ds / | |
88 .\} | |
89 .if t \{\ | |
90 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" | |
91 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' | |
92 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' | |
93 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' | |
94 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' | |
95 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' | |
96 .\} | |
97 . \" troff and (daisy-wheel) nroff accents | |
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' | |
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' | |
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] | |
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' | |
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' | |
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] | |
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] | |
105 .ds ae a\h'-(\w'a'u*4/10)'e | |
106 .ds Ae A\h'-(\w'A'u*4/10)'E | |
107 . \" corrections for vroff | |
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' | |
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' | |
110 . \" for low resolution devices (crt and lpr) | |
111 .if \n(.H>23 .if \n(.V>19 \ | |
112 \{\ | |
113 . ds : e | |
114 . ds 8 ss | |
115 . ds o a | |
116 . ds d- d\h'-1'\(ga | |
117 . ds D- D\h'-1'\(hy | |
118 . ds th \o'bp' | |
119 . ds Th \o'LP' | |
120 . ds ae ae | |
121 . ds Ae AE | |
122 .\} | |
123 .rm #[ #] #H #V #F C | |
124 .\" ======================================================================== | |
125 .\" | |
126 .IX Title "PATHLENGTHFINGERPRINTS 1" | |
127 .TH PATHLENGTHFINGERPRINTS 1 "2015-03-29" "perl v5.14.2" "MayaChemTools" | |
128 .\" For nroff, turn off justification. Always turn off hyphenation; it makes | |
129 .\" way too many mistakes in technical documents. | |
130 .if n .ad l | |
131 .nh | |
132 .SH "NAME" | |
133 PathLengthFingerprints | |
134 .SH "SYNOPSIS" | |
135 .IX Header "SYNOPSIS" | |
136 use Fingerprints::PathLengthFingerprints; | |
137 .PP | |
138 use Fingerprints::PathLengthFingerprints qw(:all); | |
139 .SH "DESCRIPTION" | |
140 .IX Header "DESCRIPTION" | |
141 \&\fBPathLengthFingerprints\fR class provides the following methods: | |
142 .PP | |
143 new, GenerateFingerprints, , GetDescription, SetAtomIdentifierType, | |
144 SetAtomicInvariantsToUse, SetFunctionalClassesToUse, SetMaxLength, | |
145 SetMinLength, SetNumOfBitsToSetPerPath, SetType, | |
146 StringifyPathLengthFingerprints | |
147 .PP | |
148 \&\fBPathLengthFingerprints\fR is derived from \fBFingerprints\fR class which in turn | |
149 is derived from \fBObjectProperty\fR base class that provides methods not explicitly defined | |
150 in \fBPathLengthFingerprints\fR, \fBFingerprints\fR or \fBObjectProperty\fR classes using Perl's | |
151 \&\s-1AUTOLOAD\s0 functionality. These methods are generated on-the-fly for a specified object property: | |
152 .PP | |
153 .Vb 3 | |
154 \& Set<PropertyName>(<PropertyValue>); | |
155 \& $PropertyValue = Get<PropertyName>(); | |
156 \& Delete<PropertyName>(); | |
157 .Ve | |
158 .PP | |
159 The current release of MayaChemTools supports generation of \fBAtomTypesFingerpritns\fR | |
160 corresponding to following \fBAtomtomIdentifierTypes\fR: | |
161 .PP | |
162 .Vb 3 | |
163 \& AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes, | |
164 \& FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes, | |
165 \& SYBYLAtomTypes, TPSAAtomTypes, UFFAtomTypes | |
166 .Ve | |
167 .PP | |
168 Based on the values specified for \fBType\fR, \fBAtomtomIdentifierTypes\fR, \fBMinPathLength\fR and | |
169 \&\fBMaxPathLength\fR, all appropriate atom paths are generated for each atom in the molecule | |
170 and collected in a list and the list is filtered to remove any structurally duplicate paths as | |
171 indicated by the value of \fBUseUniquePaths\fR. | |
172 .PP | |
173 For molecules containing rings, atom paths starting from each atom can be traversed in four | |
174 different ways: | |
175 .PP | |
176 .Vb 7 | |
177 \& o Atom paths without any rings and sharing of bonds in traversed paths. | |
178 \& o Atom paths containing rings and without any sharing of bonds in | |
179 \& traversed paths | |
180 \& o All possible atom paths without any rings and sharing of bonds in | |
181 \& traversed paths | |
182 \& o All possible atom paths containing rings and with sharing of bonds in | |
183 \& traversed paths. | |
184 .Ve | |
185 .PP | |
186 Atom path traversal is terminated at the last ring atom. For molecules containing no rings, | |
187 first two and last two types described above are equivalent. | |
188 .PP | |
189 \&\fBAllowSharedBonds\fR and \fBAllowRings\fR allow generation of different types of paths | |
190 to be used for fingerprints generation. | |
191 .PP | |
192 The combination of \fBAllowSharedBonds\fR, \fBAllowRings\fR, and \fBUseBondSymbols\fR allows generation of | |
193 8 different types of path length fingerprints: | |
194 .PP | |
195 .Vb 1 | |
196 \& AllowSharedBonds AllowRings UseBondSymbols | |
197 \& | |
198 \& 0 0 1 \- AtomPathsNoCyclesWithBondSymbols | |
199 \& 0 1 1 \- AtomPathsWithCyclesWithBondSymbols | |
200 \& | |
201 \& 1 0 1 \- AllAtomPathsNoCyclesWithBondSymbols | |
202 \& 1 1 1 \- AllAtomPathsWithCyclesWithBondSymbols | |
203 \& [ DEFAULT ] | |
204 \& | |
205 \& 0 0 0 \- AtomPathsNoCyclesNoBondSymbols | |
206 \& 0 1 0 \- AtomPathsWithCyclesNoBondSymbols | |
207 \& | |
208 \& 1 0 0 \- AllAtomPathsNoCyclesNoBondSymbols | |
209 \& 1 1 0 \- AllAtomPathsWithCyclesNoWithBondSymbols | |
210 .Ve | |
211 .PP | |
212 Additionally, possible values for option \fB\-\-AtomIdentifierType\fR in conjunction with corresponding | |
213 specified values for \fBAtomicInvariantsToUse\fR and \fBFunctionalClassesToUse \fR changes the nature | |
214 of atom path length strings and the fingerprints. | |
215 .PP | |
216 For each atom path in the filtered atom paths list, an atom path string is created using value of | |
217 \&\fBAtomIdentifierType\fR and specified values to use for a particular atom identifier type. | |
218 Value of \fBUseBondSymbols\fR controls whether bond order symbols are used during generation | |
219 of atom path string. Atom symbol corresponds to element symbol and characters used to represent | |
220 bond order are: \fI1 \- None; 2 \- '='; 3 \- '#'; 1.5 or aromatic \- ':'; others: bond order value\fR. By default, | |
221 bond symbols are included in atom path strings. Exclusion of bond symbols in atom path strings | |
222 results in fingerprints which correspond purely to atom paths without considering bonds. | |
223 .PP | |
224 \&\fBUseUniquePaths\fR controls the removal of structurally duplicate atom path strings are removed | |
225 from the list. | |
226 .PP | |
227 For \fIPathLengthBits\fR value of \fBType\fR, each atom path is hashed to a 32 bit unsigned | |
228 integer key using \fBTextUtil::HashCode\fR function. Using the hash key as a seed for a random number | |
229 generator, a random integer value between 0 and \fBSize\fR is used to set corresponding bits | |
230 in the fingerprint bit-vector string. Value of \fBNumOfBitsToSetPerPaths\fR option controls the number | |
231 of time a random number is generated to set corresponding bits. | |
232 .PP | |
233 For \fI PathLengthCount\fR value of \fBType\fRn, the number of times an atom path appears | |
234 is tracked and a fingerprints count-string corresponding to count of atom paths is generated. | |
235 .PP | |
236 The current release of MayaChemTools generates the following types of path length | |
237 fingerprints bit-vector and vector strings: | |
238 .PP | |
239 .Vb 6 | |
240 \& FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng | |
241 \& th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110 | |
242 \& 0100010101011000101001011100110001000010001001101000001001001001001000 | |
243 \& 0010110100000111001001000001001010100100100000000011000000101001011100 | |
244 \& 0010000001000101010100000100111100110111011011011000000010110111001101 | |
245 \& 0101100011000000010001000011000010100011101100001000001000100000000... | |
246 \& | |
247 \& FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng | |
248 \& th1:MaxLength8;1024;HexadecimalString;Ascending;48caa1315d82d91122b029 | |
249 \& 42861c9409a4208182d12015509767bd0867653604481a8b1288000056090583603078 | |
250 \& 9cedae54e26596889ab121309800900490515224208421502120a0dd9200509723ae89 | |
251 \& 00024181b86c0122821d4e4880c38620dab280824b455404009f082003d52c212b4e6d | |
252 \& 6ea05280140069c780290c43 | |
253 \& | |
254 \& FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength | |
255 \& 1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2 | |
256 \& C.X2.BO2.H2 4 C.X2.BO3.H1 14 C.X3.BO3.H1 3 C.X3.BO4 10 F.X1.BO1 1 N.X | |
257 \& 2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1 | |
258 \& 2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO | |
259 \& 4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C.... | |
260 \& | |
261 \& FingerprintsVector;PathLengthCount:DREIDINGAtomTypes:MinLength1:MaxLen | |
262 \& gth8;410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_ | |
263 \& 1 N_3 1 N_R 1 O_2 2 O_3 3 C_2=O_2 2 C_2C_3 1 C_2C_R 1 C_2N_3 1 C_2O_3 | |
264 \& 1 C_3C_3 7 C_3C_R 1 C_3N_R 1 C_3O_3 2 C_R:C_R 21 C_R:N_R 2 C_RC_R 2 C | |
265 \& _RF_ 1 C_RN_3 1 C_2C_3C_3 1 C_2C_R:C_R 2 C_2N_3C_R 1 C_3C_2=O_2 1 C_3C | |
266 \& _2O_3 1 C_3C_3C_3 5 C_3C_3C_R 2 C_3C_3N_R 1 C_3C_3O_3 4 C_3C_R:C_R ... | |
267 \& | |
268 \& FingerprintsVector;PathLengthCount:EStateAtomTypes:MinLength1:MaxLengt | |
269 \& h8;454;NumericalValues;IDsAndValuesPairsString;aaCH 14 aasC 8 aasN 1 d | |
270 \& O 2 dssC 2 sCH3 2 sF 1 sOH 3 ssCH2 4 ssNH 1 sssCH 3 aaCH:aaCH 10 aaCH: | |
271 \& aasC 8 aasC:aasC 3 aasC:aasN 2 aasCaasC 2 aasCdssC 1 aasCsF 1 aasCssNH | |
272 \& 1 aasCsssCH 1 aasNssCH2 1 dO=dssC 2 dssCsOH 1 dssCssCH2 1 dssCssNH 1 | |
273 \& sCH3sssCH 2 sOHsssCH 2 ssCH2ssCH2 1 ssCH2sssCH 4 aaCH:aaCH:aaCH 6 a... | |
274 \& | |
275 \& FingerprintsVector;PathLengthCount:FunctionalClassAtomTypes:MinLength1 | |
276 \& :MaxLength8;404;NumericalValues;IDsAndValuesPairsString;Ar 22 Ar.HBA 1 | |
277 \& HBA 2 HBA.HBD 3 HBD 1 Hal 1 NI 1 None 10 Ar.HBA:Ar 2 Ar.HBANone 1 Ar: | |
278 \& Ar 21 ArAr 2 ArHBD 1 ArHal 1 ArNone 2 HBA.HBDNI 1 HBA.HBDNone 2 HBA=NI | |
279 \& 1 HBA=None 1 HBDNone 1 NINone 1 NoneNone 7 Ar.HBA:Ar:Ar 2 Ar.HBA:ArAr | |
280 \& 1 Ar.HBA:ArNone 1 Ar.HBANoneNone 1 Ar:Ar.HBA:Ar 1 Ar:Ar.HBANone 2 ... | |
281 \& | |
282 \& FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt | |
283 \& h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1 | |
284 \& 8 COO 1 CR 9 F 1 N5 1 NC=O 1 O=CN 1 O=CO 1 OC=O 1 OR 2 C5A:C5B 2 C5A:N | |
285 \& 5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1 | |
286 \& CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR | |
287 \& OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ... | |
288 \& | |
289 \& FingerprintsVector;PathLengthCount:SLogPAtomTypes:MinLength1:MaxLength | |
290 \& 8;518;NumericalValues;IDsAndValuesPairsString;C1 5 C10 1 C11 1 C14 1 C | |
291 \& 18 14 C20 4 C21 2 C22 1 C5 2 CS 2 F 1 N11 1 N4 1 O10 1 O2 3 O9 1 C10C1 | |
292 \& 1 C10N11 1 C11C1 2 C11C21 1 C14:C18 2 C14F 1 C18:C18 10 C18:C20 4 C18 | |
293 \& :C22 2 C1C5 1 C1CS 4 C20:C20 1 C20:C21 1 C20:N11 1 C20C20 2 C21:C21 1 | |
294 \& C21:N11 1 C21C5 1 C22N4 1 C5=O10 1 C5=O9 1 C5N4 1 C5O2 1 CSO2 2 C10... | |
295 \& | |
296 \& FingerprintsVector;PathLengthCount:SYBYLAtomTypes:MinLength1:MaxLength | |
297 \& 8;412;NumericalValues;IDsAndValuesPairsString;C.2 2 C.3 9 C.ar 22 F 1 | |
298 \& N.am 1 N.ar 1 O.2 1 O.3 2 O.co2 2 C.2=O.2 1 C.2=O.co2 1 C.2C.3 1 C.2C. | |
299 \& ar 1 C.2N.am 1 C.2O.co2 1 C.3C.3 7 C.3C.ar 1 C.3N.ar 1 C.3O.3 2 C.ar:C | |
300 \& .ar 21 C.ar:N.ar 2 C.arC.ar 2 C.arF 1 C.arN.am 1 C.2C.3C.3 1 C.2C.ar:C | |
301 \& .ar 2 C.2N.amC.ar 1 C.3C.2=O.co2 1 C.3C.2O.co2 1 C.3C.3C.3 5 C.3C.3... | |
302 \& | |
303 \& FingerprintsVector;PathLengthCount:TPSAAtomTypes:MinLength1:MaxLength8 | |
304 \& ;331;NumericalValues;IDsAndValuesPairsString;N21 1 N7 1 None 34 O3 2 O | |
305 \& 4 3 N21:None 2 N21None 1 N7None 2 None:None 21 None=O3 2 NoneNone 13 N | |
306 \& oneO4 3 N21:None:None 2 N21:NoneNone 2 N21NoneNone 1 N7None:None 2 N7N | |
307 \& one=O3 1 N7NoneNone 1 None:N21:None 1 None:N21None 2 None:None:None 20 | |
308 \& None:NoneNone 12 NoneN7None 1 NoneNone=O3 2 NoneNoneNone 8 NoneNon... | |
309 \& | |
310 \& FingerprintsVector;PathLengthCount:UFFAtomTypes:MinLength1:MaxLength8; | |
311 \& 410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_ 1 N_ | |
312 \& 3 1 N_R 1 O_2 2 O_3 3 C_2=O_2 2 C_2C_3 1 C_2C_R 1 C_2N_3 1 C_2O_3 1 C_ | |
313 \& 3C_3 7 C_3C_R 1 C_3N_R 1 C_3O_3 2 C_R:C_R 21 C_R:N_R 2 C_RC_R 2 C_RF_ | |
314 \& 1 C_RN_3 1 C_2C_3C_3 1 C_2C_R:C_R 2 C_2N_3C_R 1 C_3C_2=O_2 1 C_3C_2O_3 | |
315 \& 1 C_3C_3C_3 5 C_3C_3C_R 2 C_3C_3N_R 1 C_3C_3O_3 4 C_3C_R:C_R 1 C_3... | |
316 .Ve | |
317 .SS "\s-1METHODS\s0" | |
318 .IX Subsection "METHODS" | |
319 .IP "\fBnew\fR" 4 | |
320 .IX Item "new" | |
321 .Vb 2 | |
322 \& $NewPathLengthFingerprints = new PathLengthFingerprints( | |
323 \& %NamesAndValues); | |
324 .Ve | |
325 .Sp | |
326 Using specified \fIPathLengthFingerprints\fR property names and values hash, \fBnew\fR method creates a new object | |
327 and returns a reference to newly created \fBPathLengthFingerprints\fR object. By default, the following properties are | |
328 initialized: | |
329 .Sp | |
330 .Vb 10 | |
331 \& Molecule = \*(Aq\*(Aq; | |
332 \& Type = \*(Aq\*(Aq | |
333 \& Size = 1024 | |
334 \& MinSize = 32 | |
335 \& MaxSize = 2**32 | |
336 \& NumOfBitsToSetPerPath = 1 | |
337 \& MinLength = 1 | |
338 \& MaxLength = 8 | |
339 \& AllowSharedBonds = 1 | |
340 \& AllowRings = 1 | |
341 \& UseBondSymbols = 1 | |
342 \& UseUniquePaths = \*(Aq\*(Aq | |
343 \& AtomIdentifierType = \*(Aq\*(Aq | |
344 \& SetAtomicInvariantsToUse = [\*(AqAS\*(Aq] | |
345 \& FunctionalClassesToUse = [\*(AqHBD\*(Aq, \*(AqHBA\*(Aq, \*(AqPI\*(Aq, \*(AqNI\*(Aq, \*(AqAr\*(Aq, \*(AqHal\*(Aq] | |
346 .Ve | |
347 .Sp | |
348 Examples: | |
349 .Sp | |
350 .Vb 5 | |
351 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
352 \& \*(AqMolecule\*(Aq => $Molecule, | |
353 \& \*(AqType\*(Aq => \*(AqPathLengthBits\*(Aq, | |
354 \& \*(AqAtomIdentifierType\*(Aq = | |
355 \& \*(AqAtomicInvariantsAtomTypes\*(Aq); | |
356 \& | |
357 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
358 \& \*(AqMolecule\*(Aq => $Molecule, | |
359 \& \*(AqType\*(Aq => \*(AqPathLengthBits\*(Aq, | |
360 \& \*(AqSize\*(Aq => 1024, | |
361 \& \*(AqMinLength\*(Aq => 1, | |
362 \& \*(AqMaxLength\*(Aq => 8, | |
363 \& \*(AqAllowRings\*(Aq => 1, | |
364 \& \*(AqAllowSharedBonds\*(Aq => 1, | |
365 \& \*(AqUseBondSymbols\*(Aq => 1, | |
366 \& \*(AqUseUniquePaths\*(Aq => 1, | |
367 \& \*(AqAtomIdentifierType\*(Aq = | |
368 \& \*(AqAtomicInvariantsAtomTypes\*(Aq, | |
369 \& \*(AqAtomicInvariantsToUse\*(Aq => [\*(AqAS\*(Aq]); | |
370 \& | |
371 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
372 \& \*(AqMolecule\*(Aq => $Molecule, | |
373 \& \*(AqType\*(Aq => \*(AqPathLengthCount\*(Aq, | |
374 \& \*(AqMinLength\*(Aq => 1, | |
375 \& \*(AqMaxLength\*(Aq => 8, | |
376 \& \*(AqAllowRings\*(Aq => 1, | |
377 \& \*(AqAllowSharedBonds\*(Aq => 1, | |
378 \& \*(AqUseBondSymbols\*(Aq => 1, | |
379 \& \*(AqUseUniquePaths\*(Aq => 1, | |
380 \& \*(AqAtomIdentifierType\*(Aq => | |
381 \& \*(AqAtomicInvariantsAtomTypes\*(Aq, | |
382 \& \*(AqAtomicInvariantsToUse\*(Aq => [\*(AqAS\*(Aq]); | |
383 \& | |
384 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
385 \& \*(AqMolecule\*(Aq => $Molecule, | |
386 \& \*(AqType\*(Aq => \*(AqPathLengthBits\*(Aq, | |
387 \& \*(AqAtomIdentifierType\*(Aq = | |
388 \& \*(AqSLogPAtomTypes\*(Aq); | |
389 \& | |
390 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
391 \& \*(AqMolecule\*(Aq => $Molecule, | |
392 \& \*(AqType\*(Aq => \*(AqPathLengthCount\*(Aq, | |
393 \& \*(AqAtomIdentifierType\*(Aq = | |
394 \& \*(AqSYBYLAtomTypes\*(Aq); | |
395 \& | |
396 \& $PathLengthFingerprints = new PathLengthFingerprints( | |
397 \& \*(AqMolecule\*(Aq => $Molecule, | |
398 \& \*(AqType\*(Aq => \*(AqPathLengthBits\*(Aq, | |
399 \& \*(AqAtomIdentifierType\*(Aq = | |
400 \& \*(AqFunctionalClassAtomTypes\*(Aq, | |
401 \& \*(AqFunctionalClassesToUse\*(Aq => [\*(AqHBD\*(Aq, \*(AqHBA\*(Aq, \*(AqAr\*(Aq]); | |
402 \& | |
403 \& $PathLengthFingerprints\->GenerateFingerprints(); | |
404 \& print "$PathLengthFingerprints\en"; | |
405 .Ve | |
406 .IP "\fBGetDescription\fR" 4 | |
407 .IX Item "GetDescription" | |
408 .Vb 1 | |
409 \& $Description = $PathLengthFingerprints\->GetDescription(); | |
410 .Ve | |
411 .Sp | |
412 Returns a string containing description of path length fingerprints. | |
413 .IP "\fBGenerateFingerprints\fR" 4 | |
414 .IX Item "GenerateFingerprints" | |
415 .Vb 1 | |
416 \& $PathLengthFingerprints\->GenerateFingerprints(); | |
417 .Ve | |
418 .Sp | |
419 Generates path length fingerprints and returns \fIPathLengthFingerprints\fR. | |
420 .IP "\fBSetMaxLength\fR" 4 | |
421 .IX Item "SetMaxLength" | |
422 .Vb 1 | |
423 \& $PathLengthFingerprints\->SetMaxLength($Length); | |
424 .Ve | |
425 .Sp | |
426 Sets maximum value of atom path length to be used during atom path length fingerprints | |
427 generation and returns \fIPathLengthFingerprints\fR | |
428 .IP "\fBSetAtomIdentifierType\fR" 4 | |
429 .IX Item "SetAtomIdentifierType" | |
430 .Vb 1 | |
431 \& $PathLengthFingerprints\->SetAtomIdentifierType(); | |
432 .Ve | |
433 .Sp | |
434 Sets atom \fIIdentifierType\fR to use during path length fingerprints generation and | |
435 returns \fIPathLengthFingerprints\fR. | |
436 .Sp | |
437 Possible values: \fIAtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes, | |
438 FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes, SYBYLAtomTypes, | |
439 TPSAAtomTypes, UFFAtomTypes\fR. | |
440 .IP "\fBSetAtomicInvariantsToUse\fR" 4 | |
441 .IX Item "SetAtomicInvariantsToUse" | |
442 .Vb 2 | |
443 \& $PathLengthFingerprints\->SetAtomicInvariantsToUse($ValuesRef); | |
444 \& $PathLengthFingerprints\->SetAtomicInvariantsToUse(@Values); | |
445 .Ve | |
446 .Sp | |
447 Sets atomic invariants to use during \fIAtomicInvariantsAtomTypes\fR value of \fIAtomIdentifierType\fR | |
448 for path length fingerprints generation and returns \fIPathLengthFingerprints\fR. | |
449 .Sp | |
450 Possible values for atomic invariants are: \fI\s-1AS\s0, X, \s-1BO\s0, \s-1LBO\s0, \s-1SB\s0, \s-1DB\s0, \s-1TB\s0, | |
451 H, Ar, \s-1RA\s0, \s-1FC\s0, \s-1MN\s0, \s-1SM\s0\fR. Default value: \fI\s-1AS\s0\fR. | |
452 .Sp | |
453 The atomic invariants abbreviations correspond to: | |
454 .Sp | |
455 .Vb 1 | |
456 \& AS = Atom symbol corresponding to element symbol | |
457 \& | |
458 \& X<n> = Number of non\-hydrogen atom neighbors or heavy atoms | |
459 \& BO<n> = Sum of bond orders to non\-hydrogen atom neighbors or heavy atoms | |
460 \& LBO<n> = Largest bond order of non\-hydrogen atom neighbors or heavy atoms | |
461 \& SB<n> = Number of single bonds to non\-hydrogen atom neighbors or heavy atoms | |
462 \& DB<n> = Number of double bonds to non\-hydrogen atom neighbors or heavy atoms | |
463 \& TB<n> = Number of triple bonds to non\-hydrogen atom neighbors or heavy atoms | |
464 \& H<n> = Number of implicit and explicit hydrogens for atom | |
465 \& Ar = Aromatic annotation indicating whether atom is aromatic | |
466 \& RA = Ring atom annotation indicating whether atom is a ring | |
467 \& FC<+n/\-n> = Formal charge assigned to atom | |
468 \& MN<n> = Mass number indicating isotope other than most abundant isotope | |
469 \& SM<n> = Spin multiplicity of atom. Possible values: 1 (singlet), 2 (doublet) or | |
470 \& 3 (triplet) | |
471 .Ve | |
472 .Sp | |
473 Atom type generated by AtomTypes::AtomicInvariantsAtomTypes class corresponds to: | |
474 .Sp | |
475 .Vb 1 | |
476 \& AS.X<n>.BO<n>.LBO<n>.<SB><n>.<DB><n>.<TB><n>.H<n>.Ar.RA.FC<+n/\-n>.MN<n>.SM<n> | |
477 .Ve | |
478 .Sp | |
479 Except for \s-1AS\s0 which is a required atomic invariant in atom types, all other atomic invariants are | |
480 optional. Atom type specification doesn't include atomic invariants with zero or undefined values. | |
481 .Sp | |
482 In addition to usage of abbreviations for specifying atomic invariants, the following descriptive words | |
483 are also allowed: | |
484 .Sp | |
485 .Vb 12 | |
486 \& X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors | |
487 \& BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms | |
488 \& LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms | |
489 \& SB : NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms | |
490 \& DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms | |
491 \& TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms | |
492 \& H : NumOfImplicitAndExplicitHydrogens | |
493 \& Ar : Aromatic | |
494 \& RA : RingAtom | |
495 \& FC : FormalCharge | |
496 \& MN : MassNumber | |
497 \& SM : SpinMultiplicity | |
498 .Ve | |
499 .Sp | |
500 \&\fIAtomTypes::AtomicInvariantsAtomTypes\fR module is used to assign atomic invariant | |
501 atom types. | |
502 .IP "\fBSetFunctionalClassesToUse\fR" 4 | |
503 .IX Item "SetFunctionalClassesToUse" | |
504 .Vb 2 | |
505 \& $PathLengthFingerprints\->SetFunctionalClassesToUse($ValuesRef); | |
506 \& $PathLengthFingerprints\->SetFunctionalClassesToUse(@Values); | |
507 .Ve | |
508 .Sp | |
509 Sets functional classes invariants to use during \fIFunctionalClassAtomTypes\fR value of \fIAtomIdentifierType\fR | |
510 for path length fingerprints generation and returns \fIPathLengthFingerprints\fR. | |
511 .Sp | |
512 Possible values for atom functional classes are: \fIAr, \s-1CA\s0, H, \s-1HBA\s0, \s-1HBD\s0, Hal, \s-1NI\s0, \s-1PI\s0, \s-1RA\s0\fR. | |
513 Default value [ Ref 24 ]: \fI\s-1HBD\s0,HBA,PI,NI,Ar,Hal\fR. | |
514 .Sp | |
515 The functional class abbreviations correspond to: | |
516 .Sp | |
517 .Vb 9 | |
518 \& HBD: HydrogenBondDonor | |
519 \& HBA: HydrogenBondAcceptor | |
520 \& PI : PositivelyIonizable | |
521 \& NI : NegativelyIonizable | |
522 \& Ar : Aromatic | |
523 \& Hal : Halogen | |
524 \& H : Hydrophobic | |
525 \& RA : RingAtom | |
526 \& CA : ChainAtom | |
527 \& | |
528 \& Functional class atom type specification for an atom corresponds to: | |
529 \& | |
530 \& Ar.CA.H.HBA.HBD.Hal.NI.PI.RA or None | |
531 .Ve | |
532 .Sp | |
533 \&\fIAtomTypes::FunctionalClassAtomTypes\fR module is used to assign functional class atom | |
534 types. It uses following definitions [ Ref 60\-61, Ref 65\-66 ]: | |
535 .Sp | |
536 .Vb 4 | |
537 \& HydrogenBondDonor: NH, NH2, OH | |
538 \& HydrogenBondAcceptor: N[!H], O | |
539 \& PositivelyIonizable: +, NH2 | |
540 \& NegativelyIonizable: \-, C(=O)OH, S(=O)OH, P(=O)OH | |
541 .Ve | |
542 .IP "\fBSetMinLength\fR" 4 | |
543 .IX Item "SetMinLength" | |
544 .Vb 1 | |
545 \& $PathLengthFingerprints\->SetMinLength($Length); | |
546 .Ve | |
547 .Sp | |
548 Sets minimum value of atom path length to be used during atom path length fingerprints | |
549 generation and returns \fIPathLengthFingerprints\fR. | |
550 .IP "\fBSetMaxLength\fR" 4 | |
551 .IX Item "SetMaxLength" | |
552 .Vb 1 | |
553 \& $PathLengthFingerprints\->SetMaxLength($Length); | |
554 .Ve | |
555 .Sp | |
556 Sets maximum value of atom path length to be used during atom path length fingerprints | |
557 generation and returns \fIPathLengthFingerprints\fR. | |
558 .IP "\fBSetNumOfBitsToSetPerPath\fR" 4 | |
559 .IX Item "SetNumOfBitsToSetPerPath" | |
560 .Vb 1 | |
561 \& $PathLengthFingerprints\->SetNumOfBitsToSetPerPath($NumOfBits); | |
562 .Ve | |
563 .Sp | |
564 Sets number of bits to set for each path during \fIPathLengthBits\fR \fBType \fR during path length fingerprints | |
565 generation and returns \fIPathLengthFingerprints\fR. | |
566 .IP "\fBSetType\fR" 4 | |
567 .IX Item "SetType" | |
568 .Vb 1 | |
569 \& $PathLengthFingerprints\->SetType($Type); | |
570 .Ve | |
571 .Sp | |
572 Sets type of path length fingerprints and returns \fIPathLengthFingerprints\fR. Possible values: | |
573 \&\fIPathLengthBits or PathLengthCount\fR. | |
574 .IP "\fBStringifyPathLengthFingerprints\fR" 4 | |
575 .IX Item "StringifyPathLengthFingerprints" | |
576 .Vb 1 | |
577 \& $String = $PathLengthFingerprints\->StringifyPathLengthFingerprints(); | |
578 .Ve | |
579 .Sp | |
580 Returns a string containing information about \fIPathLengthFingerprints\fR object. | |
581 .SH "AUTHOR" | |
582 .IX Header "AUTHOR" | |
583 Manish Sud <msud@san.rr.com> | |
584 .SH "SEE ALSO" | |
585 .IX Header "SEE ALSO" | |
586 Fingerprints.pm, FingerprintsStringUtil.pm, AtomNeighborhoodsFingerprints.pm, | |
587 AtomTypesFingerprints.pm, EStateIndiciesFingerprints.pm, ExtendedConnectivityFingerprints.pm, | |
588 MACCSKeys.pm, TopologicalAtomPairsFingerprints.pm, TopologicalAtomTripletsFingerprints.pm, | |
589 TopologicalAtomTorsionsFingerprints.pm, TopologicalPharmacophoreAtomPairsFingerprints.pm, | |
590 TopologicalPharmacophoreAtomTripletsFingerprints.pm | |
591 .SH "COPYRIGHT" | |
592 .IX Header "COPYRIGHT" | |
593 Copyright (C) 2015 Manish Sud. All rights reserved. | |
594 .PP | |
595 This file is part of MayaChemTools. | |
596 .PP | |
597 MayaChemTools is free software; you can redistribute it and/or modify it under | |
598 the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free | |
599 Software Foundation; either version 3 of the License, or (at your option) | |
600 any later version. |