0
|
1 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22)
|
|
2 .\"
|
|
3 .\" Standard preamble:
|
|
4 .\" ========================================================================
|
|
5 .de Sp \" Vertical space (when we can't use .PP)
|
|
6 .if t .sp .5v
|
|
7 .if n .sp
|
|
8 ..
|
|
9 .de Vb \" Begin verbatim text
|
|
10 .ft CW
|
|
11 .nf
|
|
12 .ne \\$1
|
|
13 ..
|
|
14 .de Ve \" End verbatim text
|
|
15 .ft R
|
|
16 .fi
|
|
17 ..
|
|
18 .\" Set up some character translations and predefined strings. \*(-- will
|
|
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
|
20 .\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
|
21 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
|
22 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
|
23 .\" nothing in troff, for use with C<>.
|
|
24 .tr \(*W-
|
|
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
|
26 .ie n \{\
|
|
27 . ds -- \(*W-
|
|
28 . ds PI pi
|
|
29 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
|
30 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
|
31 . ds L" ""
|
|
32 . ds R" ""
|
|
33 . ds C` ""
|
|
34 . ds C' ""
|
|
35 'br\}
|
|
36 .el\{\
|
|
37 . ds -- \|\(em\|
|
|
38 . ds PI \(*p
|
|
39 . ds L" ``
|
|
40 . ds R" ''
|
|
41 'br\}
|
|
42 .\"
|
|
43 .\" Escape single quotes in literal strings from groff's Unicode transform.
|
|
44 .ie \n(.g .ds Aq \(aq
|
|
45 .el .ds Aq '
|
|
46 .\"
|
|
47 .\" If the F register is turned on, we'll generate index entries on stderr for
|
|
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
|
49 .\" entries marked with X<> in POD. Of course, you'll have to process the
|
|
50 .\" output yourself in some meaningful fashion.
|
|
51 .ie \nF \{\
|
|
52 . de IX
|
|
53 . tm Index:\\$1\t\\n%\t"\\$2"
|
|
54 ..
|
|
55 . nr % 0
|
|
56 . rr F
|
|
57 .\}
|
|
58 .el \{\
|
|
59 . de IX
|
|
60 ..
|
|
61 .\}
|
|
62 .\"
|
|
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
|
64 .\" Fear. Run. Save yourself. No user-serviceable parts.
|
|
65 . \" fudge factors for nroff and troff
|
|
66 .if n \{\
|
|
67 . ds #H 0
|
|
68 . ds #V .8m
|
|
69 . ds #F .3m
|
|
70 . ds #[ \f1
|
|
71 . ds #] \fP
|
|
72 .\}
|
|
73 .if t \{\
|
|
74 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
|
75 . ds #V .6m
|
|
76 . ds #F 0
|
|
77 . ds #[ \&
|
|
78 . ds #] \&
|
|
79 .\}
|
|
80 . \" simple accents for nroff and troff
|
|
81 .if n \{\
|
|
82 . ds ' \&
|
|
83 . ds ` \&
|
|
84 . ds ^ \&
|
|
85 . ds , \&
|
|
86 . ds ~ ~
|
|
87 . ds /
|
|
88 .\}
|
|
89 .if t \{\
|
|
90 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
|
91 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
|
92 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
|
93 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
|
94 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
|
95 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
|
96 .\}
|
|
97 . \" troff and (daisy-wheel) nroff accents
|
|
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
|
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
|
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
|
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
|
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
|
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
|
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
|
105 .ds ae a\h'-(\w'a'u*4/10)'e
|
|
106 .ds Ae A\h'-(\w'A'u*4/10)'E
|
|
107 . \" corrections for vroff
|
|
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
|
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
|
110 . \" for low resolution devices (crt and lpr)
|
|
111 .if \n(.H>23 .if \n(.V>19 \
|
|
112 \{\
|
|
113 . ds : e
|
|
114 . ds 8 ss
|
|
115 . ds o a
|
|
116 . ds d- d\h'-1'\(ga
|
|
117 . ds D- D\h'-1'\(hy
|
|
118 . ds th \o'bp'
|
|
119 . ds Th \o'LP'
|
|
120 . ds ae ae
|
|
121 . ds Ae AE
|
|
122 .\}
|
|
123 .rm #[ #] #H #V #F C
|
|
124 .\" ========================================================================
|
|
125 .\"
|
|
126 .IX Title "SDFILEUTIL 1"
|
|
127 .TH SDFILEUTIL 1 "2015-03-29" "perl v5.14.2" "MayaChemTools"
|
|
128 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
|
129 .\" way too many mistakes in technical documents.
|
|
130 .if n .ad l
|
|
131 .nh
|
|
132 .SH "NAME"
|
|
133 SDFileUtil
|
|
134 .SH "SYNOPSIS"
|
|
135 .IX Header "SYNOPSIS"
|
|
136 use SDFileUtil ;
|
|
137 .PP
|
|
138 use SDFileUtil qw(:all);
|
|
139 .SH "DESCRIPTION"
|
|
140 .IX Header "DESCRIPTION"
|
|
141 \&\fBSDFileUtil\fR module provides the following functions:
|
|
142 .PP
|
|
143 GenerateCmpdAtomAliasPropertyLines, GenerateCmpdAtomLine, GenerateCmpdBondLine,
|
|
144 GenerateCmpdChargePropertyLines, GenerateCmpdCommentsLine, GenerateCmpdCountsLine,
|
|
145 GenerateCmpdDataHeaderLabelsAndValuesLines, GenerateCmpdIsotopePropertyLines,
|
|
146 GenerateCmpdMiscInfoLine, GenerateCmpdMolNameLine,
|
|
147 GenerateCmpdRadicalPropertyLines, GenerateEmptyCtabBlockLines,
|
|
148 GenerateMiscLineDateStamp, GetAllAndCommonCmpdDataHeaderLabels,
|
|
149 GetCmpdDataHeaderLabels, GetCmpdDataHeaderLabelsAndValues, GetCmpdFragments,
|
|
150 GetCtabLinesCount, GetInvalidAtomNumbers, GetUnknownAtoms,
|
|
151 InternalBondOrderToMDLBondType, InternalBondStereochemistryToMDLBondStereo,
|
|
152 InternalChargeToMDLCharge, InternalSpinMultiplicityToMDLRadical, IsCmpd2D,
|
|
153 IsCmpd3D, MDLBondStereoToInternalBondStereochemistry,
|
|
154 MDLBondTypeToInternalBondOrder, MDLChargeToInternalCharge,
|
|
155 MDLRadicalToInternalSpinMultiplicity, ParseCmpdAtomAliasPropertyLine,
|
|
156 ParseCmpdAtomLine, ParseCmpdBondLine, ParseCmpdChargePropertyLine,
|
|
157 ParseCmpdCommentsLine, ParseCmpdCountsLine, ParseCmpdIsotopePropertyLine,
|
|
158 ParseCmpdMiscInfoLine, ParseCmpdMolNameLine, ParseCmpdRadicalPropertyLine,
|
|
159 ReadCmpdString, RemoveCmpdDataHeaderLabelAndValue, WashCmpd
|
|
160 .SH "METHODS"
|
|
161 .IX Header "METHODS"
|
|
162 .IP "\fBGenerateCmpdAtomAliasPropertyLines\fR" 4
|
|
163 .IX Item "GenerateCmpdAtomAliasPropertyLines"
|
|
164 .Vb 1
|
|
165 \& @Lines = GenerateCmpdAtomAliasPropertyLines($AliasValuePairsRef);
|
|
166 .Ve
|
|
167 .Sp
|
|
168 Returns a formatted atom alias property lines corresponding to successive pairs
|
|
169 of atom number and alias values specified by a refernce to an array. Two lines
|
|
170 are generate for each atom number and alias value pairs: First line \- A <AtomNum>;
|
|
171 Second line:<AtomAlias>.
|
|
172 .IP "\fBGenerateCmpdAtomLine\fR" 4
|
|
173 .IX Item "GenerateCmpdAtomLine"
|
|
174 .Vb 2
|
|
175 \& $Line = GenerateCmpdAtomLine($AtomSymbol, $AtomX, $AtomY,
|
|
176 \& $AtomZ, [$MassDifference, $Charge, $StereoParity]);
|
|
177 .Ve
|
|
178 .Sp
|
|
179 Returns a formatted atom data line containing all the input values.
|
|
180 .IP "\fBGenerateCmpdBondLine\fR" 4
|
|
181 .IX Item "GenerateCmpdBondLine"
|
|
182 .Vb 2
|
|
183 \& $Line = GenerateCmpdBondLine($FirstAtomNum, $SecondAtomNum,
|
|
184 \& $BondType, [$BondStereo]);
|
|
185 .Ve
|
|
186 .Sp
|
|
187 Returns a formatted bond data line containing all the input values.
|
|
188 .IP "\fBGenerateCmpdChargePropertyLines\fR" 4
|
|
189 .IX Item "GenerateCmpdChargePropertyLines"
|
|
190 .Vb 1
|
|
191 \& @Lines = GenerateCmpdChargePropertyLines($ChargeValuePairsRef);
|
|
192 .Ve
|
|
193 .Sp
|
|
194 Returns a formatted M \s-1CHG\s0 property lines corresponding to successive pairs of
|
|
195 atom number and charge values specified by a refernce to an array.
|
|
196 .IP "\fBGenerateCmpdCommentsLine\fR" 4
|
|
197 .IX Item "GenerateCmpdCommentsLine"
|
|
198 .Vb 1
|
|
199 \& $Line = GenerateCmpdCommentsLine($Comments);
|
|
200 .Ve
|
|
201 .Sp
|
|
202 Returns a formatted comments data line.
|
|
203 .IP "\fBGenerateCmpdCountsLine\fR" 4
|
|
204 .IX Item "GenerateCmpdCountsLine"
|
|
205 .Vb 2
|
|
206 \& $Line = GenerateCmpdCountsLine($AtomCount, $BondCount,
|
|
207 \& $ChiralFlag, [$PropertyCount, $Version]);
|
|
208 .Ve
|
|
209 .Sp
|
|
210 Returns a formatted line containing all the input values. The default values of 999
|
|
211 and V2000 are used for \fIPropertyCount\fR and \fIVersion\fR.
|
|
212 .IP "\fBGenerateCmpdDataHeaderLabelsAndValuesLines\fR" 4
|
|
213 .IX Item "GenerateCmpdDataHeaderLabelsAndValuesLines"
|
|
214 .Vb 3
|
|
215 \& @Lines = GenerateCmpdDataHeaderLabelsAndValuesLines(
|
|
216 \& $DataHeaderLabelsRef, $DataHeaderLabelsAndValuesRef,
|
|
217 \& [$SortDataLabels]);
|
|
218 .Ve
|
|
219 .Sp
|
|
220 Returns formatted data lines containing header label and values lines corresponding to
|
|
221 all data header labels in array reference \fIDataHeaderLabelsRef\fR with values in hash
|
|
222 reference \fIDataHeaderLabelsAndValuesRef\fR. By default, data header labels are
|
|
223 not sorted and correspond to the label order in array reference \fIDataHeaderLabelsRef\fR.
|
|
224 .IP "\fBGenerateCmpdIsotopePropertyLines\fR" 4
|
|
225 .IX Item "GenerateCmpdIsotopePropertyLines"
|
|
226 .Vb 1
|
|
227 \& @Lines = GenerateCmpdIsotopePropertyLines($IsotopeValuePairsRef);
|
|
228 .Ve
|
|
229 .Sp
|
|
230 Returns a formatted M \s-1ISO\s0 property lines corresponding to successive pairs of
|
|
231 atom number and isotope values specified by a refernce to an array.
|
|
232 .IP "\fBGenerateCmpdMiscInfoLine\fR" 4
|
|
233 .IX Item "GenerateCmpdMiscInfoLine"
|
|
234 .Vb 2
|
|
235 \& $Line = GenerateCmpdMiscInfoLine([$ProgramName, $UserInitial,
|
|
236 \& $Code]);
|
|
237 .Ve
|
|
238 .Sp
|
|
239 Returns a formatted line containing specified user initial, program name, date and code.
|
|
240 Default values are: \fIProgramName \- MayaChem; UserInitial \- \s-1NULL\s0; Code \- 2D\fR.
|
|
241 .IP "\fBGenerateCmpdMolNameLine\fR" 4
|
|
242 .IX Item "GenerateCmpdMolNameLine"
|
|
243 .Vb 1
|
|
244 \& $Line = GenerateCmpdMolNameLine($MolName);
|
|
245 .Ve
|
|
246 .Sp
|
|
247 Returns a formatted molecule name data line.
|
|
248 .IP "\fBGenerateCmpdRadicalPropertyLines\fR" 4
|
|
249 .IX Item "GenerateCmpdRadicalPropertyLines"
|
|
250 .Vb 1
|
|
251 \& @Lines = GenerateCmpdRadicalPropertyLines($RadicalValuePairsRef);
|
|
252 .Ve
|
|
253 .Sp
|
|
254 Returns a formatted M \s-1CHG\s0 property lines corresponding to successive pairs of
|
|
255 atom number and multiplicity values specified by a refernce to an array.
|
|
256 .IP "\fBGenerateEmptyCtabBlockLines\fR" 4
|
|
257 .IX Item "GenerateEmptyCtabBlockLines"
|
|
258 .Vb 1
|
|
259 \& $Lines = GenerateCmpdMiscInfoLine([$Date]);
|
|
260 .Ve
|
|
261 .Sp
|
|
262 Returns formatted lines representing empty \s-1CTAB\s0 block.
|
|
263 .IP "\fBGenerateMiscLineDateStamp\fR" 4
|
|
264 .IX Item "GenerateMiscLineDateStamp"
|
|
265 .Vb 1
|
|
266 \& $Line = GenerateMiscLineDateStamp();
|
|
267 .Ve
|
|
268 .Sp
|
|
269 Returns date stamp for misc line.
|
|
270 .IP "\fBGetAllAndCommonCmpdDataHeaderLabels\fR" 4
|
|
271 .IX Item "GetAllAndCommonCmpdDataHeaderLabels"
|
|
272 .Vb 3
|
|
273 \& ($CmpdCount, $DataFieldLabelsArrayRef,
|
|
274 \& $CommonDataFieldLabelsArrayRef) =
|
|
275 \& GetAllAndCommonCmpdDataHeaderLabels(\e*SDFILE);
|
|
276 .Ve
|
|
277 .Sp
|
|
278 Returns number of comopunds, a reference to an array containing all unique data header
|
|
279 label and a reference to an array containing common data field labels for all compounds
|
|
280 in \s-1SD\s0 file.
|
|
281 .IP "\fBGetCmpdDataHeaderLabels\fR" 4
|
|
282 .IX Item "GetCmpdDataHeaderLabels"
|
|
283 .Vb 1
|
|
284 \& (@Labels) = GetCmpdDataHeaderLabels(\e@CmpdLines);
|
|
285 .Ve
|
|
286 .Sp
|
|
287 Returns an array containg data header labels for a compound
|
|
288 .IP "\fBGetCmpdDataHeaderLabelsAndValues\fR" 4
|
|
289 .IX Item "GetCmpdDataHeaderLabelsAndValues"
|
|
290 .Vb 1
|
|
291 \& (%DataValues) = GetCmpdDataHeaderLabelsAndValues(\e@CmpdLines);
|
|
292 .Ve
|
|
293 .Sp
|
|
294 Returns a hash conating data header labes and values for a compound.
|
|
295 .IP "\fBGetCmpdFragments\fR" 4
|
|
296 .IX Item "GetCmpdFragments"
|
|
297 .Vb 1
|
|
298 \& ($FragmentCount, $FragmentString) = GetCmpdFragments(\e@CmpLines);
|
|
299 .Ve
|
|
300 .Sp
|
|
301 Figures out the number of disconnected fragments and return their values along
|
|
302 with the atom numbers in a string delimited by new line character. Fragment data
|
|
303 in \fBFragmentString\fR is sorted on based on its size.
|
|
304 .IP "\fBGetCtabLinesCount\fR" 4
|
|
305 .IX Item "GetCtabLinesCount"
|
|
306 .Vb 1
|
|
307 \& $CtabLinesCount = GetCtabLinesCount(\e@CmpdLines);
|
|
308 .Ve
|
|
309 .Sp
|
|
310 Returns number of lines present between the 4th line and the line containg \*(L"M \s-1END\s0\*(R".
|
|
311 .IP "\fBGetInvalidAtomNumbers\fR" 4
|
|
312 .IX Item "GetInvalidAtomNumbers"
|
|
313 .Vb 2
|
|
314 \& ($InvalidAtomNumbersCount, $InvalidAtomNumbers, $InvalidAtomNumberLines) =
|
|
315 \& GetInvalidAtomNumbers(\e@CmpdLines);
|
|
316 .Ve
|
|
317 .Sp
|
|
318 Returns a list of values containing information about invalid atom numbers present
|
|
319 in block or atom property lines.
|
|
320 .IP "\fBGetUnknownAtoms\fR" 4
|
|
321 .IX Item "GetUnknownAtoms"
|
|
322 .Vb 2
|
|
323 \& ($UnknownAtomCount, $UnknownAtoms, $UnknownAtomLines) =
|
|
324 \& GetUnknownAtoms(\e@CmpdLines);
|
|
325 .Ve
|
|
326 .Sp
|
|
327 Returns a list of values containing information about atoms which contain special element
|
|
328 symbols not present in the periodic table.
|
|
329 .IP "\fBInternalBondOrderToMDLBondType\fR" 4
|
|
330 .IX Item "InternalBondOrderToMDLBondType"
|
|
331 .Vb 1
|
|
332 \& $MDLBondType = InternalBondOrderToMDLBondType($InternalBondOrder);
|
|
333 .Ve
|
|
334 .Sp
|
|
335 Returns value of \fIMDLBondType\fR corresponding to \fIInternalBondOrder\fR.
|
|
336 .Sp
|
|
337 .Vb 1
|
|
338 \& InternalBondOrder MDLBondType
|
|
339 \&
|
|
340 \& 1 1
|
|
341 \& 2 2
|
|
342 \& 3 3
|
|
343 \& 1.5 4
|
|
344 .Ve
|
|
345 .IP "\fBInternalBondStereochemistryToMDLBondStereo\fR" 4
|
|
346 .IX Item "InternalBondStereochemistryToMDLBondStereo"
|
|
347 .Vb 2
|
|
348 \& $MDLBondStereo = InternalBondStereochemistryToMDLBondStereo(
|
|
349 \& $InternalBondStereo);
|
|
350 .Ve
|
|
351 .Sp
|
|
352 Returns value of \fIMDLBondStereo\fR corresponding to \fIInternalBondStereo\fR using following
|
|
353 mapping:
|
|
354 .Sp
|
|
355 .Vb 1
|
|
356 \& InternalBondStereo MDLBondStereo
|
|
357 \&
|
|
358 \& Up 1
|
|
359 \& UpOrDown 4
|
|
360 \& Down 6
|
|
361 \& CisOrTrans 3
|
|
362 \& Other 0
|
|
363 .Ve
|
|
364 .IP "\fBInternalChargeToMDLCharge\fR" 4
|
|
365 .IX Item "InternalChargeToMDLCharge"
|
|
366 .Vb 1
|
|
367 \& $MDLCharge = InternalChargeToMDLCharge($InternalCharge);
|
|
368 .Ve
|
|
369 .Sp
|
|
370 Returns value of \fIMDLCharge\fR corresponding to \fIInternalCharge\fR using following
|
|
371 mapping:
|
|
372 .Sp
|
|
373 .Vb 1
|
|
374 \& InternalCharge MDLCharge
|
|
375 \&
|
|
376 \& 3 1
|
|
377 \& 2 2
|
|
378 \& 1 3
|
|
379 \& \-1 5
|
|
380 \& \-2 6
|
|
381 \& \-3 7
|
|
382 .Ve
|
|
383 .IP "\fBInternalSpinMultiplicityToMDLRadical\fR" 4
|
|
384 .IX Item "InternalSpinMultiplicityToMDLRadical"
|
|
385 .Vb 2
|
|
386 \& $MDLRadical = InternalSpinMultiplicityToMDLRadical(
|
|
387 \& $InternalSpinMultiplicity);
|
|
388 .Ve
|
|
389 .Sp
|
|
390 Returns value of \fIMDLRadical\fR corresponding to \fIInternalSpinMultiplicity\fR. These
|
|
391 value are equivalent.
|
|
392 .IP "\fBMDLBondStereoToInternalBondType\fR" 4
|
|
393 .IX Item "MDLBondStereoToInternalBondType"
|
|
394 .Vb 1
|
|
395 \& $InternalBondType = MDLBondStereoToInternalBondType($MDLBondStereo);
|
|
396 .Ve
|
|
397 .Sp
|
|
398 Returns value of \fIInternalBondType\fR corresponding to \fIMDLBondStereo\fR using
|
|
399 mapping shown for \fBInternalBondTypeToMDLBondStereo\fR function.
|
|
400 .IP "\fBIsCmpd2D\fR" 4
|
|
401 .IX Item "IsCmpd2D"
|
|
402 .Vb 1
|
|
403 \& $Status = IsCmpd2D();
|
|
404 .Ve
|
|
405 .Sp
|
|
406 Returns 1 or 0 based on whether z\-coordinate of any atom is non-zero.
|
|
407 .IP "\fBIsCmpd3D\fR" 4
|
|
408 .IX Item "IsCmpd3D"
|
|
409 .Vb 1
|
|
410 \& $Status = IsCmpd3D();
|
|
411 .Ve
|
|
412 .Sp
|
|
413 Returns 1 or 0 based on whether z\-coordinate of any atom is non-zero.
|
|
414 .IP "\fBMDLBondStereoToInternalBondStereochemistry\fR" 4
|
|
415 .IX Item "MDLBondStereoToInternalBondStereochemistry"
|
|
416 .Vb 2
|
|
417 \& $InternalBondStereo = MDLBondStereoToInternalBondStereochemistry(
|
|
418 \& $MDLBondStereo);
|
|
419 .Ve
|
|
420 .Sp
|
|
421 Returns value of \fIInternalBondStereo\fR corresponding to \fIMDLBondStereo\fR using
|
|
422 mapping shown for \fBInternalBondStereochemistryToMDLBondStereo\fR function.
|
|
423 .IP "\fBMDLBondTypeToInternalBondOrder\fR" 4
|
|
424 .IX Item "MDLBondTypeToInternalBondOrder"
|
|
425 .Vb 1
|
|
426 \& $InternalBondOrder = MDLBondTypeToInternalBondOrder($MDLBondType);
|
|
427 .Ve
|
|
428 .Sp
|
|
429 Returns value of \fIInternalBondOrder\fR corresponding to \fIMDLBondType\fR using
|
|
430 mapping shown for \fBInternalBondOrderToMDLBondType\fR function.
|
|
431 .IP "\fBMDLChargeToInternalCharge\fR" 4
|
|
432 .IX Item "MDLChargeToInternalCharge"
|
|
433 .Vb 1
|
|
434 \& $InternalCharge = MDLChargeToInternalCharge($MDLCharge);
|
|
435 .Ve
|
|
436 .Sp
|
|
437 Returns value of \fI\f(CI$InternalCharge\fI\fR corresponding to \fIMDLCharge\fR using
|
|
438 mapping shown for \fBInternalChargeToMDLCharge\fR function.
|
|
439 .IP "\fBMDLRadicalToInternalSpinMultiplicity\fR" 4
|
|
440 .IX Item "MDLRadicalToInternalSpinMultiplicity"
|
|
441 .Vb 2
|
|
442 \& $InternalSpinMultiplicity = MDLRadicalToInternalSpinMultiplicity(
|
|
443 \& $MDLRadical);
|
|
444 .Ve
|
|
445 .Sp
|
|
446 Returns value of \fIInternalSpinMultiplicity\fR corresponding to \fIMDLRadical\fR. These
|
|
447 value are equivalent.
|
|
448 .IP "\fBParseCmpdAtomAliasPropertyLine\fR" 4
|
|
449 .IX Item "ParseCmpdAtomAliasPropertyLine"
|
|
450 .Vb 2
|
|
451 \& @AtomNumAndValuePairs = ParseCmpdAtomAliasPropertyLine(
|
|
452 \& $CurrentLine, $NexLine);
|
|
453 .Ve
|
|
454 .Sp
|
|
455 Parses atom alias propery lines in \s-1CTAB\s0 generic properties block and returns an array
|
|
456 with successive pairs of values corresponding to atom number and its alias.
|
|
457 .IP "\fBParseCmpdAtomLine\fR" 4
|
|
458 .IX Item "ParseCmpdAtomLine"
|
|
459 .Vb 2
|
|
460 \& ($AtomSymbol, $AtomX, $AtomY, $AtomZ, $MassDifference, $Charge,
|
|
461 \& $StereoParity) = ParseCmpdAtomLine($AtomDataLine);
|
|
462 .Ve
|
|
463 .Sp
|
|
464 Parses compound data line containing atom information and returns a list
|
|
465 of values.
|
|
466 .IP "\fBParseCmpdBondLine\fR" 4
|
|
467 .IX Item "ParseCmpdBondLine"
|
|
468 .Vb 2
|
|
469 \& ($FirstAtomNum, $SecondAtomNum, $BondType) =
|
|
470 \& ParseCmpdBondLine($BondDataLine);
|
|
471 .Ve
|
|
472 .Sp
|
|
473 Parses compound data line containing bond information and returns a list of
|
|
474 values.
|
|
475 .IP "\fBParseCmpdCommentsLine\fR" 4
|
|
476 .IX Item "ParseCmpdCommentsLine"
|
|
477 .Vb 1
|
|
478 \& $Comments = ParseCmpdCommentsLine($CommentsDataLine);
|
|
479 .Ve
|
|
480 .Sp
|
|
481 Returns the comment string.
|
|
482 .IP "\fBParseCmpdChargePropertyLine\fR" 4
|
|
483 .IX Item "ParseCmpdChargePropertyLine"
|
|
484 .Vb 2
|
|
485 \& @AtomNumAndValuePairs = ParseCmpdChargePropertyLine(
|
|
486 \& $ChargeDataLine);
|
|
487 .Ve
|
|
488 .Sp
|
|
489 Parses charge propery line in \s-1CTAB\s0 generic properties block and returns an array
|
|
490 with successive pairs of values corresponding to atom number and its charge.
|
|
491 .IP "\fBParseCmpdCountsLine\fR" 4
|
|
492 .IX Item "ParseCmpdCountsLine"
|
|
493 .Vb 2
|
|
494 \& ($AtomCount, $BondCount, $ChiralFlag, $PropertyCount, $Version) =
|
|
495 \& ParseCmpdCountsLine(\e@CountDataLines);
|
|
496 .Ve
|
|
497 .Sp
|
|
498 Returns a list of values containing count information.
|
|
499 .IP "\fBParseCmpdMiscInfoLine\fR" 4
|
|
500 .IX Item "ParseCmpdMiscInfoLine"
|
|
501 .Vb 2
|
|
502 \& ($UserInitial, $ProgramName, $Date, $Code, $ScalingFactor1, $ScalingFactor2,
|
|
503 \& $Energy, $RegistryNum) = ParseCmpdMiscInfoLine($Line);
|
|
504 .Ve
|
|
505 .Sp
|
|
506 Returns a list of values containing miscellaneous information.
|
|
507 .IP "\fBParseCmpdIsotopePropertyLine\fR" 4
|
|
508 .IX Item "ParseCmpdIsotopePropertyLine"
|
|
509 .Vb 2
|
|
510 \& @AtomNumAndValuePairs = ParseCmpdIsotopePropertyLine(
|
|
511 \& $IsotopeDataLine);
|
|
512 .Ve
|
|
513 .Sp
|
|
514 Parses isotopic propery line in \s-1CTAB\s0 generic properties block and returns an array
|
|
515 with successive pairs of values corresponding to atom number and absolute mass of
|
|
516 atom isotope.
|
|
517 .IP "\fBParseCmpdMolNameLine\fR" 4
|
|
518 .IX Item "ParseCmpdMolNameLine"
|
|
519 .Vb 1
|
|
520 \& $MolName = ParseCmpdMolNameLine($Line);
|
|
521 .Ve
|
|
522 .Sp
|
|
523 Returns a string containing molecule name.
|
|
524 .IP "\fBParseCmpdRadicalPropertyLine\fR" 4
|
|
525 .IX Item "ParseCmpdRadicalPropertyLine"
|
|
526 .Vb 2
|
|
527 \& @AtomNumAndValuePairs = ParseCmpdRadicalPropertyLine(
|
|
528 \& $RadicalDataLine);
|
|
529 .Ve
|
|
530 .Sp
|
|
531 Parses radical propery line in \s-1CTAB\s0 generic properties block and returns an array
|
|
532 with successive pairs of values corresponding to atom number and radical number
|
|
533 value.
|
|
534 .IP "\fBRemoveCmpdDataHeaderLabelAndValue\fR" 4
|
|
535 .IX Item "RemoveCmpdDataHeaderLabelAndValue"
|
|
536 .Vb 2
|
|
537 \& $NewCmpdString = RemoveCmpdDataHeaderLabelAndValue($CmpdString,
|
|
538 \& $DataHeaderLabel);
|
|
539 .Ve
|
|
540 .Sp
|
|
541 Returns a \fBNewCmpdString\fR after removing \fIDataHeaderLabel\fR along with its
|
|
542 value from \fICmpdString\fR.
|
|
543 .IP "\fBReadCmpdString\fR" 4
|
|
544 .IX Item "ReadCmpdString"
|
|
545 .Vb 1
|
|
546 \& $CmpdString = ReadCmpdString(\e*SDFILEHANDLE);
|
|
547 .Ve
|
|
548 .Sp
|
|
549 Returns a string containing all the data lines for the next available compound
|
|
550 in an already open file indicated by \s-1SDFILEHANDLE\s0. A \s-1NULL\s0 string is returned
|
|
551 on \s-1EOF\s0.
|
|
552 .IP "\fBWashCmpd\fR" 4
|
|
553 .IX Item "WashCmpd"
|
|
554 .Vb 2
|
|
555 \& ($FragmentCount, $Fragments, $WashedCmpdString) =
|
|
556 \& WashCmpd(\e@CmpdLines);
|
|
557 .Ve
|
|
558 .Sp
|
|
559 Figures out the number of disconnected fragments and return their values along
|
|
560 with the atom numbers in a string delimited by new line character. Fragment data
|
|
561 in \fBFragmentString\fR is sorted on based on its size.
|
|
562 .SH "AUTHOR"
|
|
563 .IX Header "AUTHOR"
|
|
564 Manish Sud <msud@san.rr.com>
|
|
565 .SH "SEE ALSO"
|
|
566 .IX Header "SEE ALSO"
|
|
567 TextUtil.pm
|
|
568 .SH "COPYRIGHT"
|
|
569 .IX Header "COPYRIGHT"
|
|
570 Copyright (C) 2015 Manish Sud. All rights reserved.
|
|
571 .PP
|
|
572 This file is part of MayaChemTools.
|
|
573 .PP
|
|
574 MayaChemTools is free software; you can redistribute it and/or modify it under
|
|
575 the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free
|
|
576 Software Foundation; either version 3 of the License, or (at your option)
|
|
577 any later version.
|