comparison mayachemtools/docs/modules/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:Fingerprints::PathLengthFingerprints.pm</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="./MACCSKeys.html" title="MACCSKeys.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./TopologicalAtomPairsFingerprints.html" title="TopologicalAtomPairsFingerprints.html">Next</a></td><td width="34%" align="middle"><strong>Fingerprints::PathLengthFingerprints.pm</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</p>
22 <p>
23 </p>
24 <h2>SYNOPSIS</h2>
25 <p>use Fingerprints::PathLengthFingerprints;</p>
26 <p>use Fingerprints::PathLengthFingerprints qw(:all);</p>
27 <p>
28 </p>
29 <h2>DESCRIPTION</h2>
30 <p><strong>PathLengthFingerprints</strong> class provides the following methods:</p>
31 <p> <a href="#new">new</a>, <a href="#generatefingerprints">GenerateFingerprints</a>, <a href="#getdescription">GetDescription</a>, <a href="#setatomidentifiertype">SetAtomIdentifierType</a>
32 , <a href="#setatomicinvariantstouse">SetAtomicInvariantsToUse</a>, <a href="#setfunctionalclassestouse">SetFunctionalClassesToUse</a>, <a href="#setmaxlength">SetMaxLength</a>
33 , <a href="#setminlength">SetMinLength</a>, <a href="#setnumofbitstosetperpath">SetNumOfBitsToSetPerPath</a>, <a href="#settype">SetType</a>
34 , <a href="#stringifypathlengthfingerprints">StringifyPathLengthFingerprints</a>
35 </p><p><strong>PathLengthFingerprints</strong> is derived from <strong>Fingerprints</strong> class which in turn
36 is derived from <strong>ObjectProperty</strong> base class that provides methods not explicitly defined
37 in <strong>PathLengthFingerprints</strong>, <strong>Fingerprints</strong> or <strong>ObjectProperty</strong> classes using Perl's
38 AUTOLOAD functionality. These methods are generated on-the-fly for a specified object property:</p>
39 <div class="OptionsBox">
40 Set&lt;PropertyName&gt;(&lt;PropertyValue&gt;);
41 <br/> $PropertyValue = Get&lt;PropertyName&gt;();
42 <br/> Delete&lt;PropertyName&gt;();</div>
43 <p>The current release of MayaChemTools supports generation of <strong>AtomTypesFingerpritns</strong>
44 corresponding to following <strong>AtomtomIdentifierTypes</strong>:</p>
45 <div class="OptionsBox">
46 AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
47 <br/> FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes,
48 <br/> SYBYLAtomTypes, TPSAAtomTypes, UFFAtomTypes</div>
49 <p>Based on the values specified for <strong>Type</strong>, <strong>AtomtomIdentifierTypes</strong>, <strong>MinPathLength</strong> and
50 <strong>MaxPathLength</strong>, all appropriate atom paths are generated for each atom in the molecule
51 and collected in a list and the list is filtered to remove any structurally duplicate paths as
52 indicated by the value of <strong>UseUniquePaths</strong>.</p>
53 <p>For molecules containing rings, atom paths starting from each atom can be traversed in four
54 different ways:</p>
55 <div class="OptionsBox">
56 o Atom paths without any rings and sharing of bonds in traversed paths.
57 <br/> o Atom paths containing rings and without any sharing of bonds in
58 traversed paths
59 <br/> o All possible atom paths without any rings and sharing of bonds in
60 traversed paths
61 <br/> o All possible atom paths containing rings and with sharing of bonds in
62 traversed paths.</div>
63 <p>Atom path traversal is terminated at the last ring atom. For molecules containing no rings,
64 first two and last two types described above are equivalent.</p>
65 <p><strong>AllowSharedBonds</strong> and <strong>AllowRings</strong> allow generation of different types of paths
66 to be used for fingerprints generation.</p>
67 <p>The combination of <strong>AllowSharedBonds</strong>, <strong>AllowRings</strong>, and <strong>UseBondSymbols</strong> allows generation of
68 8 different types of path length fingerprints:</p>
69 <div class="OptionsBox">
70 AllowSharedBonds AllowRings UseBondSymbols</div>
71 <div class="OptionsBox">
72 0 0 1 - AtomPathsNoCyclesWithBondSymbols
73 <br/> 0 1 1 - AtomPathsWithCyclesWithBondSymbols</div>
74 <div class="OptionsBox">
75 1 0 1 - AllAtomPathsNoCyclesWithBondSymbols
76 <br/> 1 1 1 - AllAtomPathsWithCyclesWithBondSymbols
77 [ DEFAULT ]</div>
78 <div class="OptionsBox">
79 0 0 0 - AtomPathsNoCyclesNoBondSymbols
80 <br/> 0 1 0 - AtomPathsWithCyclesNoBondSymbols</div>
81 <div class="OptionsBox">
82 1 0 0 - AllAtomPathsNoCyclesNoBondSymbols
83 <br/> 1 1 0 - AllAtomPathsWithCyclesNoWithBondSymbols</div>
84 <p>Additionally, possible values for option <strong>--AtomIdentifierType</strong> in conjunction with corresponding
85 specified values for <strong>AtomicInvariantsToUse</strong> and <strong>FunctionalClassesToUse </strong> changes the nature
86 of atom path length strings and the fingerprints.</p>
87 <p>For each atom path in the filtered atom paths list, an atom path string is created using value of
88 <strong>AtomIdentifierType</strong> and specified values to use for a particular atom identifier type.
89 Value of <strong>UseBondSymbols</strong> controls whether bond order symbols are used during generation
90 of atom path string. Atom symbol corresponds to element symbol and characters used to represent
91 bond order are: <em>1 - None; 2 - '='; 3 - '#'; 1.5 or aromatic - ':'; others: bond order value</em>. By default,
92 bond symbols are included in atom path strings. Exclusion of bond symbols in atom path strings
93 results in fingerprints which correspond purely to atom paths without considering bonds.</p>
94 <p><strong>UseUniquePaths</strong> controls the removal of structurally duplicate atom path strings are removed
95 from the list.</p>
96 <p>For <em>PathLengthBits</em> value of <strong>Type</strong>, each atom path is hashed to a 32 bit unsigned
97 integer key using <strong>TextUtil::HashCode</strong> function. Using the hash key as a seed for a random number
98 generator, a random integer value between 0 and <strong>Size</strong> is used to set corresponding bits
99 in the fingerprint bit-vector string. Value of <strong>NumOfBitsToSetPerPaths</strong> option controls the number
100 of time a random number is generated to set corresponding bits.</p>
101 <p>For <em> PathLengthCount</em> value of <strong>Type</strong>n, the number of times an atom path appears
102 is tracked and a fingerprints count-string corresponding to count of atom paths is generated.</p>
103 <p>The current release of MayaChemTools generates the following types of path length
104 fingerprints bit-vector and vector strings:</p>
105 <div class="OptionsBox">
106 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
107 <br/> th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
108 <br/> 0100010101011000101001011100110001000010001001101000001001001001001000
109 <br/> 0010110100000111001001000001001010100100100000000011000000101001011100
110 <br/> 0010000001000101010100000100111100110111011011011000000010110111001101
111 <br/> 0101100011000000010001000011000010100011101100001000001000100000000...</div>
112 <div class="OptionsBox">
113 FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
114 <br/> th1:MaxLength8;1024;HexadecimalString;Ascending;48caa1315d82d91122b029
115 <br/> 42861c9409a4208182d12015509767bd0867653604481a8b1288000056090583603078
116 <br/> 9cedae54e26596889ab121309800900490515224208421502120a0dd9200509723ae89
117 <br/> 00024181b86c0122821d4e4880c38620dab280824b455404009f082003d52c212b4e6d
118 <br/> 6ea05280140069c780290c43</div>
119 <div class="OptionsBox">
120 FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
121 <br/> 1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
122 <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
123 <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
124 <br/> 2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
125 <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>
126 <div class="OptionsBox">
127 FingerprintsVector;PathLengthCount:DREIDINGAtomTypes:MinLength1:MaxLen
128 <br/> gth8;410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_
129 <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
130 <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
131 <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
132 <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>
133 <div class="OptionsBox">
134 FingerprintsVector;PathLengthCount:EStateAtomTypes:MinLength1:MaxLengt
135 <br/> h8;454;NumericalValues;IDsAndValuesPairsString;aaCH 14 aasC 8 aasN 1 d
136 <br/> O 2 dssC 2 sCH3 2 sF 1 sOH 3 ssCH2 4 ssNH 1 sssCH 3 aaCH:aaCH 10 aaCH:
137 <br/> aasC 8 aasC:aasC 3 aasC:aasN 2 aasCaasC 2 aasCdssC 1 aasCsF 1 aasCssNH
138 <br/> 1 aasCsssCH 1 aasNssCH2 1 dO=dssC 2 dssCsOH 1 dssCssCH2 1 dssCssNH 1
139 <br/> sCH3sssCH 2 sOHsssCH 2 ssCH2ssCH2 1 ssCH2sssCH 4 aaCH:aaCH:aaCH 6 a...</div>
140 <div class="OptionsBox">
141 FingerprintsVector;PathLengthCount:FunctionalClassAtomTypes:MinLength1
142 <br/> :MaxLength8;404;NumericalValues;IDsAndValuesPairsString;Ar 22 Ar.HBA 1
143 <br/> HBA 2 HBA.HBD 3 HBD 1 Hal 1 NI 1 None 10 Ar.HBA:Ar 2 Ar.HBANone 1 Ar:
144 <br/> Ar 21 ArAr 2 ArHBD 1 ArHal 1 ArNone 2 HBA.HBDNI 1 HBA.HBDNone 2 HBA=NI
145 <br/> 1 HBA=None 1 HBDNone 1 NINone 1 NoneNone 7 Ar.HBA:Ar:Ar 2 Ar.HBA:ArAr
146 <br/> 1 Ar.HBA:ArNone 1 Ar.HBANoneNone 1 Ar:Ar.HBA:Ar 1 Ar:Ar.HBANone 2 ...</div>
147 <div class="OptionsBox">
148 FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt
149 <br/> h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1
150 <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
151 <br/> 5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1
152 <br/> CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR
153 <br/> OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ...</div>
154 <div class="OptionsBox">
155 FingerprintsVector;PathLengthCount:SLogPAtomTypes:MinLength1:MaxLength
156 <br/> 8;518;NumericalValues;IDsAndValuesPairsString;C1 5 C10 1 C11 1 C14 1 C
157 <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
158 <br/> 1 C10N11 1 C11C1 2 C11C21 1 C14:C18 2 C14F 1 C18:C18 10 C18:C20 4 C18
159 <br/> :C22 2 C1C5 1 C1CS 4 C20:C20 1 C20:C21 1 C20:N11 1 C20C20 2 C21:C21 1
160 <br/> C21:N11 1 C21C5 1 C22N4 1 C5=O10 1 C5=O9 1 C5N4 1 C5O2 1 CSO2 2 C10...</div>
161 <div class="OptionsBox">
162 FingerprintsVector;PathLengthCount:SYBYLAtomTypes:MinLength1:MaxLength
163 <br/> 8;412;NumericalValues;IDsAndValuesPairsString;C.2 2 C.3 9 C.ar 22 F 1
164 <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.
165 <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
166 <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
167 <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>
168 <div class="OptionsBox">
169 FingerprintsVector;PathLengthCount:TPSAAtomTypes:MinLength1:MaxLength8
170 <br/> ;331;NumericalValues;IDsAndValuesPairsString;N21 1 N7 1 None 34 O3 2 O
171 <br/> 4 3 N21:None 2 N21None 1 N7None 2 None:None 21 None=O3 2 NoneNone 13 N
172 <br/> oneO4 3 N21:None:None 2 N21:NoneNone 2 N21NoneNone 1 N7None:None 2 N7N
173 <br/> one=O3 1 N7NoneNone 1 None:N21:None 1 None:N21None 2 None:None:None 20
174 <br/> None:NoneNone 12 NoneN7None 1 NoneNone=O3 2 NoneNoneNone 8 NoneNon...</div>
175 <div class="OptionsBox">
176 FingerprintsVector;PathLengthCount:UFFAtomTypes:MinLength1:MaxLength8;
177 <br/> 410;NumericalValues;IDsAndValuesPairsString;C_2 2 C_3 9 C_R 22 F_ 1 N_
178 <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_
179 <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_
180 <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
181 <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>
182 <p>
183 </p>
184 <h2>METHODS</h2>
185 <dl>
186 <dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
187 <dd>
188 <div class="OptionsBox">
189 $NewPathLengthFingerprints = new PathLengthFingerprints(
190 %NamesAndValues);</div>
191 <p>Using specified <em>PathLengthFingerprints</em> property names and values hash, <strong>new</strong> method creates a new object
192 and returns a reference to newly created <strong>PathLengthFingerprints</strong> object. By default, the following properties are
193 initialized:</p>
194 <div class="OptionsBox">
195 Molecule = '';
196 <br/> Type = ''
197 <br/> Size = 1024
198 <br/> MinSize = 32
199 <br/> MaxSize = 2**32
200 <br/> NumOfBitsToSetPerPath = 1
201 <br/> MinLength = 1
202 <br/> MaxLength = 8
203 <br/> AllowSharedBonds = 1
204 <br/> AllowRings = 1
205 <br/> UseBondSymbols = 1
206 <br/> UseUniquePaths = ''
207 <br/> AtomIdentifierType = ''
208 <br/> SetAtomicInvariantsToUse = ['AS']
209 <br/> FunctionalClassesToUse = ['HBD', 'HBA', 'PI', 'NI', 'Ar', 'Hal']</div>
210 <p>Examples:</p>
211 <div class="OptionsBox">
212 $PathLengthFingerprints = new PathLengthFingerprints(
213 'Molecule' =&gt; $Molecule,
214 'Type' =&gt; 'PathLengthBits',
215 'AtomIdentifierType' =
216 'AtomicInvariantsAtomTypes');</div>
217 <div class="OptionsBox">
218 $PathLengthFingerprints = new PathLengthFingerprints(
219 'Molecule' =&gt; $Molecule,
220 'Type' =&gt; 'PathLengthBits',
221 'Size' =&gt; 1024,
222 'MinLength' =&gt; 1,
223 'MaxLength' =&gt; 8,
224 'AllowRings' =&gt; 1,
225 'AllowSharedBonds' =&gt; 1,
226 'UseBondSymbols' =&gt; 1,
227 'UseUniquePaths' =&gt; 1,
228 'AtomIdentifierType' =
229 'AtomicInvariantsAtomTypes',
230 'AtomicInvariantsToUse' =&gt; ['AS']);</div>
231 <div class="OptionsBox">
232 $PathLengthFingerprints = new PathLengthFingerprints(
233 'Molecule' =&gt; $Molecule,
234 'Type' =&gt; 'PathLengthCount',
235 'MinLength' =&gt; 1,
236 'MaxLength' =&gt; 8,
237 'AllowRings' =&gt; 1,
238 'AllowSharedBonds' =&gt; 1,
239 'UseBondSymbols' =&gt; 1,
240 'UseUniquePaths' =&gt; 1,
241 'AtomIdentifierType' =&gt;
242 'AtomicInvariantsAtomTypes',
243 'AtomicInvariantsToUse' =&gt; ['AS']);</div>
244 <div class="OptionsBox">
245 $PathLengthFingerprints = new PathLengthFingerprints(
246 'Molecule' =&gt; $Molecule,
247 'Type' =&gt; 'PathLengthBits',
248 'AtomIdentifierType' =
249 'SLogPAtomTypes');</div>
250 <div class="OptionsBox">
251 $PathLengthFingerprints = new PathLengthFingerprints(
252 'Molecule' =&gt; $Molecule,
253 'Type' =&gt; 'PathLengthCount',
254 'AtomIdentifierType' =
255 'SYBYLAtomTypes');</div>
256 <div class="OptionsBox">
257 $PathLengthFingerprints = new PathLengthFingerprints(
258 'Molecule' =&gt; $Molecule,
259 'Type' =&gt; 'PathLengthBits',
260 'AtomIdentifierType' =
261 'FunctionalClassAtomTypes',
262 'FunctionalClassesToUse' =&gt; ['HBD', 'HBA', 'Ar']);</div>
263 <div class="OptionsBox">
264 $PathLengthFingerprints-&gt;GenerateFingerprints();
265 <br/> print &quot;$PathLengthFingerprints\n&quot;;</div>
266 </dd>
267 <dt><strong><a name="getdescription" class="item"><strong>GetDescription</strong></a></strong></dt>
268 <dd>
269 <div class="OptionsBox">
270 $Description = $PathLengthFingerprints-&gt;GetDescription();</div>
271 <p>Returns a string containing description of path length fingerprints.</p>
272 </dd>
273 <dt><strong><a name="generatefingerprints" class="item"><strong>GenerateFingerprints</strong></a></strong></dt>
274 <dd>
275 <div class="OptionsBox">
276 $PathLengthFingerprints-&gt;GenerateFingerprints();</div>
277 <p>Generates path length fingerprints and returns <em>PathLengthFingerprints</em>.</p>
278 </dd>
279 <dt><strong><a name="setmaxlength" class="item"><strong>SetMaxLength</strong></a></strong></dt>
280 <dd>
281 <div class="OptionsBox">
282 $PathLengthFingerprints-&gt;SetMaxLength($Length);</div>
283 <p>Sets maximum value of atom path length to be used during atom path length fingerprints
284 generation and returns <em>PathLengthFingerprints</em></p>
285 </dd>
286 <dt><strong><a name="setatomidentifiertype" class="item"><strong>SetAtomIdentifierType</strong></a></strong></dt>
287 <dd>
288 <div class="OptionsBox">
289 $PathLengthFingerprints-&gt;SetAtomIdentifierType();</div>
290 <p>Sets atom <em>IdentifierType</em> to use during path length fingerprints generation and
291 returns <em>PathLengthFingerprints</em>.</p>
292 <p>Possible values: <em>AtomicInvariantsAtomTypes, DREIDINGAtomTypes, EStateAtomTypes,
293 FunctionalClassAtomTypes, MMFF94AtomTypes, SLogPAtomTypes, SYBYLAtomTypes,
294 TPSAAtomTypes, UFFAtomTypes</em>.</p>
295 </dd>
296 <dt><strong><a name="setatomicinvariantstouse" class="item"><strong>SetAtomicInvariantsToUse</strong></a></strong></dt>
297 <dd>
298 <div class="OptionsBox">
299 $PathLengthFingerprints-&gt;SetAtomicInvariantsToUse($ValuesRef);
300 <br/> $PathLengthFingerprints-&gt;SetAtomicInvariantsToUse(@Values);</div>
301 <p>Sets atomic invariants to use during <em>AtomicInvariantsAtomTypes</em> value of <em>AtomIdentifierType</em>
302 for path length fingerprints generation and returns <em>PathLengthFingerprints</em>.</p>
303 <p>Possible values for atomic invariants are: <em>AS, X, BO, LBO, SB, DB, TB,
304 H, Ar, RA, FC, MN, SM</em>. Default value: <em>AS</em>.</p>
305 <p>The atomic invariants abbreviations correspond to:</p>
306 <div class="OptionsBox">
307 AS = Atom symbol corresponding to element symbol</div>
308 <div class="OptionsBox">
309 X&lt;n&gt; = Number of non-hydrogen atom neighbors or heavy atoms
310 <br/> BO&lt;n&gt; = Sum of bond orders to non-hydrogen atom neighbors or heavy atoms
311 <br/> LBO&lt;n&gt; = Largest bond order of non-hydrogen atom neighbors or heavy atoms
312 <br/> SB&lt;n&gt; = Number of single bonds to non-hydrogen atom neighbors or heavy atoms
313 <br/> DB&lt;n&gt; = Number of double bonds to non-hydrogen atom neighbors or heavy atoms
314 <br/> TB&lt;n&gt; = Number of triple bonds to non-hydrogen atom neighbors or heavy atoms
315 <br/> H&lt;n&gt; = Number of implicit and explicit hydrogens for atom
316 <br/> Ar = Aromatic annotation indicating whether atom is aromatic
317 <br/> RA = Ring atom annotation indicating whether atom is a ring
318 <br/> FC&lt;+n/-n&gt; = Formal charge assigned to atom
319 <br/> MN&lt;n&gt; = Mass number indicating isotope other than most abundant isotope
320 <br/> SM&lt;n&gt; = Spin multiplicity of atom. Possible values: 1 (singlet), 2 (doublet) or
321 3 (triplet)</div>
322 <p>Atom type generated by AtomTypes::AtomicInvariantsAtomTypes class corresponds to:</p>
323 <div class="OptionsBox">
324 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>
325 <p>Except for AS which is a required atomic invariant in atom types, all other atomic invariants are
326 optional. Atom type specification doesn't include atomic invariants with zero or undefined values.</p>
327 <p>In addition to usage of abbreviations for specifying atomic invariants, the following descriptive words
328 are also allowed:</p>
329 <div class="OptionsBox">
330 X : NumOfNonHydrogenAtomNeighbors or NumOfHeavyAtomNeighbors
331 <br/> BO : SumOfBondOrdersToNonHydrogenAtoms or SumOfBondOrdersToHeavyAtoms
332 <br/> LBO : LargestBondOrderToNonHydrogenAtoms or LargestBondOrderToHeavyAtoms
333 <br/> SB : NumOfSingleBondsToNonHydrogenAtoms or NumOfSingleBondsToHeavyAtoms
334 <br/> DB : NumOfDoubleBondsToNonHydrogenAtoms or NumOfDoubleBondsToHeavyAtoms
335 <br/> TB : NumOfTripleBondsToNonHydrogenAtoms or NumOfTripleBondsToHeavyAtoms
336 <br/> H : NumOfImplicitAndExplicitHydrogens
337 <br/> Ar : Aromatic
338 <br/> RA : RingAtom
339 <br/> FC : FormalCharge
340 <br/> MN : MassNumber
341 <br/> SM : SpinMultiplicity</div>
342 <p><em>AtomTypes::AtomicInvariantsAtomTypes</em> module is used to assign atomic invariant
343 atom types.</p>
344 </dd>
345 <dt><strong><a name="setfunctionalclassestouse" class="item"><strong>SetFunctionalClassesToUse</strong></a></strong></dt>
346 <dd>
347 <div class="OptionsBox">
348 $PathLengthFingerprints-&gt;SetFunctionalClassesToUse($ValuesRef);
349 <br/> $PathLengthFingerprints-&gt;SetFunctionalClassesToUse(@Values);</div>
350 <p>Sets functional classes invariants to use during <em>FunctionalClassAtomTypes</em> value of <em>AtomIdentifierType</em>
351 for path length fingerprints generation and returns <em>PathLengthFingerprints</em>.</p>
352 <p>Possible values for atom functional classes are: <em>Ar, CA, H, HBA, HBD, Hal, NI, PI, RA</em>.
353 Default value [ Ref 24 ]: <em>HBD,HBA,PI,NI,Ar,Hal</em>.</p>
354 <p>The functional class abbreviations correspond to:</p>
355 <div class="OptionsBox">
356 HBD: HydrogenBondDonor
357 <br/> HBA: HydrogenBondAcceptor
358 <br/> PI : PositivelyIonizable
359 <br/> NI : NegativelyIonizable
360 <br/> Ar : Aromatic
361 <br/> Hal : Halogen
362 <br/> H : Hydrophobic
363 <br/> RA : RingAtom
364 <br/> CA : ChainAtom</div>
365 <div class="OptionsBox">
366 Functional class atom type specification for an atom corresponds to:</div>
367 <div class="OptionsBox">
368 Ar.CA.H.HBA.HBD.Hal.NI.PI.RA or None</div>
369 <p><em>AtomTypes::FunctionalClassAtomTypes</em> module is used to assign functional class atom
370 types. It uses following definitions [ Ref 60-61, Ref 65-66 ]:</p>
371 <div class="OptionsBox">
372 HydrogenBondDonor: NH, NH2, OH
373 <br/> HydrogenBondAcceptor: N[!H], O
374 <br/> PositivelyIonizable: +, NH2
375 <br/> NegativelyIonizable: -, C(=O)OH, S(=O)OH, P(=O)OH</div>
376 </dd>
377 <dt><strong><a name="setminlength" class="item"><strong>SetMinLength</strong></a></strong></dt>
378 <dd>
379 <div class="OptionsBox">
380 $PathLengthFingerprints-&gt;SetMinLength($Length);</div>
381 <p>Sets minimum value of atom path length to be used during atom path length fingerprints
382 generation and returns <em>PathLengthFingerprints</em>.</p>
383 </dd>
384 <dt><strong><a name="setmaxlength2" class="item"><strong>SetMaxLength</strong></a></strong></dt>
385 <dd>
386 <div class="OptionsBox">
387 $PathLengthFingerprints-&gt;SetMaxLength($Length);</div>
388 <p>Sets maximum value of atom path length to be used during atom path length fingerprints
389 generation and returns <em>PathLengthFingerprints</em>.</p>
390 </dd>
391 <dt><strong><a name="setnumofbitstosetperpath" class="item"><strong>SetNumOfBitsToSetPerPath</strong></a></strong></dt>
392 <dd>
393 <div class="OptionsBox">
394 $PathLengthFingerprints-&gt;SetNumOfBitsToSetPerPath($NumOfBits);</div>
395 <p>Sets number of bits to set for each path during <em>PathLengthBits</em> <strong>Type </strong> during path length fingerprints
396 generation and returns <em>PathLengthFingerprints</em>.</p>
397 </dd>
398 <dt><strong><a name="settype" class="item"><strong>SetType</strong></a></strong></dt>
399 <dd>
400 <div class="OptionsBox">
401 $PathLengthFingerprints-&gt;SetType($Type);</div>
402 <p>Sets type of path length fingerprints and returns <em>PathLengthFingerprints</em>. Possible values:
403 <em>PathLengthBits or PathLengthCount</em>.</p>
404 </dd>
405 <dt><strong><a name="stringifypathlengthfingerprints" class="item"><strong>StringifyPathLengthFingerprints</strong></a></strong></dt>
406 <dd>
407 <div class="OptionsBox">
408 $String = $PathLengthFingerprints-&gt;StringifyPathLengthFingerprints();</div>
409 <p>Returns a string containing information about <em>PathLengthFingerprints</em> object.</p>
410 </dd>
411 </dl>
412 <p>
413 </p>
414 <h2>AUTHOR</h2>
415 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
416 <p>
417 </p>
418 <h2>SEE ALSO</h2>
419 <p><a href="./Fingerprints.html">Fingerprints.pm</a>,&nbsp<a href="./FingerprintsStringUtil.html">FingerprintsStringUtil.pm</a>,&nbsp<a href="./AtomNeighborhoodsFingerprints.html">AtomNeighborhoodsFingerprints.pm</a>,&nbsp
420 <a href="./AtomTypesFingerprints.html">AtomTypesFingerprints.pm</a>,&nbsp<a href="./EStateIndiciesFingerprints.html">EStateIndiciesFingerprints.pm</a>,&nbsp<a href="./ExtendedConnectivityFingerprints.html">ExtendedConnectivityFingerprints.pm</a>,&nbsp
421 <a href="./MACCSKeys.html">MACCSKeys.pm</a>,&nbsp<a href="./TopologicalAtomPairsFingerprints.html">TopologicalAtomPairsFingerprints.pm</a>,&nbsp<a href="./TopologicalAtomTripletsFingerprints.html">TopologicalAtomTripletsFingerprints.pm</a>,&nbsp
422 <a href="./TopologicalAtomTorsionsFingerprints.html">TopologicalAtomTorsionsFingerprints.pm</a>,&nbsp<a href="./TopologicalPharmacophoreAtomPairsFingerprints.html">TopologicalPharmacophoreAtomPairsFingerprints.pm</a>,&nbsp
423 <a href="./TopologicalPharmacophoreAtomTripletsFingerprints.html">TopologicalPharmacophoreAtomTripletsFingerprints.pm</a>
424 </p>
425 <p>
426 </p>
427 <h2>COPYRIGHT</h2>
428 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
429 <p>This file is part of MayaChemTools.</p>
430 <p>MayaChemTools is free software; you can redistribute it and/or modify it under
431 the terms of the GNU Lesser General Public License as published by the Free
432 Software Foundation; either version 3 of the License, or (at your option)
433 any later version.</p>
434 <p>&nbsp</p><p>&nbsp</p><div class="DocNav">
435 <table width="100%" border=0 cellpadding=0 cellspacing=2>
436 <tr align="left" valign="top"><td width="33%" align="left"><a href="./MACCSKeys.html" title="MACCSKeys.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./TopologicalAtomPairsFingerprints.html" title="TopologicalAtomPairsFingerprints.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>Fingerprints::PathLengthFingerprints.pm</strong></td></tr>
437 </table>
438 </div>
439 <br />
440 <center>
441 <img src="../../images/h2o2.png">
442 </center>
443 </body>
444 </html>