0
|
1 NAME
|
|
2 FingerprintsFPFileIO
|
|
3
|
|
4 SYNOPSIS
|
|
5 use FileIO::FingerprintsFPFileIO;
|
|
6
|
|
7 use FileIO::FingerprintsFPFileIO qw(:all);
|
|
8
|
|
9 DESCRIPTION
|
|
10 FingerprintsFPFileIO class provides the following methods:
|
|
11
|
|
12 new, GetFingerprints, GetFingerprintsString, GetHeaderDataKeyValue,
|
|
13 GetHeaderDataKeys, GetHeaderDataKeysAndValues,
|
|
14 GetPartialFingerprintsString, GetRequiredHeaderDataKeys,
|
|
15 GetRequiredHeaderDataKeysAndValues, IsFingerprintsDataValid,
|
|
16 IsFingerprintsFPFile, IsFingerprintsFileDataValid,
|
|
17 IsHeaderDataKeyPresent, Next, Read, SetBitStringFormat, SetBitsOrder,
|
|
18 SetCompoundID, SetDetailLevel, SetFingerprints, SetFingerprintsString,
|
|
19 SetFingerprintsStringMode, SetPartialFingerprintsString,
|
|
20 SetVectorStringFormat, WriteFingerprints, WriteFingerprintsString
|
|
21
|
|
22 The following methods can also be used as functions:
|
|
23
|
|
24 IsFingerprintsFPFile
|
|
25
|
|
26 FingerprintsFPFileIO class is derived from *FileIO* class and uses its
|
|
27 methods to support generic file related functionality.
|
|
28
|
|
29 The MayaChemTools fingerprints file (FP) format with .fpf or .fp file
|
|
30 extensions supports two types of fingerprints data: fingerprints
|
|
31 bit-vectors and fingerprints vectors.
|
|
32
|
|
33 Example of FP file format containing fingerprints bit-vector string
|
|
34 data:
|
|
35
|
|
36 #
|
|
37 # Package = MayaChemTools 7.4
|
|
38 # ReleaseDate = Oct 21, 2010
|
|
39 #
|
|
40 # TimeStamp = Mon Mar 7 15:14:01 2011
|
|
41 #
|
|
42 # FingerprintsStringType = FingerprintsBitVector
|
|
43 #
|
|
44 # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
|
|
45 # Size = 1024
|
|
46 # BitStringFormat = HexadecimalString
|
|
47 # BitsOrder = Ascending
|
|
48 #
|
|
49 Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
|
|
50 Cmpd2 000000249400840040100042011001001980410c000000001010088001120...
|
|
51 ... ...
|
|
52 ... ..
|
|
53
|
|
54 Example of FP file format containing fingerprints vector string data:
|
|
55
|
|
56 #
|
|
57 # Package = MayaChemTools 7.4
|
|
58 # ReleaseDate = Oct 21, 2010
|
|
59 #
|
|
60 # TimeStamp = Mon Mar 7 15:14:01 2011
|
|
61 #
|
|
62 # FingerprintsStringType = FingerprintsVector
|
|
63 #
|
|
64 # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
|
|
65 # VectorStringFormat = IDsAndValuesString
|
|
66 # VectorValuesType = NumericalValues
|
|
67 #
|
|
68 Cmpd1 338;C F N O C:C C:N C=O CC CF CN CO C:C:C C:C:N C:CC C:CF C:CN C:
|
|
69 N:C C:NC CC:N CC=O CCC CCN CCO CNC NC=O O=CO C:C:C:C C:C:C:N C:C:CC...;
|
|
70 33 1 2 5 21 2 2 12 1 3 3 20 2 10 2 2 1 2 2 2 8 2 5 1 1 1 19 2 8 2 2 2 2
|
|
71 6 2 2 2 2 2 2 2 2 3 2 2 1 4 1 5 1 1 18 6 2 2 1 2 10 2 1 2 1 2 2 2 2 ...
|
|
72 Cmpd2 103;C N O C=N C=O CC CN CO CC=O CCC CCN CCO CNC N=CN NC=O NCN O=C
|
|
73 O C CC=O CCCC CCCN CCCO CCNC CNC=N CNC=O CNCN CCCC=O CCCCC CCCCN CC...;
|
|
74 15 4 4 1 2 13 5 2 2 15 5 3 2 2 1 1 1 2 17 7 6 5 1 1 1 2 15 8 5 7 2 2 2 2
|
|
75 1 2 1 1 3 15 7 6 8 3 4 4 3 2 2 1 2 3 14 2 4 7 4 4 4 4 1 1 1 2 1 1 1 ...
|
|
76 ... ...
|
|
77 ... ...
|
|
78
|
|
79 FP file data format consists of two main sections: header section and
|
|
80 fingerprints string data section. The header section lines start with #
|
|
81 and the first line not starting with # represents the start of
|
|
82 fingerprints string data section. The header section contains both the
|
|
83 required and optional information which is specified as key = value
|
|
84 pairs. The required information describes fingerprints bit-vector and
|
|
85 vector strings and used to generate fingerprints objects; the optional
|
|
86 information is ignored during generation of fingerpints objects.
|
|
87
|
|
88 The key = value data specification in the header section and its
|
|
89 processing follows these rules:
|
|
90
|
|
91 o Leading and trailing spaces for key = value pairs are ignored
|
|
92 o Key and value strings may contain spaces
|
|
93 o Multiple key = value pairs on a single are delimited by semicolon
|
|
94
|
|
95 The default optional header data section key = value pairs are:
|
|
96
|
|
97 # Package = MayaChemTools 7.4
|
|
98 # ReleaseDate = Oct 21, 2010
|
|
99
|
|
100 The FingerprintsStringType key is required data header key for both
|
|
101 fingerprints bit-vector and vector strings. Possible key values:
|
|
102 *FingerprintsBitVector or FingerprintsVector*. For example:
|
|
103
|
|
104 # FingerprintsStringType = FingerprintsBitVector
|
|
105
|
|
106 The required data header keys for fingerprints bit-vector string are:
|
|
107 Description, Size, BitStringFormat, and BitsOrder. Possible values for
|
|
108 BitStringFormat: *HexadecimalString or BinaryString*. Possible values
|
|
109 for BitsOrder: *Ascending or Descending*. The Description key contains
|
|
110 information about various parameters used to generate fingerprints
|
|
111 bit-vector string. The Size corresponds to number of fingerprints bits
|
|
112 and is always less than or equal to number of bits in bit-vetor string
|
|
113 which might contain extra bits at the end to round off the size to make
|
|
114 it multiple of 8. For example:
|
|
115
|
|
116 # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
|
|
117 # Size = 1024
|
|
118 # BitStringFormat = HexadecimalString
|
|
119 # BitsOrder = Ascending
|
|
120
|
|
121 The required data header keys for fingerprints vector string are:
|
|
122 Description, VectorStringFormat, and VectorValuesType. Possible values
|
|
123 for VectorStringFormat: *DsAndValuesString, IDsAndValuesPairsString,
|
|
124 ValuesAndIDsString, ValuesAndIDsPairsString or ValuesString*. Possible
|
|
125 values for VectorValuesType: *NumericalValues, OrderedNumericalValues or
|
|
126 AlphaNumericalValues*. The Description keys contains information various
|
|
127 parameters used to generate fingerprints vector string. For example:
|
|
128
|
|
129 # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
|
|
130 # VectorStringFormat = IDsAndValuesString
|
|
131 # VectorValuesType = NumericalValues
|
|
132
|
|
133 The fingerprints data section for fingerprints bit-vector string
|
|
134 contains data in the following format:
|
|
135
|
|
136 ... ...
|
|
137 CmpdID FingerprintsPartialBitVectorString
|
|
138 ... ...
|
|
139
|
|
140 For example:
|
|
141
|
|
142 ... ...
|
|
143 Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
|
|
144 ... ...
|
|
145
|
|
146 The fingerprints data section for fingerprints vector string contains
|
|
147 data in the following format:
|
|
148
|
|
149 ... ...
|
|
150 CmpdID Size;FingerprintsPartialVectorString
|
|
151 ... ...
|
|
152
|
|
153 For example:
|
|
154
|
|
155 ... ...
|
|
156 Cmpd1 338;C F N O C:C C:N C=O CC CF CN CO C:C:C C:C:N C:CC C:CF C:CN C:
|
|
157 N:C C:NC CC:N CC=O CCC CCN CCO CNC NC=O O=CO C:C:C:C C:C:C:N C:C:CC...;
|
|
158 33 1 2 5 21 2 2 12 1 3 3 20 2 10 2 2 1 2 2 2 8 2 5 1 1 1 19 2 8 2 2 2 2
|
|
159 6 2 2 2 2 2 2 2 2 3 2 2 1 4 1 5 1 1 18 6 2 2 1 2 10 2 1 2 1 2 2 2 2 ...
|
|
160 ... ...
|
|
161
|
|
162 Unlike fingerprints bit-vector string, *Size* is specified for each
|
|
163 partial fingerprints vector string: It may change from molecule to
|
|
164 molecule for same type of fingerprints.
|
|
165
|
|
166 Values IDs are optional for fingerprints vector string containing
|
|
167 *OrderedNumericalValues or AlphaNumericalValues*; however, they must be
|
|
168 present for for *NumericalValues*. Due to various possible values for
|
|
169 VectorStringFormat, the fingerprints data section for fingerprints
|
|
170 vector string supports following type of data formats:
|
|
171
|
|
172 CmpdID Size;ID1 ID2 ID3...;Value1 Value2 Value3...
|
|
173 CmpdID Size;ID1 Value1 ID2 Value2 ID3 Value3... ...
|
|
174 CmpdID Size;ValuesAndIDsString: Value1 Value2 Value3...;ID1 ID2 ID3...
|
|
175 CmpdID Size;ValuesAndIDsPairsString: Value1 ID1 Value2 ID2 Value3 ID3... ...
|
|
176 CmpdID Size;Value1 Value2 Value3 ...
|
|
177
|
|
178 However, all the fingerprints vector string data present in FP file must
|
|
179 correspond to only one of the formats shown above; multiple data formats
|
|
180 in the same file are not allowed.
|
|
181
|
|
182 The current release of MayaChemTools supports the following types of
|
|
183 fingerprint bit-vector and vector strings:
|
|
184
|
|
185 FingerprintsVector;AtomNeighborhoods:AtomicInvariantsAtomTypes:MinRadi
|
|
186 us0:MaxRadius2;41;AlphaNumericalValues;ValuesString;NR0-C.X1.BO1.H3-AT
|
|
187 C1:NR1-C.X3.BO3.H1-ATC1:NR2-C.X1.BO1.H3-ATC1:NR2-C.X3.BO4-ATC1 NR0-C.X
|
|
188 1.BO1.H3-ATC1:NR1-C.X3.BO3.H1-ATC1:NR2-C.X1.BO1.H3-ATC1:NR2-C.X3.BO4-A
|
|
189 TC1 NR0-C.X2.BO2.H2-ATC1:NR1-C.X2.BO2.H2-ATC1:NR1-C.X3.BO3.H1-ATC1:NR2
|
|
190 -C.X2.BO2.H2-ATC1:NR2-N.X3.BO3-ATC1:NR2-O.X1.BO1.H1-ATC1 NR0-C.X2.B...
|
|
191
|
|
192 FingerprintsVector;AtomTypesCount:AtomicInvariantsAtomTypes:ArbitraryS
|
|
193 ize;10;NumericalValues;IDsAndValuesString;C.X1.BO1.H3 C.X2.BO2.H2 C.X2
|
|
194 .BO3.H1 C.X3.BO3.H1 C.X3.BO4 F.X1.BO1 N.X2.BO2.H1 N.X3.BO3 O.X1.BO1.H1
|
|
195 O.X1.BO2;2 4 14 3 10 1 1 1 3 2
|
|
196
|
|
197 FingerprintsVector;AtomTypesCount:SLogPAtomTypes:ArbitrarySize;16;Nume
|
|
198 ricalValues;IDsAndValuesString;C1 C10 C11 C14 C18 C20 C21 C22 C5 CS F
|
|
199 N11 N4 O10 O2 O9;5 1 1 1 14 4 2 1 2 2 1 1 1 1 3 1
|
|
200
|
|
201 FingerprintsVector;AtomTypesCount:SLogPAtomTypes:FixedSize;67;OrderedN
|
|
202 umericalValues;IDsAndValuesString;C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C
|
|
203 12 C13 C14 C15 C16 C17 C18 C19 C20 C21 C22 C23 C24 C25 C26 C27 CS N1 N
|
|
204 2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 NS O1 O2 O3 O4 O5 O6 O7 O8
|
|
205 O9 O10 O11 O12 OS F Cl Br I Hal P S1 S2 S3 Me1 Me2;5 0 0 0 2 0 0 0 0 1
|
|
206 1 0 0 1 0 0 0 14 0 4 2 1 0 0 0 0 0 2 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0...
|
|
207
|
|
208 FingerprintsVector;EStateIndicies:ArbitrarySize;11;NumericalValues;IDs
|
|
209 AndValuesString;SaaCH SaasC SaasN SdO SdssC SsCH3 SsF SsOH SssCH2 SssN
|
|
210 H SsssCH;24.778 4.387 1.993 25.023 -1.435 3.975 14.006 29.759 -0.073 3
|
|
211 .024 -2.270
|
|
212
|
|
213 FingerprintsVector;EStateIndicies:FixedSize;87;OrderedNumericalValues;
|
|
214 ValuesString;0 0 0 0 0 0 0 3.975 0 -0.073 0 0 24.778 -2.270 0 0 -1.435
|
|
215 4.387 0 0 0 0 0 0 3.024 0 0 0 0 0 0 0 1.993 0 29.759 25.023 0 0 0 0 1
|
|
216 4.006 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
|
217 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
|
218
|
|
219 FingerprintsVector;ExtendedConnectivity:AtomicInvariantsAtomTypes:Radi
|
|
220 us2;60;AlphaNumericalValues;ValuesString;73555770 333564680 352413391
|
|
221 666191900 1001270906 1371674323 1481469939 1977749791 2006158649 21414
|
|
222 08799 49532520 64643108 79385615 96062769 273726379 564565671 85514103
|
|
223 5 906706094 988546669 1018231313 1032696425 1197507444 1331250018 1338
|
|
224 532734 1455473691 1607485225 1609687129 1631614296 1670251330 17303...
|
|
225
|
|
226 FingerprintsVector;ExtendedConnectivityCount:AtomicInvariantsAtomTypes
|
|
227 :Radius2;60;NumericalValues;IDsAndValuesString;73555770 333564680 3524
|
|
228 13391 666191900 1001270906 1371674323 1481469939 1977749791 2006158649
|
|
229 2141408799 49532520 64643108 79385615 96062769 273726379 564565671...;
|
|
230 3 2 1 1 14 1 2 10 4 3 1 1 1 1 2 1 2 1 1 1 2 3 1 1 2 1 3 3 8 2 2 2 6 2
|
|
231 1 2 1 1 2 1 1 1 2 1 1 2 1 2 1 1 1 1 1 1 1 1 1 2 1 1
|
|
232
|
|
233 FingerprintsBitVector;ExtendedConnectivityBits:AtomicInvariantsAtomTyp
|
|
234 es:Radius2;1024;BinaryString;Ascending;0000000000000000000000000000100
|
|
235 0000000001010000000110000011000000000000100000000000000000000000100001
|
|
236 1000000110000000000000000000000000010011000000000000000000000000010000
|
|
237 0000000000000000000000000010000000000000000001000000000000000000000000
|
|
238 0000000000010000100001000000000000101000000000000000100000000000000...
|
|
239
|
|
240 FingerprintsVector;ExtendedConnectivity:FunctionalClassAtomTypes:Radiu
|
|
241 s2;57;AlphaNumericalValues;ValuesString;24769214 508787397 850393286 8
|
|
242 62102353 981185303 1231636850 1649386610 1941540674 263599683 32920567
|
|
243 1 571109041 639579325 683993318 723853089 810600886 885767127 90326012
|
|
244 7 958841485 981022393 1126908698 1152248391 1317567065 1421489994 1455
|
|
245 632544 1557272891 1826413669 1983319256 2015750777 2029559552 20404...
|
|
246
|
|
247 FingerprintsVector;ExtendedConnectivity:EStateAtomTypes:Radius2;62;Alp
|
|
248 haNumericalValues;ValuesString;25189973 528584866 662581668 671034184
|
|
249 926543080 1347067490 1738510057 1759600920 2034425745 2097234755 21450
|
|
250 44754 96779665 180364292 341712110 345278822 386540408 387387308 50430
|
|
251 1706 617094135 771528807 957666640 997798220 1158349170 1291258082 134
|
|
252 1138533 1395329837 1420277211 1479584608 1486476397 1487556246 1566...
|
|
253
|
|
254 FingerprintsBitVector;MACCSKeyBits;166;BinaryString;Ascending;00000000
|
|
255 0000000000000000000000000000000001001000010010000000010010000000011100
|
|
256 0100101010111100011011000100110110000011011110100110111111111111011111
|
|
257 11111111111110111000
|
|
258
|
|
259 FingerprintsBitVector;MACCSKeyBits;322;BinaryString;Ascending;11101011
|
|
260 1110011111100101111111000111101100110000000000000011100010000000000000
|
|
261 0000000000000000000000000000000000000000000000101000000000000000000000
|
|
262 0000000000000000000000000000000000000000000000000000000000000000000000
|
|
263 0000000000000000000000000000000000000011000000000000000000000000000000
|
|
264 0000000000000000000000000000000000000000
|
|
265
|
|
266 FingerprintsVector;MACCSKeyCount;166;OrderedNumericalValues;ValuesStri
|
|
267 ng;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
|
268 0 0 0 0 0 0 0 1 0 0 3 0 0 0 0 4 0 0 2 0 0 0 0 0 0 0 0 2 0 0 2 0 0 0 0
|
|
269 0 0 0 0 1 1 8 0 0 0 1 0 0 1 0 1 0 1 0 3 1 3 1 0 0 0 1 2 0 11 1 0 0 0
|
|
270 5 0 0 1 2 0 1 1 0 0 0 0 0 1 1 0 1 1 1 1 0 4 0 0 1 1 0 4 6 1 1 1 2 1 1
|
|
271 3 5 2 2 0 5 3 5 1 1 2 5 1 2 1 2 4 8 3 5 5 2 2 0 3 5 4 1
|
|
272
|
|
273 FingerprintsVector;MACCSKeyCount;322;OrderedNumericalValues;ValuesStri
|
|
274 ng;14 8 2 0 2 0 4 4 2 1 4 0 0 2 5 10 5 2 1 0 0 2 0 5 13 3 28 5 5 3 0 0
|
|
275 0 4 2 1 1 0 1 1 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 22 5 3 0 0 0 1 0
|
|
276 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
|
277 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 2 0 0 0 0 0 0 0 0 0
|
|
278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
|
|
279
|
|
280 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
|
|
281 th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
|
|
282 0100010101011000101001011100110001000010001001101000001001001001001000
|
|
283 0010110100000111001001000001001010100100100000000011000000101001011100
|
|
284 0010000001000101010100000100111100110111011011011000000010110111001101
|
|
285 0101100011000000010001000011000010100011101100001000001000100000000...
|
|
286
|
|
287 FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
|
|
288 1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
|
|
289 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
|
|
290 2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1
|
|
291 2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
|
|
292 4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C....
|
|
293
|
|
294 FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt
|
|
295 h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1
|
|
296 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
|
|
297 5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1
|
|
298 CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR
|
|
299 OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ...
|
|
300
|
|
301 FingerprintsVector;TopologicalAtomPairs:AtomicInvariantsAtomTypes:MinD
|
|
302 istance1:MaxDistance10;223;NumericalValues;IDsAndValuesString;C.X1.BO1
|
|
303 .H3-D1-C.X3.BO3.H1 C.X2.BO2.H2-D1-C.X2.BO2.H2 C.X2.BO2.H2-D1-C.X3.BO3.
|
|
304 H1 C.X2.BO2.H2-D1-C.X3.BO4 C.X2.BO2.H2-D1-N.X3.BO3 C.X2.BO3.H1-D1-...;
|
|
305 2 1 4 1 1 10 8 1 2 6 1 2 2 1 2 1 2 2 1 2 1 5 1 10 12 2 2 1 2 1 9 1 3 1
|
|
306 1 1 2 2 1 3 6 1 6 14 2 2 2 3 1 3 1 8 2 2 1 3 2 6 1 2 2 5 1 3 1 23 1...
|
|
307
|
|
308 FingerprintsVector;TopologicalAtomPairs:FunctionalClassAtomTypes:MinDi
|
|
309 stance1:MaxDistance10;144;NumericalValues;IDsAndValuesString;Ar-D1-Ar
|
|
310 Ar-D1-Ar.HBA Ar-D1-HBD Ar-D1-Hal Ar-D1-None Ar.HBA-D1-None HBA-D1-NI H
|
|
311 BA-D1-None HBA.HBD-D1-NI HBA.HBD-D1-None HBD-D1-None NI-D1-None No...;
|
|
312 23 2 1 1 2 1 1 1 1 2 1 1 7 28 3 1 3 2 8 2 1 1 1 5 1 5 24 3 3 4 2 13 4
|
|
313 1 1 4 1 5 22 4 4 3 1 19 1 1 1 1 1 2 2 3 1 1 8 25 4 5 2 3 1 26 1 4 1 ...
|
|
314
|
|
315 FingerprintsVector;TopologicalAtomTorsions:AtomicInvariantsAtomTypes;3
|
|
316 3;NumericalValues;IDsAndValuesString;C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-
|
|
317 C.X3.BO4 C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-N.X3.BO3 C.X2.BO2.H2-C.X2.BO
|
|
318 2.H2-C.X3.BO3.H1-C.X2.BO2.H2 C.X2.BO2.H2-C.X2.BO2.H2-C.X3.BO3.H1-O...;
|
|
319 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
|
|
320
|
|
321 FingerprintsVector;TopologicalAtomTorsions:EStateAtomTypes;36;Numerica
|
|
322 lValues;IDsAndValuesString;aaCH-aaCH-aaCH-aaCH aaCH-aaCH-aaCH-aasC aaC
|
|
323 H-aaCH-aasC-aaCH aaCH-aaCH-aasC-aasC aaCH-aaCH-aasC-sF aaCH-aaCH-aasC-
|
|
324 ssNH aaCH-aasC-aasC-aasC aaCH-aasC-aasC-aasN aaCH-aasC-ssNH-dssC a...;
|
|
325 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
|
|
326
|
|
327 FingerprintsVector;TopologicalAtomTriplets:AtomicInvariantsAtomTypes:M
|
|
328 inDistance1:MaxDistance10;3096;NumericalValues;IDsAndValuesString;C.X1
|
|
329 .BO1.H3-D1-C.X1.BO1.H3-D1-C.X3.BO3.H1-D2 C.X1.BO1.H3-D1-C.X2.BO2.H2-D1
|
|
330 0-C.X3.BO4-D9 C.X1.BO1.H3-D1-C.X2.BO2.H2-D3-N.X3.BO3-D4 C.X1.BO1.H3-D1
|
|
331 -C.X2.BO2.H2-D4-C.X2.BO2.H2-D5 C.X1.BO1.H3-D1-C.X2.BO2.H2-D6-C.X3....;
|
|
332 1 2 2 2 2 2 2 2 8 8 4 8 4 4 2 2 2 2 4 2 2 2 4 2 2 2 2 1 2 2 4 4 4 2 2
|
|
333 2 4 4 4 8 4 4 2 4 4 4 2 4 4 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 8...
|
|
334
|
|
335 FingerprintsVector;TopologicalAtomTriplets:SYBYLAtomTypes:MinDistance1
|
|
336 :MaxDistance10;2332;NumericalValues;IDsAndValuesString;C.2-D1-C.2-D9-C
|
|
337 .3-D10 C.2-D1-C.2-D9-C.ar-D10 C.2-D1-C.3-D1-C.3-D2 C.2-D1-C.3-D10-C.3-
|
|
338 D9 C.2-D1-C.3-D2-C.3-D3 C.2-D1-C.3-D2-C.ar-D3 C.2-D1-C.3-D3-C.3-D4 C.2
|
|
339 -D1-C.3-D3-N.ar-D4 C.2-D1-C.3-D3-O.3-D2 C.2-D1-C.3-D4-C.3-D5 C.2-D1-C.
|
|
340 3-D5-C.3-D6 C.2-D1-C.3-D5-O.3-D4 C.2-D1-C.3-D6-C.3-D7 C.2-D1-C.3-D7...
|
|
341
|
|
342 FingerprintsVector;TopologicalPharmacophoreAtomPairs:ArbitrarySize:Min
|
|
343 Distance1:MaxDistance10;54;NumericalValues;IDsAndValuesString;H-D1-H H
|
|
344 -D1-NI HBA-D1-NI HBD-D1-NI H-D2-H H-D2-HBA H-D2-HBD HBA-D2-HBA HBA-D2-
|
|
345 HBD H-D3-H H-D3-HBA H-D3-HBD H-D3-NI HBA-D3-NI HBD-D3-NI H-D4-H H-D4-H
|
|
346 BA H-D4-HBD HBA-D4-HBA HBA-D4-HBD HBD-D4-HBD H-D5-H H-D5-HBA H-D5-...;
|
|
347 18 1 2 1 22 12 8 1 2 18 6 3 1 1 1 22 13 6 5 7 2 28 9 5 1 1 1 36 16 10
|
|
348 3 4 1 37 10 8 1 35 10 9 3 3 1 28 7 7 4 18 16 12 5 1 2 1
|
|
349
|
|
350 FingerprintsVector;TopologicalPharmacophoreAtomPairs:FixedSize:MinDist
|
|
351 ance1:MaxDistance10;150;OrderedNumericalValues;ValuesString;18 0 0 1 0
|
|
352 0 0 2 0 0 1 0 0 0 0 22 12 8 0 0 1 2 0 0 0 0 0 0 0 0 18 6 3 1 0 0 0 1
|
|
353 0 0 1 0 0 0 0 22 13 6 0 0 5 7 0 0 2 0 0 0 0 0 28 9 5 1 0 0 0 1 0 0 1 0
|
|
354 0 0 0 36 16 10 0 0 3 4 0 0 1 0 0 0 0 0 37 10 8 0 0 0 0 1 0 0 0 0 0 0
|
|
355 0 35 10 9 0 0 3 3 0 0 1 0 0 0 0 0 28 7 7 4 0 0 0 0 0 0 0 0 0 0 0 18...
|
|
356
|
|
357 FingerprintsVector;TopologicalPharmacophoreAtomTriplets:ArbitrarySize:
|
|
358 MinDistance1:MaxDistance10;696;NumericalValues;IDsAndValuesString;Ar1-
|
|
359 Ar1-Ar1 Ar1-Ar1-H1 Ar1-Ar1-HBA1 Ar1-Ar1-HBD1 Ar1-H1-H1 Ar1-H1-HBA1 Ar1
|
|
360 -H1-HBD1 Ar1-HBA1-HBD1 H1-H1-H1 H1-H1-HBA1 H1-H1-HBD1 H1-HBA1-HBA1 H1-
|
|
361 HBA1-HBD1 H1-HBA1-NI1 H1-HBD1-NI1 HBA1-HBA1-NI1 HBA1-HBD1-NI1 Ar1-...;
|
|
362 46 106 8 3 83 11 4 1 21 5 3 1 2 2 1 1 1 100 101 18 11 145 132 26 14 23
|
|
363 28 3 3 5 4 61 45 10 4 16 20 7 5 1 3 4 5 3 1 1 1 1 5 4 2 1 2 2 2 1 1 1
|
|
364 119 123 24 15 185 202 41 25 22 17 3 5 85 95 18 11 23 17 3 1 1 6 4 ...
|
|
365
|
|
366 FingerprintsVector;TopologicalPharmacophoreAtomTriplets:FixedSize:MinD
|
|
367 istance1:MaxDistance10;2692;OrderedNumericalValues;ValuesString;46 106
|
|
368 8 3 0 0 83 11 4 0 0 0 1 0 0 0 0 0 0 0 0 21 5 3 0 0 1 2 2 0 0 1 0 0 0
|
|
369 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 101 18 11 0 0 145 132 26
|
|
370 14 0 0 23 28 3 3 0 0 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 45 10 4 0
|
|
371 0 16 20 7 5 1 0 3 4 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 5 ...
|
|
372
|
|
373 METHODS
|
|
374 new
|
|
375 $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(%IOParameters);
|
|
376
|
|
377 Using specified *IOParameters* names and values hash, new method
|
|
378 creates a new object and returns a reference to a newly created
|
|
379 FingerprintsFPFileIO object. By default, the following properties
|
|
380 are initialized during *Read* mode:
|
|
381
|
|
382 Name = '';
|
|
383 Mode = 'Read';
|
|
384 Status = 0;
|
|
385 FingerprintsStringMode = 'AutoDetect';
|
|
386 ValidateData = 1;
|
|
387 DetailLevel = 1;
|
|
388
|
|
389 During *Write* mode, the following properties get initialize by
|
|
390 default:
|
|
391
|
|
392 FingerprintsStringMode = undef;
|
|
393
|
|
394 BitStringFormat = HexadecimalString;
|
|
395 BitsOrder = Ascending;
|
|
396
|
|
397 VectorStringFormat = NumericalValuesString or ValuesString;
|
|
398
|
|
399 Examples:
|
|
400
|
|
401 $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
|
|
402 'Name' => 'Sample.fpf',
|
|
403 'Mode' => 'Read',
|
|
404 'FingerprintsStringMode' =>
|
|
405 'AutoDetect');
|
|
406
|
|
407 $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
|
|
408 'Name' => 'Sample.fpf',
|
|
409 'Mode' => 'Write',
|
|
410 'FingerprintsStringMode' =>
|
|
411 'FingerprintsBitVectorString',
|
|
412 'Overwrite' => 1,
|
|
413 'BitStringFormat' => 'HexadecimalString',
|
|
414 'BitsOrder' => 'Ascending');
|
|
415
|
|
416 $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
|
|
417 'Name' => 'Sample.fp',
|
|
418 'Mode' => 'Write',
|
|
419 'FingerprintsStringMode' =>
|
|
420 'FingerprintsVectorString',
|
|
421 'Overwrite' => 1,
|
|
422 'VectorStringFormat' => 'IDsAndValuesString');
|
|
423
|
|
424 GetFingerprints
|
|
425 $FingerprintsObject = $FingerprintsFPFileIO->GetFingerprints();
|
|
426
|
|
427 Returns FingerprintsObject generated for current data line using
|
|
428 fingerprints bit-vector or vector string data. The fingerprints
|
|
429 object corresponds to any of the supported fingerprints such as
|
|
430 PathLengthFingerprints, ExtendedConnectivity, and so on.
|
|
431
|
|
432 GetFingerprintsString
|
|
433 $FingerprintsString = $FingerprintsFPFileIO->GetFingerprintsString();
|
|
434
|
|
435 Returns FingerprintsString for current data line.
|
|
436
|
|
437 GetHeaderDataKeyValue
|
|
438 $KeyValue = $FingerprintsFPFileIO->GetHeaderDataKeyValue($Key);
|
|
439
|
|
440 Returns KeyValue of a data header *Key*.
|
|
441
|
|
442 GetHeaderDataKeys
|
|
443 @Keys = $FingerprintsFPFileIO->GetHeaderDataKeys();
|
|
444 $NumOfKeys = $FingerprintsFPFileIO->GetHeaderDataKeys();
|
|
445
|
|
446 Returns an array of data header Keys retrieved from data header
|
|
447 section of fingerprints file. In scalar context, it returns number
|
|
448 of keys.
|
|
449
|
|
450 GetHeaderDataKeysAndValues
|
|
451 %KeysAndValues = $FingerprintsFPFileIO->GetHeaderDataKeysAndValues();
|
|
452
|
|
453 Returns a hash of data header keys and values retrieved from data
|
|
454 header section of fingerprints file.
|
|
455
|
|
456 GetPartialFingerprintsString
|
|
457 $FingerprintsString = $FingerprintsFPFileIO->GetPartialFingerprintsString();
|
|
458
|
|
459 Returns partial FingerprintsString for current data line. It
|
|
460 corresponds to fingerprints string specified present in a line.
|
|
461
|
|
462 GetRequiredHeaderDataKeys
|
|
463 @Keys = $FingerprintsFPFileIO->GetRequiredHeaderDataKeys();
|
|
464 $NumOfKeys = $FingerprintsFPFileIO->GetRequiredHeaderDataKeys();
|
|
465
|
|
466 Returns an array of required data header Keys for a fingerprints
|
|
467 file containing bit-vector or vector strings data. In scalar
|
|
468 context, it returns number of keys.
|
|
469
|
|
470 GetRequiredHeaderDataKeysAndValues
|
|
471 %KeysAndValues = $FingerprintsFPFileIO->
|
|
472 GetRequiredHeaderDataKeysAndValues();
|
|
473
|
|
474 Returns a hash of required data header keys and values for a
|
|
475 fingerprints file containing bit-vector or vector strings data
|
|
476
|
|
477 IsFingerprintsDataValid
|
|
478 $Status = $FingerprintsFPFileIO->IsFingerprintsDataValid();
|
|
479
|
|
480 Returns 1 or 0 based on whether FingerprintsObject is valid.
|
|
481
|
|
482 IsFingerprintsFPFile
|
|
483 $Status = $FingerprintsFPFileIO->IsFingerprintsFPFile($FileName);
|
|
484 $Status = FileIO::FingerprintsFPFileIO::IsFingerprintsFPFile($FileName);
|
|
485
|
|
486 Returns 1 or 0 based on whether *FileName* is a FP file.
|
|
487
|
|
488 IsFingerprintsFileDataValid
|
|
489 $Status = $FingerprintsFPFileIO->IsFingerprintsFileDataValid();
|
|
490
|
|
491 Returns 1 or 0 based on whether fingerprints file contains valid
|
|
492 fingerprints data.
|
|
493
|
|
494 IsHeaderDataKeyPresent
|
|
495 $Status = $FingerprintsFPFileIO->IsHeaderDataKeyPresent($Key);
|
|
496
|
|
497 Returns 1 or 0 based on whether data header *Key* is present in data
|
|
498 header section of a FP file.
|
|
499
|
|
500 Next or Read
|
|
501 $FingerprintsFPFileIO = $FingerprintsFPFileIO->Next();
|
|
502 $FingerprintsFPFileIO = $FingerprintsFPFileIO->Read();
|
|
503
|
|
504 Reads next available fingerprints line in FP file, processes the
|
|
505 data, generates appropriate fingerprints object, and returns
|
|
506 FingerprintsFPFileIO. The generated fingerprints object is available
|
|
507 using method GetFingerprints.
|
|
508
|
|
509 SetBitStringFormat
|
|
510 $FingerprintsFPFileIO->SetBitStringFormat($Format);
|
|
511
|
|
512 Sets bit string *Format* for fingerprints bit-vector string data in
|
|
513 a FP file and returns FingerprintsFPFileIO. Possible values for
|
|
514 BitStringFormat: *BinaryString or HexadecimalString*.
|
|
515
|
|
516 SetBitsOrder
|
|
517 $FingerprintsFPFileIO->SetBitsOrder($BitsOrder);
|
|
518
|
|
519 Sets *BitsOrder* for fingerprints bit-vector string data in a FP
|
|
520 file and returns FingerprintsFPFileIO. Possible values for
|
|
521 BitsOrder: *Ascending or Descending*.
|
|
522
|
|
523 SetCompoundID
|
|
524 $FingerprintsFPFileIO->SetCompoundID($ID);
|
|
525
|
|
526 Sets compound ID for current data line and returns
|
|
527 FingerprintsFPFileIO. Spaces are not allowed in compound IDs.
|
|
528
|
|
529 SetDetailLevel
|
|
530 $FingerprintsFPFileIO->SetDetailLevel($Level);
|
|
531
|
|
532 Sets details *Level* for generating diagnostics messages during FP
|
|
533 file processing and returns FingerprintsFPFileIO. Possible values:
|
|
534 *Positive integers*.
|
|
535
|
|
536 SetFingerprints
|
|
537 $FingerprintsFPFileIO->SetFingerprints($FingerprintsObject);
|
|
538
|
|
539 Sets *FingerprintsObject* for current data line and returns
|
|
540 FingerprintsFPFileIO.
|
|
541
|
|
542 SetFingerprintsString
|
|
543 $FingerprintsFPFileIO->SetFingerprintsString($FingerprintsString);
|
|
544
|
|
545 Sets *FingerprintsString* for current data line and returns
|
|
546 FingerprintsFPFileIO.
|
|
547
|
|
548 SetFingerprintsStringMode
|
|
549 $FingerprintsFPFileIO->SetFingerprintsStringMode($Mode);
|
|
550
|
|
551 Sets *FingerprintsStringMode* for FP file and returns
|
|
552 FingerprintsFPFileIO. Possible values: *AutoDetect,
|
|
553 FingerprintsBitVectorString, or FingerprintsVectorString*
|
|
554
|
|
555 SetPartialFingerprintsString
|
|
556 $FingerprintsFPFileIO->SetPartialFingerprintsString($PartialString);
|
|
557
|
|
558 Sets *PartialFingerprintsString* for current data line and returns
|
|
559 FingerprintsFPFileIO.
|
|
560
|
|
561 SetVectorStringFormat
|
|
562 $FingerprintsFPFileIO->SetVectorStringFormat($Format);
|
|
563
|
|
564 Sets *VectorStringFormat* for FP file and returns
|
|
565 FingerprintsFPFileIO. Possible values: *IDsAndValuesString,
|
|
566 IDsAndValuesPairsString, ValuesAndIDsString,
|
|
567 ValuesAndIDsPairsString*.
|
|
568
|
|
569 WriteFingerprints
|
|
570 $FingerprintsFPFileIO->WriteFingerprints($FingerprintsObject,
|
|
571 $CompoundID);
|
|
572
|
|
573 Writes fingerprints string generated from *FingerprintsObject*
|
|
574 object and other data including *CompoundID* to FP file and returns
|
|
575 FingerprintsFPFileIO.
|
|
576
|
|
577 WriteFingerprintsString
|
|
578 $FingerprintsFPFileIO->WriteFingerprints($FingerprintsString,
|
|
579 $CompoundID);
|
|
580
|
|
581 Writes *FingerprintsString* and other data including *CompoundID* to
|
|
582 FP file and returns FingerprintsFPFileIO.
|
|
583
|
|
584 Caveats:
|
|
585
|
|
586 o FingerprintsStringMode, BitStringFormat, BitsOrder, VectorStringFormat
|
|
587 values are ignored during writing of fingerprints and it's written to
|
|
588 the file as it is.
|
|
589 o FingerprintsString is a regular fingerprints string as oppose to a
|
|
590 partial fingerprints string.
|
|
591
|
|
592 AUTHOR
|
|
593 Manish Sud <msud@san.rr.com>
|
|
594
|
|
595 SEE ALSO
|
|
596 FingerprintsSDFileIO.pm, FingerprintsTextFileIO.pm
|
|
597
|
|
598 COPYRIGHT
|
|
599 Copyright (C) 2015 Manish Sud. All rights reserved.
|
|
600
|
|
601 This file is part of MayaChemTools.
|
|
602
|
|
603 MayaChemTools is free software; you can redistribute it and/or modify it
|
|
604 under the terms of the GNU Lesser General Public License as published by
|
|
605 the Free Software Foundation; either version 3 of the License, or (at
|
|
606 your option) any later version.
|
|
607
|