comparison mayachemtools/docs/scripts/html/PathLengthFingerprints.html @ 0:73ae111cf86f draft

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 11:55:01 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:73ae111cf86f
1 <html>
2 <head>
3 <title>MayaChemTools:Documentation:PathLengthFingerprints.pl</title>
4 <meta http-equiv="content-type" content="text/html;charset=utf-8">
5 <link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css">
6 </head>
7 <body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10">
8 <br/>
9 <center>
10 <a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a>
11 </center>
12 <br/>
13 <div class="DocNav">
14 <table width="100%" border=0 cellpadding=0 cellspacing=2>
15 <tr align="left" valign="top"><td width="33%" align="left"><a href="./MolFilesToSD.html" title="MolFilesToSD.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./SDFilesToHTML.html" title="SDFilesToHTML.html">Next</a></td><td width="34%" align="middle"><strong>PathLengthFingerprints.pl</strong></td><td width="33%" align="right"><a href="././code/PathLengthFingerprints.html" title="View source code">Code</a>&nbsp;|&nbsp;<a href="./../pdf/PathLengthFingerprints.pdf" title="PDF US Letter Size">PDF</a>&nbsp;|&nbsp;<a href="./../pdfgreen/PathLengthFingerprints.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a>&nbsp;|&nbsp;<a href="./../pdfa4/PathLengthFingerprints.pdf" title="PDF A4 Size">PDFA4</a>&nbsp;|&nbsp;<a href="./../pdfa4green/PathLengthFingerprints.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr>
16 </table>
17 </div>
18 <p>
19 </p>
20 <h2>NAME</h2>
21 <p>PathLengthFingerprints.pl - Generate atom path length based fingerprints for SD files</p>
22 <p>
23 </p>
24 <h2>SYNOPSIS</h2>
25 <p>PathLengthFingerprints.pl SDFile(s)...</p>
26 <p>PathLengthFingerprints.pl [<strong>--AromaticityModel</strong> <em>AromaticityModelType</em>]
27 [<strong>-a, --AtomIdentifierType</strong> <em>AtomicInvariantsAtomTypes</em>]
28 [<strong>--AtomicInvariantsToUse</strong> <em>&quot;AtomicInvariant1,AtomicInvariant2...&quot;</em>]
29 [<strong>--FunctionalClassesToUse</strong> <em>&quot;FunctionalClass1,FunctionalClass2...&quot;</em>]
30 [<strong>--BitsOrder</strong> <em>Ascending | Descending</em>] [<strong>-b, --BitStringFormat</strong> <em>BinaryString | HexadecimalString</em>]
31 [<strong>--CompoundID</strong> <em>DataFieldName or LabelPrefixString</em>] [<strong>--CompoundIDLabel</strong> <em>text</em>]
32 [<strong>--CompoundIDMode</strong> <em>DataField | MolName | LabelPrefix | MolNameOrLabelPrefix</em>]
33 [<strong>--DataFields</strong> <em>&quot;FieldLabel1,FieldLabel2,... &quot;</em>] [<strong>-d, --DataFieldsMode</strong> <em>All | Common | Specify | CompoundID</em>]
34 [<strong>--DetectAromaticity</strong> <em>Yes | No</em>] [<strong>-f, --Filter</strong> <em>Yes | No</em>] [<strong>--FingerprintsLabel</strong> <em>text</em>]
35 [<strong>--fold</strong> <em>Yes | No</em>] [<strong>--FoldedSize</strong> <em>number</em>] [<strong>-h, --help</strong>]
36 [<strong>-i, --IgnoreHydrogens</strong> <em>Yes | No</em>] [<strong>-k, --KeepLargestComponent</strong> <em>Yes | No</em>]
37 [<strong>-m, --mode</strong> <em>PathLengthBits | PathLengthCount</em>]
38 [<strong>--MinPathLength</strong> <em>number</em>] [<strong>--MaxPathLength</strong> <em>number</em>] [<strong>-n, --NumOfBitsToSetPerPath</strong> <em>number</em>]
39 [<strong>--OutDelim</strong> <em>comma | tab | semicolon</em>]
40 [<strong>--output</strong> <em>SD | FP | text | all</em>] [<strong>-q, --quote</strong> <em>Yes | No</em>] [<strong>-r, --root</strong> <em>RootName</em>]
41 [<strong>-p, --PathMode</strong> <em>AtomPathsWithoutRings | AtomPathsWithRings | AllAtomPathsWithoutRings | AllAtomPathsWithRings</em>]
42 [<strong>-s, --size</strong> <em>number</em>] [<strong>-u, --UseBondSymbols</strong> <em>Yes | No</em>] [<strong>--UsePerlCoreRandom</strong> <em>Yes | No</em>]
43 [<strong>--UseUniquePaths</strong> <em>Yes | No</em>] [<strong>-q, --quote</strong> <em>Yes | No</em>] [<strong>-r, --root</strong> <em>RootName</em>]
44 [<strong>-v, --VectorStringFormat</strong> <em>IDsAndValuesString | IDsAndValuesPairsString | ValuesAndIDsString | ValuesAndIDsPairsString</em>]
45 [<strong>-w, --WorkingDir</strong> dirname] SDFile(s)...</p>
46 <p>
47 </p>
48 <h2>DESCRIPTION</h2>
49 <p>Generate atom path length fingerprints for <em>SDFile(s)</em> and create appropriate SD, FP or
50 CSV/TSV text file(s) containing fingerprints bit-vector or vector strings corresponding to
51 molecular fingerprints.</p>
52 <p>Multiple SDFile names are separated by spaces. The valid file extensions are <em>.sdf</em>
53 and <em>.sd</em>. All other file names are ignored. All the SD files in a current directory
54 can be specified either by <em>*.sdf</em> or the current directory name.</p>
55 <p>The current release of MayaChemTools supports generation of path length fingerprints
56 corresponding to following <strong>-a, --AtomIdentifierTypes</strong>:</p>
57 <div class="OptionsBox">
58 AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
59 <br/> FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes,
60 <br/> SYBYLAtomTypes, TPSAAtomTypes, UFFAtomTypes</div>
61 <p>Based on the values specified for <strong>-p, --PathMode</strong>, <strong>--MinPathLength</strong> and <strong>--MaxPathLength</strong>,
62 all appropriate atom paths are generated for each atom in the molecule and collected in a list and
63 the list is filtered to remove any structurally duplicate paths as indicated by the value of
64 <strong>--UseUniquePaths</strong> option.</p>
65 <p>For each atom path in the filtered atom paths list, an atom path string is created using value of
66 <strong>-a, --AtomIdentifierType</strong> and specified values to use for a particular atom identifier type.
67 Value of <strong>-u, --UseBondSymbols</strong> controls whether bond order symbols are used during generation
68 of atom path string. For each atom path, only lexicographically smaller atom path strings are kept.</p>
69 <p>For <em>PathLengthBits</em> value of <strong>-m, --mode</strong> option, each atom path is hashed to a 32 bit unsigned
70 integer key using <strong>TextUtil::HashCode</strong> function. Using the hash key as a seed for a random number
71 generator, a random integer value between 0 and <strong>--Size</strong> is used to set corresponding bits
72 in the fingerprint bit-vector string. Value of <strong>--NumOfBitsToSetPerPath</strong> option controls the number
73 of time a random number is generated to set corresponding bits.</p>
74 <p>For <em> PathLengthCount</em> value of <strong>-m, --mode</strong> option, the number of times an atom path appears
75 is tracked and a fingerprints count-string corresponding to count of atom paths is generated.</p>
76 <p>Example of <em>SD</em> file containing path length fingerprints string data:</p>
77 <div class="OptionsBox">
78 ... ...
79 <br/> ... ...
80 <br/> $$$$
81 <br/> ... ...
82 <br/> ... ...
83 <br/> ... ...
84 <br/> 41 44 0 0 0 0 0 0 0 0999 V2000
85 -3.3652 1.4499 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
86 <br/> ... ...
87 <br/> 2 3 1 0 0 0 0
88 <br/> ... ...
89 <br/> M END
90 <br/> &gt; &lt;CmpdID&gt;
91 <br/> Cmpd1</div>
92 <div class="OptionsBox">
93 &gt; &lt;PathLengthFingerprints&gt;
94 <br/> FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLengt
95 <br/> h1:MaxLength8;1024;HexadecimalString;Ascending;9c8460989ec8a49913991a66
96 <br/> 03130b0a19e8051c89184414953800cc2151082844a201042800130860308e8204d4028
97 <br/> 00831048940e44281c00060449a5000ac80c894114e006321264401600846c050164462
98 <br/> 08190410805000304a10205b0100e04c0038ba0fad0209c0ca8b1200012268b61c0026a
99 <br/> aa0660a11014a011d46</div>
100 <div class="OptionsBox">
101 $$$$
102 <br/> ... ...
103 <br/> ... ...</div>
104 <p>Example of <em>FP</em> file containing path length fingerprints string data:</p>
105 <div class="OptionsBox">
106 #
107 <br/> # Package = MayaChemTools 7.4
108 <br/> # ReleaseDate = Oct 21, 2010
109 <br/> #
110 <br/> # TimeStamp = Mon Mar 7 15:14:01 2011
111 <br/> #
112 <br/> # FingerprintsStringType = FingerprintsBitVector
113 <br/> #
114 <br/> # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
115 <br/> # Size = 1024
116 <br/> # BitStringFormat = HexadecimalString
117 <br/> # BitsOrder = Ascending
118 <br/> #
119 <br/> Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
120 <br/> Cmpd2 000000249400840040100042011001001980410c000000001010088001120...
121 <br/> ... ...
122 <br/> ... ..</div>
123 <p>Example of CSV <em>Text</em> file containing pathlength fingerprints string data:</p>
124 <div class="OptionsBox">
125 &quot;CompoundID&quot;,&quot;PathLengthFingerprints&quot;
126 <br/> &quot;Cmpd1&quot;,&quot;FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes
127 <br/> :MinLength1:MaxLength8;1024;HexadecimalString;Ascending;9c8460989ec8a4
128 <br/> 9913991a6603130b0a19e8051c89184414953800cc2151082844a20104280013086030
129 <br/> 8e8204d402800831048940e44281c00060449a5000ac80c894114e006321264401...&quot;
130 <br/> ... ...
131 <br/> ... ...</div>
132 <p>The current release of MayaChemTools generates the following types of path length
133 fingerprints bit-vector and vector strings:</p>
134 <div class="OptionsBox">
135 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
136 <br/> th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
137 <br/> 0100010101011000101001011100110001000010001001101000001001001001001000
138 <br/> 0010110100000111001001000001001010100100100000000011000000101001011100
139 <br/> 0010000001000101010100000100111100110111011011011000000010110111001101
140 <br/> 0101100011000000010001000011000010100011101100001000001000100000000...</div>
141 <div class="OptionsBox">
142 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
143 <br/> th1:MaxLength8;1024;HexadecimalString;Ascending;48caa1315d82d91122b029
144 <br/> 42861c9409a4208182d12015509767bd0867653604481a8b1288000056090583603078
145 <br/> 9cedae54e26596889ab121309800900490515224208421502120a0dd9200509723ae89
146 <br/> 00024181b86c0122821d4e4880c38620dab280824b455404009f082003d52c212b4e6d
147 <br/> 6ea05280140069c780290c43</div>
148 <div class="OptionsBox">
149 FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
150 <br/> 1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
151 <br/> 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
152 <br/> 2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1
153 <br/> 2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
154 <br/> 4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C....</div>
155 <div class="OptionsBox">
156 FingerprintsVector;PathLengthCount:DREIDINGAtomTypes:MinLength1:MaxLen
157 <br/> gth8;410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_
158 <br/> 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
159 <br/> 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
160 <br/> _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
161 <br/> _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 ...</div>
162 <div class="OptionsBox">
163 FingerprintsVector;PathLengthCount:EStateAtomTypes:MinLength1:MaxLengt
164 <br/> h8;454;NumericalValues;IDsAndValuesPairsString;aaCH 14 aasC 8 aasN 1 d
165 <br/> O 2 dssC 2 sCH3 2 sF 1 sOH 3 ssCH2 4 ssNH 1 sssCH 3 aaCH:aaCH 10 aaCH:
166 <br/> aasC 8 aasC:aasC 3 aasC:aasN 2 aasCaasC 2 aasCdssC 1 aasCsF 1 aasCssNH
167 <br/> 1 aasCsssCH 1 aasNssCH2 1 dO=dssC 2 dssCsOH 1 dssCssCH2 1 dssCssNH 1
168 <br/> sCH3sssCH 2 sOHsssCH 2 ssCH2ssCH2 1 ssCH2sssCH 4 aaCH:aaCH:aaCH 6 a...</div>
169 <div class="OptionsBox">
170 FingerprintsVector;PathLengthCount:FunctionalClassAtomTypes:MinLength1
171 <br/> :MaxLength8;404;NumericalValues;IDsAndValuesPairsString;Ar 22 Ar.HBA 1
172 <br/> HBA 2 HBA.HBD 3 HBD 1 Hal 1 NI 1 None 10 Ar.HBA:Ar 2 Ar.HBANone 1 Ar:
173 <br/> Ar 21 ArAr 2 ArHBD 1 ArHal 1 ArNone 2 HBA.HBDNI 1 HBA.HBDNone 2 HBA=NI
174 <br/> 1 HBA=None 1 HBDNone 1 NINone 1 NoneNone 7 Ar.HBA:Ar:Ar 2 Ar.HBA:ArAr
175 <br/> 1 Ar.HBA:ArNone 1 Ar.HBANoneNone 1 Ar:Ar.HBA:Ar 1 Ar:Ar.HBANone 2 ...</div>
176 <div class="OptionsBox">
177 FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt
178 <br/> h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1
179 <br/> 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
180 <br/> 5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1
181 <br/> CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR
182 <br/> OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ...</div>
183 <div class="OptionsBox">
184 FingerprintsVector;PathLengthCount:SLogPAtomTypes:MinLength1:MaxLength
185 <br/> 8;518;NumericalValues;IDsAndValuesPairsString;C1 5 C10 1 C11 1 C14 1 C
186 <br/> 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
187 <br/> 1 C10N11 1 C11C1 2 C11C21 1 C14:C18 2 C14F 1 C18:C18 10 C18:C20 4 C18
188 <br/> :C22 2 C1C5 1 C1CS 4 C20:C20 1 C20:C21 1 C20:N11 1 C20C20 2 C21:C21 1
189 <br/> C21:N11 1 C21C5 1 C22N4 1 C5=O10 1 C5=O9 1 C5N4 1 C5O2 1 CSO2 2 C10...</div>
190 <div class="OptionsBox">
191 FingerprintsVector;PathLengthCount:SYBYLAtomTypes:MinLength1:MaxLength
192 <br/> 8;412;NumericalValues;IDsAndValuesPairsString;C.2 2 C.3 9 C.ar 22 F 1
193 <br/> 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.
194 <br/> 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
195 <br/> .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
196 <br/> .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...</div>
197 <div class="OptionsBox">
198 FingerprintsVector;PathLengthCount:TPSAAtomTypes:MinLength1:MaxLength8
199 <br/> ;331;NumericalValues;IDsAndValuesPairsString;N21 1 N7 1 None 34 O3 2 O
200 <br/> 4 3 N21:None 2 N21None 1 N7None 2 None:None 21 None=O3 2 NoneNone 13 N
201 <br/> oneO4 3 N21:None:None 2 N21:NoneNone 2 N21NoneNone 1 N7None:None 2 N7N
202 <br/> one=O3 1 N7NoneNone 1 None:N21:None 1 None:N21None 2 None:None:None 20
203 <br/> None:NoneNone 12 NoneN7None 1 NoneNone=O3 2 NoneNoneNone 8 NoneNon...</div>
204 <div class="OptionsBox">
205 FingerprintsVector;PathLengthCount:UFFAtomTypes:MinLength1:MaxLength8;
206 <br/> 410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_ 1 N_
207 <br/> 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_
208 <br/> 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_
209 <br/> 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
210 <br/> 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...</div>
211 <p>
212 </p>
213 <h2>OPTIONS</h2>
214 <dl>
215 <dt><strong><strong>--AromaticityModel</strong> <em>MDLAromaticityModel | TriposAromaticityModel | MMFFAromaticityModel | ChemAxonBasicAromaticityModel | ChemAxonGeneralAromaticityModel | DaylightAromaticityModel | MayaChemToolsAromaticityModel</em></strong></dt>
216 <dd>
217 <p>Specify aromaticity model to use during detection of aromaticity. Possible values in the current
218 release are: <em>MDLAromaticityModel, TriposAromaticityModel, MMFFAromaticityModel,
219 ChemAxonBasicAromaticityModel, ChemAxonGeneralAromaticityModel, DaylightAromaticityModel
220 or MayaChemToolsAromaticityModel</em>. Default value: <em>MayaChemToolsAromaticityModel</em>.</p>
221 <p>The supported aromaticity model names along with model specific control parameters
222 are defined in <strong>AromaticityModelsData.csv</strong>, which is distributed with the current release
223 and is available under <strong>lib/data</strong> directory. <strong>Molecule.pm</strong> module retrieves data from
224 this file during class instantiation and makes it available to method <strong>DetectAromaticity</strong>
225 for detecting aromaticity corresponding to a specific model.</p>
226 <p>This option is ignored during <em>No</em> value of <strong>--DetectAromaticity</strong> option.</p>
227 </dd>
228 <dt><strong><strong>-a, --AtomIdentifierType</strong> <em>AtomicInvariantsAtomTypes | DREIDINGAtomTypes | EStateAtomTypes | FunctionalClassAtomTypes | MMFF94AtomTypes | SLogPAtomTypes | SYBYLAtomTypes | TPSAAtomTypes | UFFAtomTypes</em></strong></dt>
229 <dd>
230 <p>Specify atom identifier type to use for assignment of atom types to hydrogen and/or
231 non-hydrogen atoms during calculation of atom types fingerprints. Possible values in the
232 current release are: <em>AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
233 FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes, SYBYLAtomTypes,
234 TPSAAtomTypes, UFFAtomTypes</em>. Default value: <em>AtomicInvariantsAtomTypes</em>.</p>
235 </dd>
236 <dt><strong><strong>-a, --AtomIdentifierType</strong> <em>AtomicInvariantsAtomTypes | DREIDINGAtomTypes | EStateAtomTypes | FunctionalClassAtomTypes | MMFF94AtomTypes | SLogPAtomTypes | SYBYLAtomTypes | TPSAAtomTypes | UFFAtomTypes</em></strong></dt>
237 <dd>
238 <p>Specify atom identifier type to use during generation of atom path strings
239 corresponding to path length fingerprints. Possible values in the current release are:
240 <em>AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
241 FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes, SYBYLAtomTypes,
242 TPSAAtomTypes, UFFAtomTypes</em>. Default value: <em>AtomicInvariantsAtomTypes</em>.</p>
243 </dd>
244 <dt><strong><strong>--AtomicInvariantsToUse</strong> <em>&quot;AtomicInvariant1,AtomicInvariant2...&quot;</em></strong></dt>
245 <dd>
246 <p>This value is used during <em>AtomicInvariantsAtomTypes</em> value of <strong>a, --AtomIdentifierType</strong>
247 option. It's a list of comma separated valid atomic invariant atom types.</p>
248 <p>Possible values for atomic invariants are: <em>AS, X, BO, LBO, SB, DB, TB,
249 H, Ar, RA, FC, MN, SM</em>. Default value: <em>AS</em>.</p>
250 <p>The atomic invariants abbreviations correspond to:</p>
251 <div class="OptionsBox">
252 AS = Atom symbol corresponding to element symbol</div>
253 <div class="OptionsBox">
254 X&lt;n&gt; = Number of non-hydrogen atom neighbors or heavy atoms
255 <br/> BO&lt;n&gt; = Sum of bond orders to non-hydrogen atom neighbors or heavy atoms
256 <br/> LBO&lt;n&gt; = Largest bond order of non-hydrogen atom neighbors or heavy atoms
257 <br/> SB&lt;n&gt; = Number of single bonds to non-hydrogen atom neighbors or heavy atoms
258 <br/> DB&lt;n&gt; = Number of double bonds to non-hydrogen atom neighbors or heavy atoms
259 <br/> TB&lt;n&gt; = Number of triple bonds to non-hydrogen atom neighbors or heavy atoms
260 <br/> H&lt;n&gt; = Number of implicit and explicit hydrogens for atom
261 <br/> Ar = Aromatic annotation indicating whether atom is aromatic
262 <br/> RA = Ring atom annotation indicating whether atom is a ring
263 <br/> FC&lt;+n/-n&gt; = Formal charge assigned to atom
264 <br/> MN&lt;n&gt; = Mass number indicating isotope other than most abundant isotope
265 <br/> SM&lt;n&gt; = Spin multiplicity of atom. Possible values: 1 (singlet), 2 (doublet) or
266 3 (triplet)</div>
267 <p>Atom type generated by AtomTypes::AtomicInvariantsAtomTypes class corresponds to:</p>
268 <div class="OptionsBox">
269 AS.X&lt;n&gt;.BO&lt;n&gt;.LBO&lt;n&gt;.&lt;SB&gt;&lt;n&gt;.&lt;DB&gt;&lt;n&gt;.&lt;TB&gt;&lt;n&gt;.H&lt;n&gt;.Ar.RA.FC&lt;+n/-n&gt;.MN&lt;n&gt;.SM&lt;n&gt;</div>
270 <p>Except for AS which is a required atomic invariant in atom types, all other atomic invariants are
271 optional. Atom type specification doesn't include atomic invariants with zero or undefined values.</p>
272 <p>In addition to usage of abbreviations for specifying atomic invariants, the following descriptive words
273 are also allowed:</p>
274 <div class="OptionsBox">
275 X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors
276 <br/> BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms
277 <br/> LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms
278 <br/> SB : NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms
279 <br/> DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms
280 <br/> TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms
281 <br/> H : NumOfImplicitAndExplicitHydrogens
282 <br/> Ar : Aromatic
283 <br/> RA : RingAtom
284 <br/> FC : FormalCharge
285 <br/> MN : MassNumber
286 <br/> SM : SpinMultiplicity</div>
287 <p>Examples:</p>
288 <p><strong>Benzene</strong>: Using value of <em>AS</em> for <strong>--AtomicInvariantsToUse</strong>, <em>Yes</em> for <strong>UseBondSymbols</strong>,
289 and <em> AllAtomPathsWithRings</em> for <strong>-p, --PathMode</strong>, atom path strings generated are:</p>
290 <div class="OptionsBox">
291 C C:C C:C:C C:C:C:C C:C:C:C:C C:C:C:C:C:C C:C:C:C:C:C:C</div>
292 <p>And using <em>AS,X,BO</em> for <strong>--AtomicInvariantsToUse</strong> generates following atom path
293 strings:</p>
294 <div class="OptionsBox">
295 C.X2.BO3 C.X2.BO3:C.X2.BO3 C.X2.BO3:C.X2.BO3:C.X2.BO3
296 <br/> C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3
297 <br/> C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3
298 <br/> C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3
299 <br/> C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3:C.X2.BO3</div>
300 <p><strong>Urea</strong>: Using value of <em>AS</em> for <strong>--AtomicInvariantsToUse</strong>, <em>Yes</em> for <strong>UseBondSymbols</strong>,
301 and <em> AllAtomPathsWithRings</em> for <strong>-p, --PathMode</strong>, atom path strings are:</p>
302 <div class="OptionsBox">
303 C N O C=O CN NC=O NCN</div>
304 <p>And using <em>AS,X,BO</em> for <strong>--AtomicInvariantsToUse</strong> generates following atom path
305 strings:</p>
306 <div class="OptionsBox">
307 C.X3.BO4 N.X1.BO1 O.X1.BO2 C.X3.BO4=O.X1.BO2
308 <br/> C.X3.BO4N.X1.BO1 N.X1.BO1C.X3.BO4=O.X1.BO2
309 <br/> N.X1.BO1C.X3.BO4N.X1.BO1</div>
310 </dd>
311 <dt><strong><strong>--FunctionalClassesToUse</strong> <em>&quot;FunctionalClass1,FunctionalClass2...&quot;</em></strong></dt>
312 <dd>
313 <p>This value is used during <em>FunctionalClassAtomTypes</em> value of <strong>a, --AtomIdentifierType</strong>
314 option. It's a list of comma separated valid functional classes.</p>
315 <p>Possible values for atom functional classes are: <em>Ar, CA, H, HBA, HBD, Hal, NI, PI, RA</em>.
316 Default value [ Ref 24 ]: <em>HBD,HBA,PI,NI,Ar,Hal</em>.</p>
317 <p>The functional class abbreviations correspond to:</p>
318 <div class="OptionsBox">
319 HBD: HydrogenBondDonor
320 <br/> HBA: HydrogenBondAcceptor
321 <br/> PI : PositivelyIonizable
322 <br/> NI : NegativelyIonizable
323 <br/> Ar : Aromatic
324 <br/> Hal : Halogen
325 <br/> H : Hydrophobic
326 <br/> RA : RingAtom
327 <br/> CA : ChainAtom</div>
328 <div class="OptionsBox">
329 Functional class atom type specification for an atom corresponds to:</div>
330 <div class="OptionsBox">
331 Ar.CA.H.HBA.HBD.Hal.NI.PI.RA</div>
332 <p><em>AtomTypes::FunctionalClassAtomTypes</em> module is used to assign functional class atom
333 types. It uses following definitions [ Ref 60-61, Ref 65-66 ]:</p>
334 <div class="OptionsBox">
335 HydrogenBondDonor: NH, NH2, OH
336 <br/> HydrogenBondAcceptor: N[!H], O
337 <br/> PositivelyIonizable: +, NH2
338 <br/> NegativelyIonizable: -, C(=O)OH, S(=O)OH, P(=O)OH</div>
339 </dd>
340 <dt><strong><strong>--BitsOrder</strong> <em>Ascending | Descending</em></strong></dt>
341 <dd>
342 <p>Bits order to use during generation of fingerprints bit-vector string for <em>PathLengthBits</em> value of
343 <strong>-m, --mode</strong> option. Possible values: <em>Ascending, Descending</em>. Default: <em>Ascending</em>.</p>
344 <p><em>Ascending</em> bit order which corresponds to first bit in each byte as the lowest bit as
345 opposed to the highest bit.</p>
346 <p>Internally, bits are stored in <em>Ascending</em> order using Perl vec function. Regardless
347 of machine order, big-endian or little-endian, vec function always considers first
348 string byte as the lowest byte and first bit within each byte as the lowest bit.</p>
349 </dd>
350 <dt><strong><strong>-b, --BitStringFormat</strong> <em>BinaryString | HexadecimalString</em></strong></dt>
351 <dd>
352 <p>Format of fingerprints bit-vector string data in output SD, FP or CSV/TSV text file(s) specified by
353 <strong>--output</strong> used during <em>PathLengthBits</em> value of <strong>-m, --mode</strong> option. Possible
354 values: <em>BinaryString, HexadecimalString</em>. Default value: <em>HexadecimalString</em>.</p>
355 <p><em>BinaryString</em> corresponds to an ASCII string containing 1s and 0s. <em>HexadecimalString</em>
356 contains bit values in ASCII hexadecimal format.</p>
357 <p>Examples:</p>
358 <div class="OptionsBox">
359 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
360 <br/> th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
361 <br/> 0100010101011000101001011100110001000010001001101000001001001001001000
362 <br/> 0010110100000111001001000001001010100100100000000011000000101001011100
363 <br/> 0010000001000101010100000100111100110111011011011000000010110111001101
364 <br/> 0101100011000000010001000011000010100011101100001000001000100000000...</div>
365 <div class="OptionsBox">
366 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
367 <br/> th1:MaxLength8;1024;HexadecimalString;Ascending;48caa1315d82d91122b029
368 <br/> 42861c9409a4208182d12015509767bd0867653604481a8b1288000056090583603078
369 <br/> 9cedae54e26596889ab121309800900490515224208421502120a0dd9200509723ae89
370 <br/> 00024181b86c0122821d4e4880c38620dab280824b455404009f082003d52c212b4e6d
371 <br/> 6ea05280140069c780290c43</div>
372 </dd>
373 <dt><strong><strong>--CompoundID</strong> <em>DataFieldName or LabelPrefixString</em></strong></dt>
374 <dd>
375 <p>This value is <strong>--CompoundIDMode</strong> specific and indicates how compound ID is generated.</p>
376 <p>For <em>DataField</em> value of <strong>--CompoundIDMode</strong> option, it corresponds to datafield label name
377 whose value is used as compound ID; otherwise, it's a prefix string used for generating compound
378 IDs like LabelPrefixString&lt;Number&gt;. Default value, <em>Cmpd</em>, generates compound IDs which
379 look like Cmpd&lt;Number&gt;.</p>
380 <p>Examples for <em>DataField</em> value of <strong>--CompoundIDMode</strong>:</p>
381 <div class="OptionsBox">
382 MolID
383 <br/> ExtReg</div>
384 <p>Examples for <em>LabelPrefix</em> or <em>MolNameOrLabelPrefix</em> value of <strong>--CompoundIDMode</strong>:</p>
385 <div class="OptionsBox">
386 Compound</div>
387 <p>The value specified above generates compound IDs which correspond to Compound&lt;Number&gt;
388 instead of default value of Cmpd&lt;Number&gt;.</p>
389 </dd>
390 <dt><strong><strong>--CompoundIDLabel</strong> <em>text</em></strong></dt>
391 <dd>
392 <p>Specify compound ID column label for FP or CSV/TSV text file(s) used during <em>CompoundID</em> value
393 of <strong>--DataFieldsMode</strong> option. Default: <em>CompoundID</em>.</p>
394 </dd>
395 <dt><strong><strong>--CompoundIDMode</strong> <em>DataField | MolName | LabelPrefix | MolNameOrLabelPrefix</em></strong></dt>
396 <dd>
397 <p>Specify how to generate compound IDs and write to FP or CSV/TSV text file(s) along with generated
398 fingerprints for <em>FP | text | all</em> values of <strong>--output</strong> option: use a <em>SDFile(s)</em> datafield value;
399 use molname line from <em>SDFile(s)</em>; generate a sequential ID with specific prefix; use combination
400 of both MolName and LabelPrefix with usage of LabelPrefix values for empty molname lines.</p>
401 <p>Possible values: <em>DataField | MolName | LabelPrefix | MolNameOrLabelPrefix</em>.
402 Default: <em>LabelPrefix</em>.</p>
403 <p>For <em>MolNameAndLabelPrefix</em> value of <strong>--CompoundIDMode</strong>, molname line in <em>SDFile(s)</em> takes
404 precedence over sequential compound IDs generated using <em>LabelPrefix</em> and only empty molname
405 values are replaced with sequential compound IDs.</p>
406 <p>This is only used for <em>CompoundID</em> value of <strong>--DataFieldsMode</strong> option.</p>
407 </dd>
408 <dt><strong><strong>--DataFields</strong> <em>&quot;FieldLabel1,FieldLabel2,... &quot;</em></strong></dt>
409 <dd>
410 <p>Comma delimited list of <em>SDFiles(s)</em> data fields to extract and write to CSV/TSV text file(s) along
411 with generated fingerprints for <em>text | all</em> values of <strong>--output</strong> option.</p>
412 <p>This is only used for <em>Specify</em> value of <strong>--DataFieldsMode</strong> option.</p>
413 <p>Examples:</p>
414 <div class="OptionsBox">
415 Extreg
416 <br/> MolID,CompoundName</div>
417 </dd>
418 <dt><strong><strong>-d, --DataFieldsMode</strong> <em>All | Common | Specify | CompoundID</em></strong></dt>
419 <dd>
420 <p>Specify how data fields in <em>SDFile(s)</em> are transferred to output CSV/TSV text file(s) along
421 with generated fingerprints for <em>text | all</em> values of <strong>--output</strong> option: transfer all SD
422 data field; transfer SD data files common to all compounds; extract specified data fields;
423 generate a compound ID using molname line, a compound prefix, or a combination of both.
424 Possible values: <em>All | Common | specify | CompoundID</em>. Default value: <em>CompoundID</em>.</p>
425 </dd>
426 <dt><strong><strong>--DetectAromaticity</strong> <em>Yes | No</em></strong></dt>
427 <dd>
428 <p>Detect aromaticity before generating fingerprints. Possible values: <em>Yes or No</em>.
429 Default value: <em>Yes</em>.</p>
430 <p><em>No</em> <strong>--DetectAromaticity</strong> forces usage of atom and bond aromaticity values
431 from <em>SDFile(s)</em> and skips the step which detects and assigns aromaticity.</p>
432 <p><em>No</em> <strong>--DetectAromaticity</strong> value is only allowed uring <em>AtomicInvariantsAtomTypes</em>
433 value of <strong>-a, --AtomIdentifierType</strong> options; for all possible values <strong>-a, --AtomIdentifierType</strong>
434 values, it must be <em>Yes</em>.</p>
435 </dd>
436 <dt><strong><strong>-f, --Filter</strong> <em>Yes | No</em></strong></dt>
437 <dd>
438 <p>Specify whether to check and filter compound data in SDFile(s). Possible values: <em>Yes or No</em>.
439 Default value: <em>Yes</em>.</p>
440 <p>By default, compound data is checked before calculating fingerprints and compounds containing
441 atom data corresponding to non-element symbols or no atom data are ignored.</p>
442 </dd>
443 <dt><strong><strong>--FingerprintsLabel</strong> <em>text</em></strong></dt>
444 <dd>
445 <p>SD data label or text file column label to use for fingerprints string in output SD or
446 CSV/TSV text file(s) specified by <strong>--output</strong>. Default value: <em>PathLenghFingerprints</em>.</p>
447 </dd>
448 <dt><strong><strong>--fold</strong> <em>Yes | No</em></strong></dt>
449 <dd>
450 <p>Fold fingerprints to increase bit density during <em>PathLengthBits</em> value of
451 <strong>-m, --mode</strong> option. Possible values: <em>Yes or No</em>. Default value: <em>No</em>.</p>
452 </dd>
453 <dt><strong><strong>--FoldedSize</strong> <em>number</em></strong></dt>
454 <dd>
455 <p>Size of folded fingerprint during <em>PathLengthBits</em> value of <strong>-m, --mode</strong> option. Default
456 value: <em>256</em>. Valid values correspond to any positive integer which is less than
457 <strong>-s, --size</strong> and meets the criteria for its value.</p>
458 <p>Examples:</p>
459 <div class="OptionsBox">
460 128
461 512</div>
462 </dd>
463 <dt><strong><strong>-h, --help</strong></strong></dt>
464 <dd>
465 <p>Print this help message</p>
466 </dd>
467 <dt><strong><strong>-i, --IgnoreHydrogens</strong> <em>Yes | No</em></strong></dt>
468 <dd>
469 <p>Ignore hydrogens during fingerprints generation. Possible values: <em>Yes or No</em>.
470 Default value: <em>Yes</em>.</p>
471 <p>For <em>yes</em> value of <strong>-i, --IgnoreHydrogens</strong>, any explicit hydrogens are also used for
472 generation of atoms path lengths and fingerprints; implicit hydrogens are still ignored.</p>
473 </dd>
474 <dt><strong><strong>-k, --KeepLargestComponent</strong> <em>Yes | No</em></strong></dt>
475 <dd>
476 <p>Generate fingerprints for only the largest component in molecule. Possible values:
477 <em>Yes or No</em>. Default value: <em>Yes</em>.</p>
478 <p>For molecules containing multiple connected components, fingerprints can be generated
479 in two different ways: use all connected components or just the largest connected
480 component. By default, all atoms except for the largest connected component are
481 deleted before generation of fingerprints.</p>
482 </dd>
483 <dt><strong><strong>-m, --mode</strong> <em>PathLengthBits | PathLengthCount</em></strong></dt>
484 <dd>
485 <p>Specify type of path length fingerprints to generate for molecules in <em>SDFile(s)</em>. Possible
486 values: <em>PathLengthBits, PathLengthCount</em>. Default value: <em>PathLengthBits</em>.</p>
487 <p>For <em>PathLengthBits</em> value of <strong>-m, --mode</strong> option, a fingerprint bit-vector string containing
488 zeros and ones is generated and for <em>PathLengthCount</em> value, a fingerprint vector string
489 corresponding to number of atom paths is generated.</p>
490 </dd>
491 <dt><strong><strong>--MinPathLength</strong> <em>number</em></strong></dt>
492 <dd>
493 <p>Minimum atom path length to include in fingerprints. Default value: <em>1</em>. Valid values:
494 positive integers and less than <strong>--MaxPathLength</strong>. Path length of 1 correspond to
495 a path containing only one atom.</p>
496 </dd>
497 <dt><strong><strong>--MaxPathLength</strong> <em>number</em></strong></dt>
498 <dd>
499 <p>Maximum atom path length to include in fingerprints. Default value: <em>8</em>. Valid values:
500 positive integers and greater than <strong>--MinPathLength</strong>.</p>
501 </dd>
502 <dt><strong><strong>-n, --NumOfBitsToSetPerPath</strong> <em>number</em></strong></dt>
503 <dd>
504 <p>Number of bits to set per path during generation of fingerprints bit-vector string for <em>PathLengthBits</em>
505 value of <strong>-m, --mode</strong> option. Default value: <em>1</em>. Valid values: positive integers.</p>
506 </dd>
507 <dt><strong><strong>--OutDelim</strong> <em>comma | tab | semicolon</em></strong></dt>
508 <dd>
509 <p>Delimiter for output CSV/TSV text file(s). Possible values: <em>comma, tab, or semicolon</em>
510 Default value: <em>comma</em>.</p>
511 </dd>
512 <dt><strong><strong>--output</strong> <em>SD | FP | text | all</em></strong></dt>
513 <dd>
514 <p>Type of output files to generate. Possible values: <em>SD, FP, text, or all</em>. Default value: <em>text</em>.</p>
515 </dd>
516 <dt><strong><strong>-o, --overwrite</strong></strong></dt>
517 <dd>
518 <p>Overwrite existing files.</p>
519 </dd>
520 <dt><strong><strong>-p, --PathMode</strong> <em>AtomPathsWithoutRings | AtomPathsWithRings | AllAtomPathsWithoutRings | AllAtomPathsWithRings</em></strong></dt>
521 <dd>
522 <p>Specify type of atom paths to use for generating pathlength fingerprints for molecules in
523 <em>SDFile(s)</em>. Possible values:<em>AtomPathsWithoutRings, AtomPathsWithRings,
524 AllAtomPathsWithoutRings, AllAtomPathsWithRings</em>. Default value: <em>AllAtomPathsWithRings</em>.</p>
525 <p>For molecules with no rings, first two and last two options are equivalent and generate
526 same set of atom paths starting from each atom with length between <strong>--MinPathLength</strong>
527 and <strong>--MaxPathLength</strong>. However, all these four options can result in the same set of
528 final atom paths for molecules containing fused, bridged or spiro rings.</p>
529 <p>For molecules containing rings, atom paths starting from each atom can be traversed in
530 four different ways:</p>
531 <p><em>AtomPathsWithoutRings</em> - Atom paths containing no rings and without sharing of bonds
532 in traversed paths.</p>
533 <p><em>AtomPathsWithRings</em> - Atom paths containing rings and without any sharing of bonds in
534 traversed paths.</p>
535 <p><em>AllAtomPathsWithoutRings</em> - All possible atom paths containing no rings and without any
536 sharing of bonds in traversed paths.</p>
537 <p><em>AllAtomPathsWithRings</em> - All possible atom paths containing rings and with sharing of
538 bonds in traversed paths.</p>
539 <p>Atom path traversal is terminated at the ring atom.</p>
540 <p>Based on values specified for for <strong>-p, --PathMode</strong>, <strong>--MinPathLength</strong> and
541 <strong>--MaxPathLength</strong>, all appropriate atom paths are generated for each atom in the molecule
542 and collected in a list.</p>
543 <p>For each atom path in the filtered atom paths list, an atom path string is created using value of
544 <strong>-a, --AtomIdentifierType</strong> and specified values to use for a particular atom identifier type.
545 Value of <strong>-u, --UseBondSymbols</strong> controls whether bond order symbols are used during generation
546 of atom path string. Atom symbol corresponds to element symbol and characters used to represent
547 bond order are: <em>1 - None; 2 - '='; 3 - '#'; 1.5 or aromatic - ':'; others: bond order value</em>. By default,
548 bond symbols are included in atom path strings. Exclusion of bond symbols in atom path strings
549 results in fingerprints which correspond purely to atom paths without considering bonds.</p>
550 <p><strong>UseUniquePaths</strong> controls the removal of structurally duplicate atom path strings are removed
551 from the list.</p>
552 <p>For <em>PathLengthBits</em> value of <strong>-m, --mode</strong> option, each atom path is hashed to a 32 bit unsigned
553 integer key using <strong>TextUtil::HashCode</strong> function. Using the hash key as a seed for a random number
554 generator, a random integer value between 0 and <strong>--Size</strong> is used to set corresponding bits
555 in the fingerprint bit-vector string. Value of <strong>--NumOfBitsToSetPerPaths</strong> option controls the number
556 of time a random number is generated to set corresponding bits.</p>
557 <p>For <em> PathLengthCount</em> value of <strong>-m, --mode</strong> option, the number of times an atom path appears
558 is tracked and a fingerprints count-string corresponding to count of atom paths is generated.</p>
559 <p>For molecule containing rings, combination of <strong>-p, --PathMode</strong> and <strong>--UseBondSymbols</strong> allows
560 generation of up to 8 different types of atom path length strings:</p>
561 <div class="OptionsBox">
562 AllowSharedBonds AllowRings UseBondSymbols</div>
563 <div class="OptionsBox">
564 0 0 1 - AtomPathsNoCyclesWithBondSymbols
565 <br/> 0 1 1 - AtomPathsWithCyclesWithBondSymbols</div>
566 <div class="OptionsBox">
567 1 0 1 - AllAtomPathsNoCyclesWithBondSymbols
568 <br/> 1 1 1 - AllAtomPathsWithCyclesWithBondSymbols
569 [ DEFAULT ]</div>
570 <div class="OptionsBox">
571 0 0 0 - AtomPathsNoCyclesNoBondSymbols
572 <br/> 0 1 0 - AtomPathsWithCyclesNoBondSymbols</div>
573 <div class="OptionsBox">
574 1 0 0 - AllAtomPathsNoCyclesNoBondSymbols
575 <br/> 1 1 0 - AllAtomPathsWithCyclesNoWithBondSymbols</div>
576 <p>Default atom path length fingerprints generation for molecules containing rings with
577 <em>AllAtomPathsWithRings</em> value for <strong>-p, --PathMode</strong>, <em>Yes</em> value for <strong>--UseBondSymbols</strong>,
578 <em>2</em> value for <strong>--MinPathLength</strong> and <em>8</em> value for <strong>--MaxPathLength</strong> is the most time
579 consuming. Combinations of other options can substantially speed up fingerprint generation
580 for molecules containing complex ring systems.</p>
581 <p>Additionally, value for option <strong>-a, --AtomIdentifierType</strong> in conjunction with corresponding specified
582 values for atom types changes the nature of atom path length strings and the fingerprints.</p>
583 </dd>
584 <dt><strong><strong>-q, --quote</strong> <em>Yes | No</em></strong></dt>
585 <dd>
586 <p>Put quote around column values in output CSV/TSV text file(s). Possible values:
587 <em>Yes or No</em>. Default value: <em>Yes</em>.</p>
588 </dd>
589 <dt><strong><strong>-r, --root</strong> <em>RootName</em></strong></dt>
590 <dd>
591 <p>New file name is generated using the root: &lt;Root&gt;.&lt;Ext&gt;. Default for new file
592 names: &lt;SDFileName&gt;&lt;PathLengthFP&gt;.&lt;Ext&gt;. The file type determines &lt;Ext&gt; value.
593 The sdf, fpf, csv, and tsv &lt;Ext&gt; values are used for SD, FP, comma/semicolon, and tab
594 delimited text files, respectively.This option is ignored for multiple input files.</p>
595 </dd>
596 <dt><strong><strong>-s, --size</strong> <em>number</em></strong></dt>
597 <dd>
598 <p>Size of fingerprints. Default value: <em>1024</em>. Valid values correspond to any positive
599 integer which satisfies the following criteria: power of 2, &gt;= 32 and &lt;= 2 ** 32.</p>
600 <p>Examples:</p>
601 <div class="OptionsBox">
602 256
603 512
604 2048</div>
605 </dd>
606 <dt><strong><strong>-u, --UseBondSymbols</strong> <em>Yes | No</em></strong></dt>
607 <dd>
608 <p>Specify whether to use bond symbols for atom paths during generation of atom path strings.
609 Possible values: <em>Yes or No</em>. Default value: <em>Yes</em>.</p>
610 <p><em>No</em> value option for <strong>-u, --UseBondSymbols</strong> allows the generation of fingerprints corresponding
611 purely to atoms disregarding all bonds.</p>
612 </dd>
613 <dt><strong><strong>--UsePerlCoreRandom</strong> <em>Yes | No</em></strong></dt>
614 <dd>
615 <p>Specify whether to use Perl CORE::rand or MayaChemTools MathUtil::random function
616 during random number generation for setting bits in fingerprints bit-vector strings. Possible
617 values: <em>Yes or No</em>. Default value: <em>Yes</em>.</p>
618 <p><em>No</em> value option for <strong>--UsePerlCoreRandom</strong> allows the generation of fingerprints
619 bit-vector strings which are same across different platforms.</p>
620 <p>The random number generator implemented in MayaChemTools is a variant of
621 linear congruential generator (LCG) as described by Miller et al. [ Ref 120 ].
622 It is also referred to as Lehmer random number generator or Park-Miller
623 random number generator.</p>
624 <p>Unlike Perl's core random number generator function rand, the random number
625 generator implemented in MayaChemTools, MathUtil::random, generates consistent
626 random values across different platforms for a specific random seed and leads
627 to generation of portable fingerprints bit-vector strings.</p>
628 </dd>
629 <dt><strong><strong>--UseUniquePaths</strong> <em>Yes | No</em></strong></dt>
630 <dd>
631 <p>Specify whether to use structurally unique atom paths during generation of atom path strings.
632 Possible values: <em>Yes or No</em>. Default value: <em>Yes</em>.</p>
633 <p><em>No</em> value option for <strong>--UseUniquePaths</strong> allows usage of all atom paths generated by
634 <strong>-p, --PathMode</strong> option value for generation of atom path strings leading to duplicate
635 path count during <em>PathLengthCount</em> value of <strong>-m, --mode</strong> option. It doesn't change fingerprint
636 string generated during <em>PathLengthBits</em> value of <strong>-m, --mode</strong>.</p>
637 <p>For example, during <em>AllAtomPathsWithRings</em> value of <strong>-p, --PathMode</strong> option, benzene has
638 12 linear paths of length 2 and 12 cyclic paths length of 7, but only 6 linear paths of length 2 and
639 1 cyclic path of length 7 are structurally unique.</p>
640 </dd>
641 <dt><strong><strong>-v, --VectorStringFormat</strong> <em>IDsAndValuesString | IDsAndValuesPairsString | ValuesAndIDsString | ValuesAndIDsPairsString</em></strong></dt>
642 <dd>
643 <p>Format of fingerprints vector string data in output SD, FP or CSV/TSV text file(s) specified by
644 <strong>--output</strong> used during <em>PathLengthCount</em> value of <strong>-m, --mode</strong> option. Possible
645 values: <em>IDsAndValuesString | IDsAndValuesPairsString | ValuesAndIDsString |
646 ValuesAndIDsPairsString</em>. Defaultvalue: <em>IDsAndValuesString</em>.</p>
647 <p>Examples:</p>
648 <div class="OptionsBox">
649 FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
650 <br/> 1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
651 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
652 <br/> 2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1
653 <br/> 2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
654 <br/> 4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C....</div>
655 <div class="OptionsBox">
656 FingerprintsVector;PathLengthCount:EStateAtomTypes:MinLength1:MaxLengt
657 <br/> h8;454;NumericalValues;IDsAndValuesPairsString;aaCH 14 aasC 8 aasN 1 d
658 <br/> O 2 dssC 2 sCH3 2 sF 1 sOH 3 ssCH2 4 ssNH 1 sssCH 3 aaCH:aaCH 10 aaCH:
659 <br/> aasC 8 aasC:aasC 3 aasC:aasN 2 aasCaasC 2 aasCdssC 1 aasCsF 1 aasCssNH
660 <br/> 1 aasCsssCH 1 aasNssCH2 1 dO=dssC 2 dssCsOH 1 dssCssCH2 1 dssCssNH 1
661 <br/> sCH3sssCH 2 sOHsssCH 2 ssCH2ssCH2 1 ssCH2sssCH 4 aaCH:aaCH:aaCH 6 a...</div>
662 </dd>
663 <dt><strong><strong>-w, --WorkingDir</strong> <em>DirName</em></strong></dt>
664 <dd>
665 <p>Location of working directory. Default: current directory.</p>
666 </dd>
667 </dl>
668 <p>
669 </p>
670 <h2>EXAMPLES</h2>
671 <p>To generate path length fingerprints corresponding to all unique paths from length 1
672 through 8 in hexadecimal bit-vector string format of size 1024 and create a
673 SamplePLFPHex.csv file containing sequential compound IDs along with fingerprints
674 bit-vector strings data, type:</p>
675 <div class="ExampleBox">
676 % PathLengthFingerprints.pl -o -r SamplePLFPHex Sample.sdf</div>
677 <p>To generate path length fingerprints corresponding to all unique paths from length 1
678 through 8 in hexadecimal bit-vector string format of size 1024 and create SamplePLFPHex.sdf,
679 SamplePLFPHex.fpf, and SamplePLFPHex.csv files containing sequential compound IDs
680 in CSV file along with fingerprints bit-vector strings data, type:</p>
681 <div class="ExampleBox">
682 % PathLengthFingerprints.pl --output all -o -r SamplePLFPHex Sample.sdf</div>
683 <p>To generate path length fingerprints corresponding to all unique paths from length 1
684 through 8 in binary bit-vector string format of size 1024 and create a
685 SamplePLFPBin.csv file containing sequential compound IDs along with fingerprints
686 bit-vector strings data, type:</p>
687 <div class="ExampleBox">
688 % PathLengthFingerprints.pl --BitStringFormat BinaryString --size 2048
689 -o -r SamplePLFPBin Sample.sdf</div>
690 <p>To generate path length fingerprints corresponding to count of all unique paths from
691 length 1 through 8 in IDsAndValuesString format and create a SamplePLFPCount.csv file
692 containing sequential compound IDs along with fingerprints vector strings data, type:</p>
693 <div class="ExampleBox">
694 % PathLengthFingerprints.pl -m PathLengthCount -o -r SamplePLFPCount
695 Sample.sdf</div>
696 <p>To generate path length fingerprints corresponding to count of all unique paths from
697 length 1 through 8 in IDsAndValuesString format using E-state atom types and
698 create a SamplePLFPCount.csv file containing sequential compound IDs along with fingerprints
699 vector strings data, type:</p>
700 <div class="ExampleBox">
701 % PathLengthFingerprints.pl -m PathLengthCount --AtomIdentifierType
702 EStateAtomTypes -o -r SamplePLFPCount Sample.sdf</div>
703 <p>To generate path length fingerprints corresponding to count of all unique paths from
704 length 1 through 8 in IDsAndValuesString format using SLogP atom types and
705 create a SamplePLFPCount.csv file containing sequential compound IDs along with fingerprints
706 vector strings data, type:</p>
707 <div class="ExampleBox">
708 % PathLengthFingerprints.pl -m PathLengthCount --AtomIdentifierType
709 SLogPAtomTypes -o -r SamplePLFPCount Sample.sdf</div>
710 <p>To generate path length fingerprints corresponding to count of all unique paths from
711 length 1 through 8 in IDsAndValuesString format and create a SamplePLFPCount.csv file
712 containing sequential compound IDs along with fingerprints vector strings data, type:</p>
713 <div class="ExampleBox">
714 % PathLengthFingerprints.pl -m PathLengthCount --VectorStringFormat
715 ValuesAndIDsPairsString -o -r SamplePLFPCount Sample.sdf</div>
716 <p>To generate path length fingerprints corresponding to count of all unique paths from
717 length 1 through 8 in IDsAndValuesString format using AS,X,BO as atomic invariants and
718 create a SamplePLFPCount.csv file containing sequential compound IDs along with fingerprints
719 vector strings data, type:</p>
720 <div class="ExampleBox">
721 % PathLengthFingerprints.pl -m PathLengthCount --AtomIdentifierType
722 AtomicInvariantsAtomTypes --AtomicInvariantsToUse &quot;AS,X,BO&quot; -o
723 -r SamplePLFPCount Sample.sdf</div>
724 <p>To generate path length fingerprints corresponding to count of all paths from
725 length 1 through 8 in IDsAndValuesString format and create a SamplePLFPCount.csv file
726 containing compound IDs from MolName line along with fingerprints vector strings data, type:</p>
727 <div class="ExampleBox">
728 % PathLengthFingerprints.pl -m PathLengthCount --UseUniquePaths No
729 -o --CompoundIDMode MolName -r SamplePLFPCount --UseUniquePaths No
730 Sample.sdf</div>
731 <p>To generate path length fingerprints corresponding to all unique paths from length 1
732 through 8 in hexadecimal bit-vector string format of size 512 after folding and create
733 SamplePLFPHex.sdf, SamplePLFPHex.fpf, and SamplePLFPHex.sdf files containing sequential
734 compound IDs along with fingerprints bit-vector strings data, type:</p>
735 <div class="ExampleBox">
736 % PathLengthFingerprints.pl --output all --Fold Yes --FoldedSize 512
737 -o -r SamplePLFPHex Sample.sdf</div>
738 <p>To generate path length fingerprints corresponding to all unique paths from length 1
739 through 8 containing no rings and without sharing of bonds in hexadecimal bit-vector
740 string format of size 1024 and create a SamplePLFPHex.csv file containing sequential
741 compound IDs along with fingerprints bit-vector strings data and all data fields, type:</p>
742 <div class="ExampleBox">
743 % PathLengthFingerprints.pl -p AtomPathsWithoutRings --DataFieldsMode All
744 -o -r SamplePLFPHex Sample.sdf</div>
745 <p>To generate path length fingerprints corresponding to all unique paths from length 1
746 through 8 containing rings and without sharing of bonds in hexadecimal bit-vector
747 string format of size 1024 and create a SamplePLFPHex.tsv file containing compound IDs
748 derived from combination of molecule name line and an explicit compound prefix
749 along with fingerprints bit-vector strings data and all data fields, type:</p>
750 <div class="ExampleBox">
751 % PathLengthFingerprints.pl -p AtomPathsWithRings --DataFieldsMode
752 CompoundID --CompoundIDMode MolnameOrLabelPrefix --CompoundID Cmpd
753 --CompoundIDLabel MolID --FingerprintsLabel PathLengthFP --OutDelim Tab
754 -r SamplePLFPHex -o Sample.sdf</div>
755 <p>To generate path length fingerprints corresponding to count of all unique paths from
756 length 1 through 8 in IDsAndValuesString format and create a SamplePLFPCount.csv file
757 containing sequential compound IDs along with fingerprints vector strings data using
758 aromaticity specified in SD file, type:</p>
759 <div class="ExampleBox">
760 % PathLengthFingerprints.pl -m PathLengthCount --DetectAromaticity No
761 -o -r SamplePLFPCount Sample.sdf</div>
762 <p>To generate path length fingerprints corresponding to all unique paths from length 2
763 through 6 in hexadecimal bit-vector string format of size 1024 and create a
764 SamplePLFPHex.csv file containing sequential compound IDs along with fingerprints
765 bit-vector strings data, type:</p>
766 <div class="ExampleBox">
767 % PathLengthFingerprints.pl --MinPathLength 2 --MaxPathLength 6
768 -o -r SamplePLFPHex Sample.sdf</div>
769 <p>
770 </p>
771 <h2>AUTHOR</h2>
772 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
773 <p>
774 </p>
775 <h2>SEE ALSO</h2>
776 <p><a href="./InfoFingerprintsFiles.html">InfoFingerprintsFiles.pl</a>,&nbsp<a href="./SimilarityMatricesFingerprints.html">SimilarityMatricesFingerprints.pl</a>,&nbsp<a href="./AtomNeighborhoodsFingerprints.html">AtomNeighborhoodsFingerprints.pl</a>,&nbsp
777 <a href="./ExtendedConnectivityFingerprints.html">ExtendedConnectivityFingerprints.pl</a>,&nbsp<a href="./MACCSKeysFingerprints.html">MACCSKeysFingerprints.pl</a>,&nbsp
778 <a href="./TopologicalAtomPairsFingerprints.html">TopologicalAtomPairsFingerprints.pl</a>,&nbsp<a href="./TopologicalAtomTorsionsFingerprints.html">TopologicalAtomTorsionsFingerprints.pl</a>,&nbsp
779 <a href="./TopologicalPharmacophoreAtomPairsFingerprints.html">TopologicalPharmacophoreAtomPairsFingerprints.pl</a>,&nbsp<a href="./TopologicalPharmacophoreAtomTripletsFingerprints.html">TopologicalPharmacophoreAtomTripletsFingerprints.pl</a>
780 </p>
781 <p>
782 </p>
783 <h2>COPYRIGHT</h2>
784 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
785 <p>This file is part of MayaChemTools.</p>
786 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
787 the terms of the GNU Lesser General Public License as published by the Free
788 Software Foundation; either version 3 of the License, or (at your option)
789 any later version.</p>
790 <p>&nbsp</p><p>&nbsp</p><div class="DocNav">
791 <table width="100%" border=0 cellpadding=0 cellspacing=2>
792 <tr align="left" valign="top"><td width="33%" align="left"><a href="./MolFilesToSD.html" title="MolFilesToSD.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./SDFilesToHTML.html" title="SDFilesToHTML.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>PathLengthFingerprints.pl</strong></td></tr>
793 </table>
794 </div>
795 <br />
796 <center>
797 <img src="../../images/h2o2.png">
798 </center>
799 </body>
800 </html>