| 
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>
 |