annotate docs/modules/txt/SDFileUtil.txt @ 3:90ea638ce878 draft default tip

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 09:11:59 -0500
parents 2abf0d43254d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
2 SDFileUtil
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
3
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
4 SYNOPSIS
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
5 use SDFileUtil ;
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
6
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
7 use SDFileUtil qw(:all);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
8
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
9 DESCRIPTION
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
10 SDFileUtil module provides the following functions:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
11
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
12 GenerateCmpdAtomAliasPropertyLines, GenerateCmpdAtomLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
13 GenerateCmpdBondLine, GenerateCmpdChargePropertyLines,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
14 GenerateCmpdCommentsLine, GenerateCmpdCountsLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
15 GenerateCmpdDataHeaderLabelsAndValuesLines,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
16 GenerateCmpdIsotopePropertyLines, GenerateCmpdMiscInfoLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
17 GenerateCmpdMolNameLine, GenerateCmpdRadicalPropertyLines,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
18 GenerateEmptyCtabBlockLines, GenerateMiscLineDateStamp,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
19 GetAllAndCommonCmpdDataHeaderLabels, GetCmpdDataHeaderLabels,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
20 GetCmpdDataHeaderLabelsAndValues, GetCmpdFragments, GetCtabLinesCount,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
21 GetInvalidAtomNumbers, GetUnknownAtoms, InternalBondOrderToMDLBondType,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
22 InternalBondStereochemistryToMDLBondStereo, InternalChargeToMDLCharge,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
23 InternalSpinMultiplicityToMDLRadical, IsCmpd2D, IsCmpd3D,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
24 MDLBondStereoToInternalBondStereochemistry,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
25 MDLBondTypeToInternalBondOrder, MDLChargeToInternalCharge,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
26 MDLRadicalToInternalSpinMultiplicity, ParseCmpdAtomAliasPropertyLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
27 ParseCmpdAtomLine, ParseCmpdBondLine, ParseCmpdChargePropertyLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
28 ParseCmpdCommentsLine, ParseCmpdCountsLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
29 ParseCmpdIsotopePropertyLine, ParseCmpdMiscInfoLine,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
30 ParseCmpdMolNameLine, ParseCmpdRadicalPropertyLine, ReadCmpdString,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
31 RemoveCmpdDataHeaderLabelAndValue, WashCmpd
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
32
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
33 METHODS
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
34 GenerateCmpdAtomAliasPropertyLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
35 @Lines = GenerateCmpdAtomAliasPropertyLines($AliasValuePairsRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
36
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
37 Returns a formatted atom alias property lines corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
38 successive pairs of atom number and alias values specified by a
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
39 refernce to an array. Two lines are generate for each atom number
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
40 and alias value pairs: First line - A <AtomNum>; Second
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
41 line:<AtomAlias>.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
42
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
43 GenerateCmpdAtomLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
44 $Line = GenerateCmpdAtomLine($AtomSymbol, $AtomX, $AtomY,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
45 $AtomZ, [$MassDifference, $Charge, $StereoParity]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
46
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
47 Returns a formatted atom data line containing all the input values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
48
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
49 GenerateCmpdBondLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
50 $Line = GenerateCmpdBondLine($FirstAtomNum, $SecondAtomNum,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
51 $BondType, [$BondStereo]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
52
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
53 Returns a formatted bond data line containing all the input values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
54
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
55 GenerateCmpdChargePropertyLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
56 @Lines = GenerateCmpdChargePropertyLines($ChargeValuePairsRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
57
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
58 Returns a formatted M CHG property lines corresponding to successive
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
59 pairs of atom number and charge values specified by a refernce to an
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
60 array.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
61
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
62 GenerateCmpdCommentsLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
63 $Line = GenerateCmpdCommentsLine($Comments);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
64
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
65 Returns a formatted comments data line.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
66
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
67 GenerateCmpdCountsLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
68 $Line = GenerateCmpdCountsLine($AtomCount, $BondCount,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
69 $ChiralFlag, [$PropertyCount, $Version]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
70
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
71 Returns a formatted line containing all the input values. The
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
72 default values of 999 and V2000 are used for *PropertyCount* and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
73 *Version*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
74
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
75 GenerateCmpdDataHeaderLabelsAndValuesLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
76 @Lines = GenerateCmpdDataHeaderLabelsAndValuesLines(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
77 $DataHeaderLabelsRef, $DataHeaderLabelsAndValuesRef,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
78 [$SortDataLabels]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
79
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
80 Returns formatted data lines containing header label and values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
81 lines corresponding to all data header labels in array reference
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
82 *DataHeaderLabelsRef* with values in hash reference
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
83 *DataHeaderLabelsAndValuesRef*. By default, data header labels are
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
84 not sorted and correspond to the label order in array reference
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
85 *DataHeaderLabelsRef*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
86
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
87 GenerateCmpdIsotopePropertyLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
88 @Lines = GenerateCmpdIsotopePropertyLines($IsotopeValuePairsRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
89
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
90 Returns a formatted M ISO property lines corresponding to successive
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
91 pairs of atom number and isotope values specified by a refernce to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
92 an array.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
93
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
94 GenerateCmpdMiscInfoLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
95 $Line = GenerateCmpdMiscInfoLine([$ProgramName, $UserInitial,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
96 $Code]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
97
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
98 Returns a formatted line containing specified user initial, program
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
99 name, date and code. Default values are: *ProgramName - MayaChem;
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
100 UserInitial - NULL; Code - 2D*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
101
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
102 GenerateCmpdMolNameLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
103 $Line = GenerateCmpdMolNameLine($MolName);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
104
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
105 Returns a formatted molecule name data line.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
106
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
107 GenerateCmpdRadicalPropertyLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
108 @Lines = GenerateCmpdRadicalPropertyLines($RadicalValuePairsRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
109
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
110 Returns a formatted M CHG property lines corresponding to successive
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
111 pairs of atom number and multiplicity values specified by a refernce
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
112 to an array.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
113
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
114 GenerateEmptyCtabBlockLines
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
115 $Lines = GenerateCmpdMiscInfoLine([$Date]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
116
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
117 Returns formatted lines representing empty CTAB block.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
118
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
119 GenerateMiscLineDateStamp
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
120 $Line = GenerateMiscLineDateStamp();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
121
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
122 Returns date stamp for misc line.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
123
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
124 GetAllAndCommonCmpdDataHeaderLabels
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
125 ($CmpdCount, $DataFieldLabelsArrayRef,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
126 $CommonDataFieldLabelsArrayRef) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
127 GetAllAndCommonCmpdDataHeaderLabels(\*SDFILE);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
128
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
129 Returns number of comopunds, a reference to an array containing all
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
130 unique data header label and a reference to an array containing
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
131 common data field labels for all compounds in SD file.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
132
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
133 GetCmpdDataHeaderLabels
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
134 (@Labels) = GetCmpdDataHeaderLabels(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
135
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
136 Returns an array containg data header labels for a compound
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
137
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
138 GetCmpdDataHeaderLabelsAndValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
139 (%DataValues) = GetCmpdDataHeaderLabelsAndValues(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
140
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
141 Returns a hash conating data header labes and values for a compound.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
142
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
143 GetCmpdFragments
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
144 ($FragmentCount, $FragmentString) = GetCmpdFragments(\@CmpLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
145
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
146 Figures out the number of disconnected fragments and return their
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
147 values along with the atom numbers in a string delimited by new line
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
148 character. Fragment data in FragmentString is sorted on based on its
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
149 size.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
150
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
151 GetCtabLinesCount
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
152 $CtabLinesCount = GetCtabLinesCount(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
153
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
154 Returns number of lines present between the 4th line and the line
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
155 containg "M END".
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
156
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
157 GetInvalidAtomNumbers
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
158 ($InvalidAtomNumbersCount, $InvalidAtomNumbers, $InvalidAtomNumberLines) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
159 GetInvalidAtomNumbers(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
160
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
161 Returns a list of values containing information about invalid atom
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
162 numbers present in block or atom property lines.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
163
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
164 GetUnknownAtoms
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
165 ($UnknownAtomCount, $UnknownAtoms, $UnknownAtomLines) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
166 GetUnknownAtoms(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
167
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
168 Returns a list of values containing information about atoms which
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
169 contain special element symbols not present in the periodic table.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
170
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
171 InternalBondOrderToMDLBondType
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
172 $MDLBondType = InternalBondOrderToMDLBondType($InternalBondOrder);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
173
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
174 Returns value of *MDLBondType* corresponding to *InternalBondOrder*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
175
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
176 InternalBondOrder MDLBondType
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
177
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
178 1 1
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
179 2 2
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
180 3 3
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
181 1.5 4
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
182
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
183 InternalBondStereochemistryToMDLBondStereo
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
184 $MDLBondStereo = InternalBondStereochemistryToMDLBondStereo(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
185 $InternalBondStereo);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
186
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
187 Returns value of *MDLBondStereo* corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
188 *InternalBondStereo* using following mapping:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
189
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
190 InternalBondStereo MDLBondStereo
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
191
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
192 Up 1
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
193 UpOrDown 4
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
194 Down 6
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
195 CisOrTrans 3
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
196 Other 0
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
197
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
198 InternalChargeToMDLCharge
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
199 $MDLCharge = InternalChargeToMDLCharge($InternalCharge);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
200
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
201 Returns value of *MDLCharge* corresponding to *InternalCharge* using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
202 following mapping:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
203
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
204 InternalCharge MDLCharge
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
205
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
206 3 1
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
207 2 2
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
208 1 3
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
209 -1 5
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
210 -2 6
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
211 -3 7
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
212
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
213 InternalSpinMultiplicityToMDLRadical
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
214 $MDLRadical = InternalSpinMultiplicityToMDLRadical(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
215 $InternalSpinMultiplicity);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
216
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
217 Returns value of *MDLRadical* corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
218 *InternalSpinMultiplicity*. These value are equivalent.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
219
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
220 MDLBondStereoToInternalBondType
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
221 $InternalBondType = MDLBondStereoToInternalBondType($MDLBondStereo);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
222
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
223 Returns value of *InternalBondType* corresponding to *MDLBondStereo*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
224 using mapping shown for InternalBondTypeToMDLBondStereo function.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
225
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
226 IsCmpd2D
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
227 $Status = IsCmpd2D();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
228
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
229 Returns 1 or 0 based on whether z-coordinate of any atom is
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
230 non-zero.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
231
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
232 IsCmpd3D
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
233 $Status = IsCmpd3D();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
234
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
235 Returns 1 or 0 based on whether z-coordinate of any atom is
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
236 non-zero.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
237
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
238 MDLBondStereoToInternalBondStereochemistry
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
239 $InternalBondStereo = MDLBondStereoToInternalBondStereochemistry(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
240 $MDLBondStereo);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
241
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
242 Returns value of *InternalBondStereo* corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
243 *MDLBondStereo* using mapping shown for
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
244 InternalBondStereochemistryToMDLBondStereo function.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
245
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
246 MDLBondTypeToInternalBondOrder
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
247 $InternalBondOrder = MDLBondTypeToInternalBondOrder($MDLBondType);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
248
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
249 Returns value of *InternalBondOrder* corresponding to *MDLBondType*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
250 using mapping shown for InternalBondOrderToMDLBondType function.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
251
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
252 MDLChargeToInternalCharge
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
253 $InternalCharge = MDLChargeToInternalCharge($MDLCharge);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
254
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
255 Returns value of *$InternalCharge* corresponding to *MDLCharge*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
256 using mapping shown for InternalChargeToMDLCharge function.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
257
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
258 MDLRadicalToInternalSpinMultiplicity
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
259 $InternalSpinMultiplicity = MDLRadicalToInternalSpinMultiplicity(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
260 $MDLRadical);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
261
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
262 Returns value of *InternalSpinMultiplicity* corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
263 *MDLRadical*. These value are equivalent.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
264
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
265 ParseCmpdAtomAliasPropertyLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
266 @AtomNumAndValuePairs = ParseCmpdAtomAliasPropertyLine(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
267 $CurrentLine, $NexLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
268
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
269 Parses atom alias propery lines in CTAB generic properties block and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
270 returns an array with successive pairs of values corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
271 atom number and its alias.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
272
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
273 ParseCmpdAtomLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
274 ($AtomSymbol, $AtomX, $AtomY, $AtomZ, $MassDifference, $Charge,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
275 $StereoParity) = ParseCmpdAtomLine($AtomDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
276
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
277 Parses compound data line containing atom information and returns a
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
278 list of values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
279
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
280 ParseCmpdBondLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
281 ($FirstAtomNum, $SecondAtomNum, $BondType) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
282 ParseCmpdBondLine($BondDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
283
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
284 Parses compound data line containing bond information and returns a
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
285 list of values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
286
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
287 ParseCmpdCommentsLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
288 $Comments = ParseCmpdCommentsLine($CommentsDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
289
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
290 Returns the comment string.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
291
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
292 ParseCmpdChargePropertyLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
293 @AtomNumAndValuePairs = ParseCmpdChargePropertyLine(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
294 $ChargeDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
295
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
296 Parses charge propery line in CTAB generic properties block and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
297 returns an array with successive pairs of values corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
298 atom number and its charge.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
299
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
300 ParseCmpdCountsLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
301 ($AtomCount, $BondCount, $ChiralFlag, $PropertyCount, $Version) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
302 ParseCmpdCountsLine(\@CountDataLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
303
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
304 Returns a list of values containing count information.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
305
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
306 ParseCmpdMiscInfoLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
307 ($UserInitial, $ProgramName, $Date, $Code, $ScalingFactor1, $ScalingFactor2,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
308 $Energy, $RegistryNum) = ParseCmpdMiscInfoLine($Line);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
309
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
310 Returns a list of values containing miscellaneous information.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
311
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
312 ParseCmpdIsotopePropertyLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
313 @AtomNumAndValuePairs = ParseCmpdIsotopePropertyLine(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
314 $IsotopeDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
315
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
316 Parses isotopic propery line in CTAB generic properties block and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
317 returns an array with successive pairs of values corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
318 atom number and absolute mass of atom isotope.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
319
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
320 ParseCmpdMolNameLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
321 $MolName = ParseCmpdMolNameLine($Line);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
322
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
323 Returns a string containing molecule name.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
324
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
325 ParseCmpdRadicalPropertyLine
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
326 @AtomNumAndValuePairs = ParseCmpdRadicalPropertyLine(
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
327 $RadicalDataLine);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
328
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
329 Parses radical propery line in CTAB generic properties block and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
330 returns an array with successive pairs of values corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
331 atom number and radical number value.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
332
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
333 RemoveCmpdDataHeaderLabelAndValue
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
334 $NewCmpdString = RemoveCmpdDataHeaderLabelAndValue($CmpdString,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
335 $DataHeaderLabel);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
336
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
337 Returns a NewCmpdString after removing *DataHeaderLabel* along with
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
338 its value from *CmpdString*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
339
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
340 ReadCmpdString
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
341 $CmpdString = ReadCmpdString(\*SDFILEHANDLE);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
342
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
343 Returns a string containing all the data lines for the next
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
344 available compound in an already open file indicated by
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
345 SDFILEHANDLE. A NULL string is returned on EOF.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
346
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
347 WashCmpd
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
348 ($FragmentCount, $Fragments, $WashedCmpdString) =
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
349 WashCmpd(\@CmpdLines);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
350
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
351 Figures out the number of disconnected fragments and return their
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
352 values along with the atom numbers in a string delimited by new line
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
353 character. Fragment data in FragmentString is sorted on based on its
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
354 size.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
355
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
356 AUTHOR
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
357 Manish Sud <msud@san.rr.com>
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
358
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
359 SEE ALSO
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
360 TextUtil.pm
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
361
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
362 COPYRIGHT
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
363 Copyright (C) 2015 Manish Sud. All rights reserved.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
364
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
365 This file is part of MayaChemTools.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
366
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
367 MayaChemTools is free software; you can redistribute it and/or modify it
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
368 under the terms of the GNU Lesser General Public License as published by
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
369 the Free Software Foundation; either version 3 of the License, or (at
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
370 your option) any later version.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
371