annotate docs/modules/txt/SDFileUtil.txt @ 0:4816e4a8ae95 draft default tip

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