annotate mayachemtools/docs/modules/txt/PDBFileUtil.txt @ 9:ab29fa5c8c1f draft default tip

Uploaded
author deepakjadmin
date Thu, 15 Dec 2016 14:18:03 -0500
parents 73ae111cf86f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
2 PDBFileUtil
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
3
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
4 SYNOPSIS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
5 use PDBFileUtil ;
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
6
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
7 use PDBFileUtil qw(:all);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
8
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
9 DESCRIPTION
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
10 PDBFileUtil module provides the following functions:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
11
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
12 GenerateAtomOrHetatmRecordLine, GenerateAtomRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
13 GenerateConectRecordLine, GenerateEndRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
14 GenerateHeaderRecordLine, GenerateHeaderRecordTimeStamp,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
15 GenerateHetatmRecordLine, GenerateTerRecordLine, GetAllResidues,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
16 GetChainsAndResidues, GetConectRecordLines, GetExperimentalTechnique,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
17 GetExperimentalTechniqueResolution, GetMinMaxCoords, GetPDBRecordType,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
18 GetRecordTypesCount, IsAtomRecordType, IsConectRecordType,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
19 IsEndmdlRecordType, IsHeaderRecordType, IsHetatmRecordType,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
20 IsMasterRecordType, IsModelRecordType, IsPDBFile, IsSeqresRecordType,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
21 IsTerRecordType, ParseAtomOrHetatmRecordLine, ParseAtomRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
22 ParseConectRecordLine, ParseExpdtaRecordLine, ParseHeaderRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
23 ParseHetatmRecordLine, ParseMasterRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
24 ParseRemark2ResolutionRecordLine, ParseSeqresRecordLine,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
25 ParseTerRecordLine, ReadPDBFile
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
26
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
27 METHODS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
28 GenerateAtomOrHetatmRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
29 $RecordLine = GenerateAtomOrHetatmRecordLine($RecordType,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
30 $AtomNumber, $AtomName, $AlternateLocation, $ResidueName,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
31 $ChainID, $ResidueNumber, $InsertionCode, $X, $Y, $Z,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
32 $Occupancy, $TemperatureFactor, $SegmentID,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
33 $ElementSymbol, $AtomCharge);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
34
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
35 Returns ATOM or HETATM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
36
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
37 GenerateAtomRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
38 $RecordLine = GenerateAtomRecordLine($AtomNumber,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
39 $AtomName, $AlternateLocation, $ResidueName, $ChainID,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
40 $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
41 $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
42
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
43 Returns ATOM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
44
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
45 GenerateConectRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
46 $RecordLine = GenerateConectRecordLine($AtomNum, $BondedAtomNum1,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
47 $BondedAtomNum2, $BondedAtomNum3, $BondedAtomNum4,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
48 $HBondedAtomNum1, $HBondedAtomNum2, $SaltBridgedAtomNum1,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
49 $HBondedAtomNum3, $HBondedAtomNum4, $SaltBridgedAtomNum2);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
50
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
51 Returns CONECT record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
52
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
53 GenerateHeaderRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
54 $RecordLine = GenerateHeaderRecordLine($IDCode, [$Classification,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
55 $Date]);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
56
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
57 Returns HEADER record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
58
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
59 GenerateHeaderRecordTimeStamp
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
60 $Date = GenerateHeaderRecordTimeStamp();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
61
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
62 Returns PDB header time stamp.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
63
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
64 GenerateHetatmRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
65 $RecordLine = GenerateHetatmRecordLine($AtomNumber, $AtomName,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
66 $AlternateLocation, $ResidueName, $ChainID, $ResidueNumber,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
67 $InsertionCode, $X, $Y, $Z, $Occupancy, $TemperatureFactor,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
68 $SegmentID, $ElementSymbol, $AtomCharge);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
69
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
70 Returns HETATM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
71
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
72 GenerateEndRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
73 $RecordLine = GenerateEndRecordLine();
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
74
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
75 Returns END record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
76
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
77 GenerateTerRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
78 $RecordLine = GenerateTerRecordLine($SerialNumber, [$ResidueName,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
79 $ChainID, $ResidueNumber, $InsertionCode]);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
80
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
81 Returns TER record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
82
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
83 GetAllResidues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
84 $ResiduesDataRef = GetAllResidues($PDBRecordLinesRef);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
85
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
86 Gets residue information using ATOM/HETATM records and returns a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
87 reference to a hash with following key/value pairs:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
88
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
89 $ResiduesDataRef->{ResidueNames} - Array of all the residues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
90 $ResiduesDataRef->{ResidueCount}{$ResidueName} - Count of residues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
91 $ResiduesDataRef->{AtomResidueNames}} - Array of all ATOM residues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
92 $ResiduesDataRef->{AtomResidueCount}{$ResidueName} - Count of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
93 residues in ATOM records
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
94 $ResiduesDataRef->{HetatomResidueNames} - List of all HETATM
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
95 residues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
96 $ResiduesDataRef->{HetatmResidueCount}{$ResidueName} - Count of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
97 residues HETATM records
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
98
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
99 ATOM/HETATM records after the first ENDMDL records are simply
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
100 ingnored.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
101
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
102 GetChainsAndResidues
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
103 $ChainsDataRef = GetChainsAndResidues($PDBRecordLinesRef,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
104 [$RecordsSource, $GetChainResiduesBeyondTERFlag,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
105 $GetRecordLinesFlag]);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
106
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
107 Gets chains and residue information using ATOM/HETATM or SEQRES
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
108 records and returns a reference to a hash with these keys:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
109
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
110 $ChainsDataRef->{ChainIDs} - List of chain IDs with 'None' for
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
111 no IDs
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
112 $ChainsDataRef->{Residues}{$ChainID} - List of residues in order
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
113 of their appearance in a chain
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
114 $ChainsDataRef->{ResidueCount}{$ChainID}{$ResidueName} - Count of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
115 residues in a chain
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
116
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
117 Chains and residue data can be extacted using either ATOM/HETATM
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
118 records or SEQRES records. ATOM/HETATM records after the first
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
119 ENDMDL records are simply ingnored.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
120
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
121 GetConectRecordLines
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
122 $ConectRecordLinesRef = GetConectRecordLines($PDBRecordLinesRef,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
123 $AtomNumbersMapRef);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
124
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
125 Collects CONECT record lines for specific atom number, modified
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
126 specified data to exclude any atom number not present in the list of
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
127 specified atom numbers and returns a reference to list of CONECT
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
128 record lines.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
129
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
130 GetExperimentalTechnique
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
131 $ExperimentalTechnique = GetExperimentalTechnique($PDBRecordLinesRef);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
132
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
133 Returns *ExperimentalTechnique* value retrieved from EXPDATA record
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
134 line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
135
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
136 GetExperimentalTechniqueResolution
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
137 ($Resolution, $ResolutionUnits) = GetExperimentalTechniqueResolution(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
138 $PDBRecordLinesRef);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
139
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
140 Returns *Resolution* and *ResolutionUnits* values from REMARK 2
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
141 RESOLUTION record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
142
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
143 GetMinMaxCoords
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
144 ($XMin, $YMin, $ZMin, $XMax, $YMax, $ZMax) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
145 GetMinMaxCoords($PDBRecordLinesRef);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
146
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
147 Returns minimum and maximum XYZ coordinates for ATOM/HETATM records.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
148
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
149 GetPDBRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
150 $RecordType = GetPDBRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
151
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
152 Returns type of *RecordLine*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
153
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
154 GetRecordTypesCount
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
155 $RecordTypeDataRef = GetRecordTypesCount($PDBRecordLinesRef,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
156 [$SpecifiedRecordType, $GetRecordLinesFlag]);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
157
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
158 Counts the number of each record type or a $SpecifiedRecordType and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
159 returns a reference to data type with following key/value pairs:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
160
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
161 $RecordTypeDataRef->{RecordTypes} - An array of unique record types
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
162 in order of their presence in the file
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
163 $RecordTypeDataRef->{Count}{$RecordType} - Count of each record type
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
164 $RecordTypeDataRef->{Lines}{$RecordType} - Optional lines data for a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
165 specific record type.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
166
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
167 IsAtomRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
168 $Status = IsAtomRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
169
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
170 Returns 1 or 0 based on whether it's a ATOM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
171
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
172 IsConectRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
173 $Status = IsAtomConectType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
174
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
175 Returns 1 or 0 based on whether it's a CONECT record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
176
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
177 IsEndmdlRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
178 $Status = IsEndmdlRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
179
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
180 Returns 1 or 0 based on whether it's a ENDMDL a record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
181
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
182 IsHeaderRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
183 $Status = IsHeaderRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
184
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
185 Returns 1 or 0 based on whether it's a HEADER a record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
186
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
187 IsHetatmRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
188 $Status = IsHetatmRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
189
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
190 Returns 1 or 0 based on whether it's a HETATM a record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
191
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
192 IsMasterRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
193 $Status = IsMasterRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
194
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
195 Returns 1 or 0 based on whether it's a MASTER a record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
196
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
197 IsModelRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
198 $Status = IsModelRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
199
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
200 Returns 1 or 0 based on whether it's a MODEL record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
201
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
202 IsPDBFile
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
203 $Status = IsPDBFile($PDBFile);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
204
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
205 Returns 1 or 0 based on whether it's a PDB file.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
206
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
207 IsSeqresRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
208 $Status = IsSeqresRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
209
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
210 Returns 1 or 0 based on whether it's SEQRES a record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
211
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
212 IsTerRecordType
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
213 $Status = IsTerRecordType($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
214
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
215 Returns 1 or 0 based on whether it's a TER record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
216
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
217 ParseAtomOrHetatmRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
218 ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
219 $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
220 $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
221 ParseAtomOrHetatmRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
222
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
223 Parses ATOM or HETATM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
224
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
225 ParseAtomRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
226 ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
227 $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
228 $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
229 ParseAtomRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
230
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
231 Parses ATOM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
232
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
233 ParseConectRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
234 ($AtomNum, $BondedAtomNum1, $BondedAtomNum2, $BondedAtomNum3,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
235 $BondedAtomNum4, $HBondedAtomNum1, $HBondedAtomNum2,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
236 $SaltBridgedAtomNum1, $HBondedAtomNum3, $HBondedAtomNum4,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
237 $SaltBridgedAtomNum2) = ParseConectRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
238
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
239 Parses CONECT record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
240
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
241 ParseExpdtaRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
242 ($ContinuationNum, $ExperimentalTechnique) = ParseExpdtaRecordLine($Line);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
243
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
244 Parses EXPDTA record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
245
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
246 ParseHeaderRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
247 ($Classification, $DepositionDate, $IDCode) = ParseHeaderRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
248
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
249 Parses HEADER record line
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
250
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
251 ParseHetatmRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
252 ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
253 $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
254 $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
255 ParseHetatmRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
256
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
257 Parses HETATM record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
258
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
259 ParseMasterRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
260 ($NumOfRemarkRecords, $NumOfHetRecords, $NumOfHelixRecords,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
261 $NumOfSheetRecords, $NumOfTurnRecords, $NumOfSiteRecords,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
262 $NumOfTransformationsRecords, $NumOfAtomAndHetatmRecords,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
263 $NumOfTerRecords, $NumOfConectRecords, $NumOfSeqresRecords) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
264 ParseMasterRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
265
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
266 Parses MASTER ecord line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
267
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
268 ParseRemark2ResolutionRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
269 ($Resolution, $ResolutionUnits) = ParseRemark2ResolutionRecordLine(
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
270 $RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
271
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
272 Parses REMARK 2 RESOLUTION record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
273
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
274 ParseSeqresRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
275 ($RecordSerialNumber, $ChainID, $NumOfResidues, $ResidueNames) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
276 ParseSeqresRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
277
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
278 Parses SEQRES record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
279
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
280 ParseTerRecordLine
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
281 ($SerialNumber, $ResidueName, $ChainID, $ResidueNumber, $InsertionCode) =
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
282 ParseTerRecordLine($RecordLine);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
283
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
284 Parses TER record line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
285
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
286 ReadPDBFile
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
287 $PDBRecordLinesRef = ReadPDBFile($PDBFile);
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
288
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
289 Reads PDB file and returns reference to record lines.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
290
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
291 AUTHOR
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
292 Manish Sud <msud@san.rr.com>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
293
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
294 SEE ALSO
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
295 FileUtil.pm, SequenceFileUtil.pm, TextUtil.pm
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
296
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
297 COPYRIGHT
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
298 Copyright (C) 2015 Manish Sud. All rights reserved.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
299
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
300 This file is part of MayaChemTools.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
301
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
302 MayaChemTools is free software; you can redistribute it and/or modify it
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
303 under the terms of the GNU Lesser General Public License as published by
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
304 the Free Software Foundation; either version 3 of the License, or (at
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
305 your option) any later version.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
306