0
|
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.
|