| 0 | 1 <html> | 
|  | 2 <head> | 
|  | 3 <title>MayaChemTools:Documentation:PDBFileUtil.pm</title> | 
|  | 4 <meta http-equiv="content-type" content="text/html;charset=utf-8"> | 
|  | 5 <link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css"> | 
|  | 6 </head> | 
|  | 7 <body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10"> | 
|  | 8 <br/> | 
|  | 9 <center> | 
|  | 10 <a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a> | 
|  | 11 </center> | 
|  | 12 <br/> | 
|  | 13 <div class="DocNav"> | 
|  | 14 <table width="100%" border=0 cellpadding=0 cellspacing=2> | 
|  | 15 <tr align="left" valign="top"><td width="33%" align="left"><a href="./YYLexer.html" title="YYLexer.html">Previous</a>  <a href="./index.html" title="Table of Contents">TOC</a>  <a href="./PeriodicTable.html" title="PeriodicTable.html">Next</a></td><td width="34%" align="middle"><strong>PDBFileUtil.pm</strong></td><td width="33%" align="right"><a href="././code/PDBFileUtil.html" title="View source code">Code</a> | <a href="./../pdf/PDBFileUtil.pdf" title="PDF US Letter Size">PDF</a> | <a href="./../pdfgreen/PDBFileUtil.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a> | <a href="./../pdfa4/PDBFileUtil.pdf" title="PDF A4 Size">PDFA4</a> | <a href="./../pdfa4green/PDBFileUtil.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr> | 
|  | 16 </table> | 
|  | 17 </div> | 
|  | 18 <p> | 
|  | 19 </p> | 
|  | 20 <h2>NAME</h2> | 
|  | 21 <p>PDBFileUtil</p> | 
|  | 22 <p> | 
|  | 23 </p> | 
|  | 24 <h2>SYNOPSIS</h2> | 
|  | 25 <p>use PDBFileUtil ;</p> | 
|  | 26 <p>use PDBFileUtil qw(:all);</p> | 
|  | 27 <p> | 
|  | 28 </p> | 
|  | 29 <h2>DESCRIPTION</h2> | 
|  | 30 <p><strong>PDBFileUtil</strong> module provides the following functions:</p> | 
|  | 31 <p> <a href="#generateatomorhetatmrecordline">GenerateAtomOrHetatmRecordLine</a>, <a href="#generateatomrecordline">GenerateAtomRecordLine</a>, <a href="#generateconectrecordline">GenerateConectRecordLine</a> | 
|  | 32 , <a href="#generateendrecordline">GenerateEndRecordLine</a>, <a href="#generateheaderrecordline">GenerateHeaderRecordLine</a>, <a href="#generateheaderrecordtimestamp">GenerateHeaderRecordTimeStamp</a> | 
|  | 33 , <a href="#generatehetatmrecordline">GenerateHetatmRecordLine</a>, <a href="#generateterrecordline">GenerateTerRecordLine</a>, <a href="#getallresidues">GetAllResidues</a> | 
|  | 34 , <a href="#getchainsandresidues">GetChainsAndResidues</a>, <a href="#getconectrecordlines">GetConectRecordLines</a>, <a href="#getexperimentaltechnique">GetExperimentalTechnique</a> | 
|  | 35 , <a href="#getexperimentaltechniqueresolution">GetExperimentalTechniqueResolution</a>, <a href="#getminmaxcoords">GetMinMaxCoords</a>, <a href="#getpdbrecordtype">GetPDBRecordType</a> | 
|  | 36 , <a href="#getrecordtypescount">GetRecordTypesCount</a>, <a href="#isatomrecordtype">IsAtomRecordType</a>, <a href="#isconectrecordtype">IsConectRecordType</a>, <a href="#isendmdlrecordtype">IsEndmdlRecordType</a> | 
|  | 37 , <a href="#isheaderrecordtype">IsHeaderRecordType</a>, <a href="#ishetatmrecordtype">IsHetatmRecordType</a>, <a href="#ismasterrecordtype">IsMasterRecordType</a>, <a href="#ismodelrecordtype">IsModelRecordType</a> | 
|  | 38 , <a href="#ispdbfile">IsPDBFile</a>, <a href="#isseqresrecordtype">IsSeqresRecordType</a>, <a href="#isterrecordtype">IsTerRecordType</a>, <a href="#parseatomorhetatmrecordline">ParseAtomOrHetatmRecordLine</a> | 
|  | 39 , <a href="#parseatomrecordline">ParseAtomRecordLine</a>, <a href="#parseconectrecordline">ParseConectRecordLine</a>, <a href="#parseexpdtarecordline">ParseExpdtaRecordLine</a> | 
|  | 40 , <a href="#parseheaderrecordline">ParseHeaderRecordLine</a>, <a href="#parsehetatmrecordline">ParseHetatmRecordLine</a>, <a href="#parsemasterrecordline">ParseMasterRecordLine</a> | 
|  | 41 , <a href="#parseremark2resolutionrecordline">ParseRemark2ResolutionRecordLine</a>, <a href="#parseseqresrecordline">ParseSeqresRecordLine</a>, <a href="#parseterrecordline">ParseTerRecordLine</a> | 
|  | 42 , <a href="#readpdbfile">ReadPDBFile</a> | 
|  | 43 </p><p> | 
|  | 44 </p> | 
|  | 45 <h2>METHODS</h2> | 
|  | 46 <dl> | 
|  | 47 <dt><strong><a name="generateatomorhetatmrecordline" class="item"><strong>GenerateAtomOrHetatmRecordLine</strong></a></strong></dt> | 
|  | 48 <dd> | 
|  | 49 <div class="OptionsBox"> | 
|  | 50     $RecordLine = GenerateAtomOrHetatmRecordLine($RecordType, | 
|  | 51       $AtomNumber, $AtomName, $AlternateLocation, $ResidueName, | 
|  | 52       $ChainID, $ResidueNumber, $InsertionCode, $X, $Y, $Z, | 
|  | 53       $Occupancy, $TemperatureFactor, $SegmentID, | 
|  | 54       $ElementSymbol, $AtomCharge);</div> | 
|  | 55 <p>Returns ATOM or HETATM record line.</p> | 
|  | 56 </dd> | 
|  | 57 <dt><strong><a name="generateatomrecordline" class="item"><strong>GenerateAtomRecordLine</strong></a></strong></dt> | 
|  | 58 <dd> | 
|  | 59 <div class="OptionsBox"> | 
|  | 60     $RecordLine = GenerateAtomRecordLine($AtomNumber, | 
|  | 61       $AtomName, $AlternateLocation, $ResidueName, $ChainID, | 
|  | 62       $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy, | 
|  | 63       $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge);</div> | 
|  | 64 <p>Returns ATOM record line.</p> | 
|  | 65 </dd> | 
|  | 66 <dt><strong><a name="generateconectrecordline" class="item"><strong>GenerateConectRecordLine</strong></a></strong></dt> | 
|  | 67 <dd> | 
|  | 68 <div class="OptionsBox"> | 
|  | 69     $RecordLine = GenerateConectRecordLine($AtomNum, $BondedAtomNum1, | 
|  | 70       $BondedAtomNum2, $BondedAtomNum3, $BondedAtomNum4, | 
|  | 71       $HBondedAtomNum1, $HBondedAtomNum2, $SaltBridgedAtomNum1, | 
|  | 72       $HBondedAtomNum3, $HBondedAtomNum4, $SaltBridgedAtomNum2);</div> | 
|  | 73 <p>Returns CONECT record line.</p> | 
|  | 74 </dd> | 
|  | 75 <dt><strong><a name="generateheaderrecordline" class="item"><strong>GenerateHeaderRecordLine</strong></a></strong></dt> | 
|  | 76 <dd> | 
|  | 77 <div class="OptionsBox"> | 
|  | 78     $RecordLine = GenerateHeaderRecordLine($IDCode, [$Classification, | 
|  | 79       $Date]);</div> | 
|  | 80 <p>Returns HEADER record line.</p> | 
|  | 81 </dd> | 
|  | 82 <dt><strong><a name="generateheaderrecordtimestamp" class="item"><strong>GenerateHeaderRecordTimeStamp</strong></a></strong></dt> | 
|  | 83 <dd> | 
|  | 84 <div class="OptionsBox"> | 
|  | 85     $Date = GenerateHeaderRecordTimeStamp();</div> | 
|  | 86 <p>Returns PDB header time stamp.</p> | 
|  | 87 </dd> | 
|  | 88 <dt><strong><a name="generatehetatmrecordline" class="item"><strong>GenerateHetatmRecordLine</strong></a></strong></dt> | 
|  | 89 <dd> | 
|  | 90 <div class="OptionsBox"> | 
|  | 91     $RecordLine = GenerateHetatmRecordLine($AtomNumber, $AtomName, | 
|  | 92 <br/>    $AlternateLocation, $ResidueName, $ChainID, $ResidueNumber, | 
|  | 93 <br/>    $InsertionCode, $X, $Y, $Z, $Occupancy, $TemperatureFactor, | 
|  | 94 <br/>    $SegmentID, $ElementSymbol, $AtomCharge);</div> | 
|  | 95 <p>Returns HETATM record line.</p> | 
|  | 96 </dd> | 
|  | 97 <dt><strong><a name="generateendrecordline" class="item"><strong>GenerateEndRecordLine</strong></a></strong></dt> | 
|  | 98 <dd> | 
|  | 99 <div class="OptionsBox"> | 
|  | 100     $RecordLine = GenerateEndRecordLine();</div> | 
|  | 101 <p>Returns END record line.</p> | 
|  | 102 </dd> | 
|  | 103 <dt><strong><a name="generateterrecordline" class="item"><strong>GenerateTerRecordLine</strong></a></strong></dt> | 
|  | 104 <dd> | 
|  | 105 <div class="OptionsBox"> | 
|  | 106     $RecordLine = GenerateTerRecordLine($SerialNumber, [$ResidueName, | 
|  | 107       $ChainID, $ResidueNumber, $InsertionCode]);</div> | 
|  | 108 <p>Returns TER record line.</p> | 
|  | 109 </dd> | 
|  | 110 <dt><strong><a name="getallresidues" class="item"><strong>GetAllResidues</strong></a></strong></dt> | 
|  | 111 <dd> | 
|  | 112 <div class="OptionsBox"> | 
|  | 113     $ResiduesDataRef = GetAllResidues($PDBRecordLinesRef);</div> | 
|  | 114 <p>Gets residue information using ATOM/HETATM records and returns a reference to a hash with | 
|  | 115 following key/value pairs:</p> | 
|  | 116 <div class="OptionsBox"> | 
|  | 117     $ResiduesDataRef->{ResidueNames} - Array of all the residues | 
|  | 118 <br/>    $ResiduesDataRef->{ResidueCount}{$ResidueName} - Count of residues | 
|  | 119 <br/>    $ResiduesDataRef->{AtomResidueNames}} - Array of all ATOM residues | 
|  | 120 <br/>    $ResiduesDataRef->{AtomResidueCount}{$ResidueName} - Count of | 
|  | 121        residues in ATOM records | 
|  | 122 <br/>    $ResiduesDataRef->{HetatomResidueNames} - List of all HETATM | 
|  | 123        residues | 
|  | 124 <br/>    $ResiduesDataRef->{HetatmResidueCount}{$ResidueName} - Count of | 
|  | 125       residues HETATM records</div> | 
|  | 126 <p>ATOM/HETATM records after the first ENDMDL records are simply ingnored.</p> | 
|  | 127 </dd> | 
|  | 128 <dt><strong><a name="getchainsandresidues" class="item"><strong>GetChainsAndResidues</strong></a></strong></dt> | 
|  | 129 <dd> | 
|  | 130 <div class="OptionsBox"> | 
|  | 131     $ChainsDataRef = GetChainsAndResidues($PDBRecordLinesRef, | 
|  | 132       [$RecordsSource, $GetChainResiduesBeyondTERFlag, | 
|  | 133       $GetRecordLinesFlag]);</div> | 
|  | 134 <p>Gets chains and residue information using ATOM/HETATM or SEQRES records and returns a reference to a | 
|  | 135 hash with these keys:</p> | 
|  | 136 <div class="OptionsBox"> | 
|  | 137     $ChainsDataRef->{ChainIDs} - List of chain IDs with 'None' for | 
|  | 138       no IDs | 
|  | 139 <br/>    $ChainsDataRef->{Residues}{$ChainID} - List of residues in order | 
|  | 140       of their appearance in a chain | 
|  | 141 <br/>    $ChainsDataRef->{ResidueCount}{$ChainID}{$ResidueName} - Count of | 
|  | 142       residues in a chain</div> | 
|  | 143 <p>Chains and residue data can be extacted using either ATOM/HETATM records or SEQRES records. | 
|  | 144 ATOM/HETATM records after the first ENDMDL records are simply ingnored.</p> | 
|  | 145 </dd> | 
|  | 146 <dt><strong><a name="getconectrecordlines" class="item"><strong>GetConectRecordLines</strong></a></strong></dt> | 
|  | 147 <dd> | 
|  | 148 <div class="OptionsBox"> | 
|  | 149     $ConectRecordLinesRef = GetConectRecordLines($PDBRecordLinesRef, | 
|  | 150       $AtomNumbersMapRef);</div> | 
|  | 151 <p>Collects CONECT record lines for specific atom number, modified specified data to exclude any atom | 
|  | 152 number not present in the list of specified atom numbers and returns a reference to list of | 
|  | 153 CONECT record lines.</p> | 
|  | 154 </dd> | 
|  | 155 <dt><strong><a name="getexperimentaltechnique" class="item"><strong>GetExperimentalTechnique</strong></a></strong></dt> | 
|  | 156 <dd> | 
|  | 157 <div class="OptionsBox"> | 
|  | 158     $ExperimentalTechnique = GetExperimentalTechnique($PDBRecordLinesRef);</div> | 
|  | 159 <p>Returns <em>ExperimentalTechnique</em> value retrieved from EXPDATA record line.</p> | 
|  | 160 </dd> | 
|  | 161 <dt><strong><a name="getexperimentaltechniqueresolution" class="item"><strong>GetExperimentalTechniqueResolution</strong></a></strong></dt> | 
|  | 162 <dd> | 
|  | 163 <div class="OptionsBox"> | 
|  | 164     ($Resolution, $ResolutionUnits) = GetExperimentalTechniqueResolution( | 
|  | 165                                       $PDBRecordLinesRef);</div> | 
|  | 166 <p>Returns <em>Resolution</em> and <em>ResolutionUnits</em> values from REMARK 2 RESOLUTION | 
|  | 167 record line.</p> | 
|  | 168 </dd> | 
|  | 169 <dt><strong><a name="getminmaxcoords" class="item"><strong>GetMinMaxCoords</strong></a></strong></dt> | 
|  | 170 <dd> | 
|  | 171 <div class="OptionsBox"> | 
|  | 172     ($XMin, $YMin, $ZMin, $XMax, $YMax, $ZMax) = | 
|  | 173       GetMinMaxCoords($PDBRecordLinesRef);</div> | 
|  | 174 <p>Returns minimum and maximum XYZ coordinates for ATOM/HETATM records.</p> | 
|  | 175 </dd> | 
|  | 176 <dt><strong><a name="getpdbrecordtype" class="item"><strong>GetPDBRecordType</strong></a></strong></dt> | 
|  | 177 <dd> | 
|  | 178 <div class="OptionsBox"> | 
|  | 179     $RecordType = GetPDBRecordType($RecordLine);</div> | 
|  | 180 <p>Returns type of <em>RecordLine</em>.</p> | 
|  | 181 </dd> | 
|  | 182 <dt><strong><a name="getrecordtypescount" class="item"><strong>GetRecordTypesCount</strong></a></strong></dt> | 
|  | 183 <dd> | 
|  | 184 <div class="OptionsBox"> | 
|  | 185     $RecordTypeDataRef = GetRecordTypesCount($PDBRecordLinesRef, | 
|  | 186       [$SpecifiedRecordType, $GetRecordLinesFlag]);</div> | 
|  | 187 <p>Counts the number of each record type or a $SpecifiedRecordType and returns a reference to data | 
|  | 188 type with following key/value pairs:</p> | 
|  | 189 <div class="OptionsBox"> | 
|  | 190     $RecordTypeDataRef->{RecordTypes} - An array of unique record types | 
|  | 191        in order of their presence in the file | 
|  | 192 <br/>    $RecordTypeDataRef->{Count}{$RecordType} - Count of each record type | 
|  | 193 <br/>    $RecordTypeDataRef->{Lines}{$RecordType} - Optional lines data for a | 
|  | 194       specific record type.</div> | 
|  | 195 </dd> | 
|  | 196 <dt><strong><a name="isatomrecordtype" class="item"><strong>IsAtomRecordType</strong></a></strong></dt> | 
|  | 197 <dd> | 
|  | 198 <div class="OptionsBox"> | 
|  | 199     $Status = IsAtomRecordType($RecordLine);</div> | 
|  | 200 <p>Returns 1 or 0 based on whether it's a ATOM record line.</p> | 
|  | 201 </dd> | 
|  | 202 <dt><strong><a name="isconectrecordtype" class="item"><strong>IsConectRecordType</strong></a></strong></dt> | 
|  | 203 <dd> | 
|  | 204 <div class="OptionsBox"> | 
|  | 205     $Status = IsAtomConectType($RecordLine);</div> | 
|  | 206 <p>Returns 1 or 0 based on whether it's a CONECT record line.</p> | 
|  | 207 </dd> | 
|  | 208 <dt><strong><a name="isendmdlrecordtype" class="item"><strong>IsEndmdlRecordType</strong></a></strong></dt> | 
|  | 209 <dd> | 
|  | 210 <div class="OptionsBox"> | 
|  | 211     $Status = IsEndmdlRecordType($RecordLine);</div> | 
|  | 212 <p>Returns 1 or 0 based on whether it's a ENDMDL a record line.</p> | 
|  | 213 </dd> | 
|  | 214 <dt><strong><a name="isheaderrecordtype" class="item"><strong>IsHeaderRecordType</strong></a></strong></dt> | 
|  | 215 <dd> | 
|  | 216 <div class="OptionsBox"> | 
|  | 217     $Status = IsHeaderRecordType($RecordLine);</div> | 
|  | 218 <p>Returns 1 or 0 based on whether it's a HEADER a record line.</p> | 
|  | 219 </dd> | 
|  | 220 <dt><strong><a name="ishetatmrecordtype" class="item"><strong>IsHetatmRecordType</strong></a></strong></dt> | 
|  | 221 <dd> | 
|  | 222 <div class="OptionsBox"> | 
|  | 223     $Status = IsHetatmRecordType($RecordLine);</div> | 
|  | 224 <p>Returns 1 or 0 based on whether it's a HETATM a record line.</p> | 
|  | 225 </dd> | 
|  | 226 <dt><strong><a name="ismasterrecordtype" class="item"><strong>IsMasterRecordType</strong></a></strong></dt> | 
|  | 227 <dd> | 
|  | 228 <div class="OptionsBox"> | 
|  | 229     $Status = IsMasterRecordType($RecordLine);</div> | 
|  | 230 <p>Returns 1 or 0 based on whether it's a MASTER a record line.</p> | 
|  | 231 </dd> | 
|  | 232 <dt><strong><a name="ismodelrecordtype" class="item"><strong>IsModelRecordType</strong></a></strong></dt> | 
|  | 233 <dd> | 
|  | 234 <div class="OptionsBox"> | 
|  | 235     $Status = IsModelRecordType($RecordLine);</div> | 
|  | 236 <p>Returns 1 or 0 based on whether it's a MODEL record line.</p> | 
|  | 237 </dd> | 
|  | 238 <dt><strong><a name="ispdbfile" class="item"><strong>IsPDBFile</strong></a></strong></dt> | 
|  | 239 <dd> | 
|  | 240 <div class="OptionsBox"> | 
|  | 241     $Status = IsPDBFile($PDBFile);</div> | 
|  | 242 <p>Returns 1 or 0 based on whether it's a PDB file.</p> | 
|  | 243 </dd> | 
|  | 244 <dt><strong><a name="isseqresrecordtype" class="item"><strong>IsSeqresRecordType</strong></a></strong></dt> | 
|  | 245 <dd> | 
|  | 246 <div class="OptionsBox"> | 
|  | 247     $Status = IsSeqresRecordType($RecordLine);</div> | 
|  | 248 <p>Returns 1 or 0 based on whether it's SEQRES a record line.</p> | 
|  | 249 </dd> | 
|  | 250 <dt><strong><a name="isterrecordtype" class="item"><strong>IsTerRecordType</strong></a></strong></dt> | 
|  | 251 <dd> | 
|  | 252 <div class="OptionsBox"> | 
|  | 253     $Status = IsTerRecordType($RecordLine);</div> | 
|  | 254 <p>Returns 1 or 0 based on whether it's a TER record line.</p> | 
|  | 255 </dd> | 
|  | 256 <dt><strong><a name="parseatomorhetatmrecordline" class="item"><strong>ParseAtomOrHetatmRecordLine</strong></a></strong></dt> | 
|  | 257 <dd> | 
|  | 258 <div class="OptionsBox"> | 
|  | 259     ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID, | 
|  | 260       $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy, | 
|  | 261       $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) = | 
|  | 262       ParseAtomOrHetatmRecordLine($RecordLine);</div> | 
|  | 263 <p>Parses ATOM or HETATM record line.</p> | 
|  | 264 </dd> | 
|  | 265 <dt><strong><a name="parseatomrecordline" class="item"><strong>ParseAtomRecordLine</strong></a></strong></dt> | 
|  | 266 <dd> | 
|  | 267 <div class="OptionsBox"> | 
|  | 268     ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID, | 
|  | 269       $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy, | 
|  | 270       $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) = | 
|  | 271       ParseAtomRecordLine($RecordLine);</div> | 
|  | 272 <p>Parses ATOM record line.</p> | 
|  | 273 </dd> | 
|  | 274 <dt><strong><a name="parseconectrecordline" class="item"><strong>ParseConectRecordLine</strong></a></strong></dt> | 
|  | 275 <dd> | 
|  | 276 <div class="OptionsBox"> | 
|  | 277     ($AtomNum, $BondedAtomNum1, $BondedAtomNum2, $BondedAtomNum3, | 
|  | 278        $BondedAtomNum4, $HBondedAtomNum1, $HBondedAtomNum2, | 
|  | 279        $SaltBridgedAtomNum1, $HBondedAtomNum3, $HBondedAtomNum4, | 
|  | 280        $SaltBridgedAtomNum2) = ParseConectRecordLine($RecordLine);</div> | 
|  | 281 <p>Parses CONECT record line.</p> | 
|  | 282 </dd> | 
|  | 283 <dt><strong><a name="parseexpdtarecordline" class="item"><strong>ParseExpdtaRecordLine</strong></a></strong></dt> | 
|  | 284 <dd> | 
|  | 285 <div class="OptionsBox"> | 
|  | 286     ($ContinuationNum, $ExperimentalTechnique) = ParseExpdtaRecordLine($Line);</div> | 
|  | 287 <p>Parses EXPDTA record line.</p> | 
|  | 288 </dd> | 
|  | 289 <dt><strong><a name="parseheaderrecordline" class="item"><strong>ParseHeaderRecordLine</strong></a></strong></dt> | 
|  | 290 <dd> | 
|  | 291 <div class="OptionsBox"> | 
|  | 292     ($Classification, $DepositionDate, $IDCode) = ParseHeaderRecordLine($RecordLine);</div> | 
|  | 293 <p>Parses HEADER record line</p> | 
|  | 294 </dd> | 
|  | 295 <dt><strong><a name="parsehetatmrecordline" class="item"><strong>ParseHetatmRecordLine</strong></a></strong></dt> | 
|  | 296 <dd> | 
|  | 297 <div class="OptionsBox"> | 
|  | 298     ($AtomNumber, $AtomName, $AlternateLocation, $ResidueName, $ChainID, | 
|  | 299       $ResidueNumber, $InsertionCode, $X, $Y, $Z, $Occupancy, | 
|  | 300       $TemperatureFactor, $SegmentID, $ElementSymbol, $AtomCharge) = | 
|  | 301       ParseHetatmRecordLine($RecordLine);</div> | 
|  | 302 <p>Parses HETATM record line.</p> | 
|  | 303 </dd> | 
|  | 304 <dt><strong><a name="parsemasterrecordline" class="item"><strong>ParseMasterRecordLine</strong></a></strong></dt> | 
|  | 305 <dd> | 
|  | 306 <div class="OptionsBox"> | 
|  | 307     ($NumOfRemarkRecords, $NumOfHetRecords, $NumOfHelixRecords, | 
|  | 308       $NumOfSheetRecords, $NumOfTurnRecords, $NumOfSiteRecords, | 
|  | 309       $NumOfTransformationsRecords, $NumOfAtomAndHetatmRecords, | 
|  | 310       $NumOfTerRecords, $NumOfConectRecords, $NumOfSeqresRecords) = | 
|  | 311       ParseMasterRecordLine($RecordLine);</div> | 
|  | 312 <p>Parses MASTER ecord line.</p> | 
|  | 313 </dd> | 
|  | 314 <dt><strong><a name="parseremark2resolutionrecordline" class="item"><strong>ParseRemark2ResolutionRecordLine</strong></a></strong></dt> | 
|  | 315 <dd> | 
|  | 316 <div class="OptionsBox"> | 
|  | 317     ($Resolution, $ResolutionUnits) = ParseRemark2ResolutionRecordLine( | 
|  | 318                                       $RecordLine);</div> | 
|  | 319 <p>Parses REMARK 2 RESOLUTION record line.</p> | 
|  | 320 </dd> | 
|  | 321 <dt><strong><a name="parseseqresrecordline" class="item"><strong>ParseSeqresRecordLine</strong></a></strong></dt> | 
|  | 322 <dd> | 
|  | 323 <div class="OptionsBox"> | 
|  | 324     ($RecordSerialNumber, $ChainID, $NumOfResidues, $ResidueNames) = | 
|  | 325       ParseSeqresRecordLine($RecordLine);</div> | 
|  | 326 <p>Parses SEQRES record line.</p> | 
|  | 327 </dd> | 
|  | 328 <dt><strong><a name="parseterrecordline" class="item"><strong>ParseTerRecordLine</strong></a></strong></dt> | 
|  | 329 <dd> | 
|  | 330 <div class="OptionsBox"> | 
|  | 331     ($SerialNumber, $ResidueName, $ChainID, $ResidueNumber, $InsertionCode) = | 
|  | 332       ParseTerRecordLine($RecordLine);</div> | 
|  | 333 <p>Parses TER record line.</p> | 
|  | 334 </dd> | 
|  | 335 <dt><strong><a name="readpdbfile" class="item"><strong>ReadPDBFile</strong></a></strong></dt> | 
|  | 336 <dd> | 
|  | 337 <div class="OptionsBox"> | 
|  | 338     $PDBRecordLinesRef = ReadPDBFile($PDBFile);</div> | 
|  | 339 <p>Reads PDB file and returns reference to record lines.</p> | 
|  | 340 </dd> | 
|  | 341 </dl> | 
|  | 342 <p> | 
|  | 343 </p> | 
|  | 344 <h2>AUTHOR</h2> | 
|  | 345 <p><a href="mailto:msud@san.rr.com">Manish Sud</a></p> | 
|  | 346 <p> | 
|  | 347 </p> | 
|  | 348 <h2>SEE ALSO</h2> | 
|  | 349 <p><a href="./FileUtil.html">FileUtil.pm</a>, <a href="./SequenceFileUtil.html">SequenceFileUtil.pm</a>, <a href="./TextUtil.html">TextUtil.pm</a> | 
|  | 350 </p> | 
|  | 351 <p> | 
|  | 352 </p> | 
|  | 353 <h2>COPYRIGHT</h2> | 
|  | 354 <p>Copyright (C) 2015 Manish Sud. All rights reserved.</p> | 
|  | 355 <p>This file is part of MayaChemTools.</p> | 
|  | 356 <p>MayaChemTools is free software; you can redistribute it and/or modify it under | 
|  | 357 the terms of the GNU Lesser General Public License as published by the Free | 
|  | 358 Software Foundation; either version 3 of the License, or (at your option) | 
|  | 359 any later version.</p> | 
|  | 360 <p> </p><p> </p><div class="DocNav"> | 
|  | 361 <table width="100%" border=0 cellpadding=0 cellspacing=2> | 
|  | 362 <tr align="left" valign="top"><td width="33%" align="left"><a href="./YYLexer.html" title="YYLexer.html">Previous</a>  <a href="./index.html" title="Table of Contents">TOC</a>  <a href="./PeriodicTable.html" title="PeriodicTable.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>PDBFileUtil.pm</strong></td></tr> | 
|  | 363 </table> | 
|  | 364 </div> | 
|  | 365 <br /> | 
|  | 366 <center> | 
|  | 367 <img src="../../images/h2o2.png"> | 
|  | 368 </center> | 
|  | 369 </body> | 
|  | 370 </html> |