public class PdbReader extends AtomSetCollectionReader
Modifier and Type | Field and Description |
---|---|
private static float |
_8PI2_ |
private int |
ac |
private boolean |
applySymmetry |
private int |
atomTypeLen |
private int |
atomTypePt0 |
protected int[] |
biomtChainAtomCounts |
private java.lang.String |
compnd |
private int |
configurationPtr |
private int |
conformationIndex |
private int[] |
connectLast |
private int |
connectNextAtomIndex |
private int |
connectNextAtomSet |
private float |
cryst1 |
private java.util.Map<java.lang.String,java.lang.String> |
currentCompnd |
private java.lang.String |
currentGroup3 |
private java.lang.String |
currentKey |
private int |
currentResno |
private float[] |
dataT |
protected int |
fileAtomIndex |
private boolean |
getTlsGroups |
private boolean |
gromacsWideFormat |
private boolean |
haveDoubleBonds |
private boolean |
haveMappedSerials |
private java.util.Map<java.lang.String,java.lang.Boolean> |
htElementsInCurrentGroup |
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Boolean>> |
htFormul |
(package private) java.util.Map<java.lang.String,java.lang.String> |
htGroup1 |
private java.util.Map<java.lang.String,java.lang.String> |
htHetero |
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> |
htMolIds |
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Object>> |
htSites |
private boolean |
isbiomol |
private boolean |
isConnectStateBug |
private boolean |
isCourseGrained |
private boolean |
isLegacyModelType |
private boolean |
isMultiModel |
protected boolean |
isPQR |
private char |
lastAltLoc |
private int |
lastGroup |
private char |
lastInsertion |
private int |
lastSourceSerial |
private int |
lastTargetSerial |
private int |
lineLength |
private static java.lang.String |
lineOptions |
private int |
maxSerial |
private static int |
MODE_HEX |
private static int |
MODE_HYBRID36 |
private static int |
MODE_PDB |
private int |
nRes |
private int |
nUNK |
private javajs.util.SB |
pdbHeader |
private static float |
RAD_PER_DEG |
private boolean |
resetKey |
private javajs.util.SB |
sb |
private javajs.util.SB |
sbConect |
private javajs.util.SB |
sbIgnored |
private javajs.util.SB |
sbSelected |
private javajs.util.SB |
sbTlsErrors |
private int |
seqMode |
private int |
serial |
private int |
serMode |
private java.util.Map<java.lang.String,java.lang.Object> |
thisBiomolecule |
private int |
tlsGroupID |
private java.util.Map<Atom,float[]> |
tlsU |
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> |
vBiomolecules |
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.String>> |
vCompnds |
private javajs.util.Lst<int[]> |
vConnect |
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> |
vTlsModels |
addedData, addedDataKey, addVibrations, allowPDBFilter, ANGSTROMS_PER_BOHR, applySymmetryToBonds, asc, baseAtomIndex, binaryDoc, bsFilter, bsModels, calculationType, continuing, desiredModelNumber, desiredSpaceGroupIndex, desiredVibrationNumber, doApplySymmetry, doCentralize, doCheckUnitCell, doPackUnitCell, doProcessLines, doReadMolecularOrbitals, fileName, fileOffset, filePath, fileScaling, filter, filterHetero, fixJavaFloat, forcePacked, getHeader, haveModel, havePartialChargeFilter, htParams, ignoreFileSpaceGroupName, ignoreFileSymmetryOperators, ignoreFileUnitCell, iHaveFractionalCoordinates, iHaveSymmetryOperators, iHaveUnitCell, isBinary, isConcatenated, isSequential, isTrajectory, latticeCells, line, matUnitCellOrientation, modelNumber, ms, mustFinalizeModelSet, next, notionalUnitCell, out, packingError, prevline, ptLine, ptSupercell, reader, readerName, reverseModels, sgName, stateScriptVersionInt, strSupercell, symmetry, templateAtomCount, trajectorySteps, useAltNames, validation, vibrationNumber, vibsFractional, vwr
Constructor and Description |
---|
PdbReader() |
Modifier and Type | Method and Description |
---|---|
private void |
addConnection(int[] is) |
private void |
anisou() |
private void |
atom() |
private void |
checkDSSR() |
private void |
checkForResidualBFactors(SymmetryInterface symmetry) |
protected boolean |
checkLine() |
private void |
checkNotPDB() |
private void |
compnd(boolean isSource) |
private void |
conect() |
private void |
connectAll(int maxSerial,
boolean isConnectStateBug) |
private void |
connectAllBad(int maxSerial) |
private void |
cryst1() |
protected java.lang.String |
deduceElementSymbol(boolean isHetero)
The problem here stems from the fact that developers have not fully
understood the PDB specifications -- and that those have changed.
|
private void |
expdta() |
protected boolean |
filterPDBAtom(Atom atom,
int iAtom) |
protected void |
finalizeReaderPDB() |
protected void |
finalizeSubclassReader()
optional reader-specific method run first.
|
private int |
findAtom(int atom1,
int atom2,
int chain,
int resno,
boolean isTrue) |
private int |
findAtomForRange(int atom1,
int atom2,
int chain,
int resno,
boolean isLast) |
protected static float |
fixRadius(float r) |
private void |
formul() |
private float |
getFloat(int ich,
int cch) |
private int |
getModelNumber() |
private int |
getSeqNo(int i,
int j) |
private int |
getSerial(int i,
int j) |
private void |
handleTlsMissingModels()
for now, we just ignore TLS details if user has selected a specific model
|
private void |
header() |
private void |
het() |
private void |
hetnam() |
protected void |
initializeReader() |
protected void |
model(int modelNumber) |
protected Atom |
processAtom(Atom atom,
java.lang.String name,
char altID,
java.lang.String group3,
int chainID,
int seqNo,
char insCode,
boolean isHetero,
java.lang.String sym) |
protected void |
processAtom2(Atom atom,
int serial,
float x,
float y,
float z,
int charge) |
private java.lang.String |
readHeader(boolean getLine) |
private void |
remark290() |
private void |
remark350() |
private boolean |
remarkTls() |
private void |
scale(int n) |
private void |
seqAdv() |
protected void |
setAdditionalAtomParameters(Atom atom)
adaptable via subclassing
|
private void |
setBiomoleculeAtomCounts() |
private void |
setTlsGroups(int iGroup,
int iModel,
SymmetryInterface symmetry)
Sets the atom property property_tlsGroup based on TLS group ranges
and adds "TLS" key to model's auxiliaryInfo.
|
private void |
setTlsTensor(Atom atom,
java.util.Map<java.lang.String,java.lang.Object> group,
SymmetryInterface symmetry) |
private void |
site() |
private void |
structure() |
private void |
title() |
private void |
tlsAddError(java.lang.String error) |
addAtomXYZSymName, addJmolScript, addPrimitiveLatticeVector, addSites, addSiteScript, appendLoadNote, appendUunitCellInfo, applySymmetryAndSetTrajectory, applySymTrajASCR, checkCurrentLineForScript, checkFilterKey, checkLastModel, checkLineForScript, clearUnitCell, cloneLastAtomSet, discardLinesUntilBlank, discardLinesUntilContains, discardLinesUntilContains2, discardLinesUntilNonBlank, discardLinesUntilStartsWith, doGetModel, doGetVibration, doPreSymmetry, fillDataBlock, fillDataBlockFixed, fillFloatArray, fillFrequencyData, filterAtom, filterReject, finalizeMOData, finalizeModelSet, finalizeReaderASCR, finalizeSubclassSymmetry, forceSymmetry, getElementSymbol, getFilter, getFortranFormatLengths, getInterface, getNewSymmetry, getStrings, getSymmetry, getTokens, getTokensFloat, initializeSymmetry, initializeSymmetryOptions, initializeTrajectoryFile, isLastModel, newAtomSet, parseFloat, parseFloatRange, parseFloatStr, parseInt, parseIntAt, parseIntRange, parseIntStr, parseToken, parseTokenNext, parseTokenRange, parseTokenStr, processBinaryDocument, processDOM, processDSSR, rd, read3Vectors, readDataObject, readLines, readNextLine, rejectAtomName, RL, set2D, setAtomCoord, setAtomCoordScaled, setAtomCoordTokens, setAtomCoordXYZ, setChainID, setElementAndIsotope, setFilter, setFilterAtomTypeStr, setFractionalCoordinates, setIsPDB, setLoadNote, setModelPDB, setSpaceGroupName, setSymmetryOperator, setTransform, setUnitCell, setUnitCellItem, setup, setupASCR
private static final int MODE_PDB
private static final int MODE_HEX
private static final int MODE_HYBRID36
private int serMode
private int seqMode
private int serial
private int lineLength
private javajs.util.SB pdbHeader
private boolean applySymmetry
private boolean getTlsGroups
private boolean isMultiModel
private boolean haveMappedSerials
private boolean isConnectStateBug
private boolean isLegacyModelType
private boolean gromacsWideFormat
protected boolean isPQR
private final java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Boolean>> htFormul
private java.util.Map<java.lang.String,java.lang.String> htHetero
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Object>> htSites
private java.util.Map<java.lang.String,java.lang.Boolean> htElementsInCurrentGroup
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> htMolIds
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.String>> vCompnds
private java.util.Map<java.lang.String,java.lang.Object> thisBiomolecule
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> vBiomolecules
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> vTlsModels
private javajs.util.SB sbTlsErrors
protected int[] biomtChainAtomCounts
private javajs.util.SB sbIgnored
private javajs.util.SB sbSelected
private javajs.util.SB sbConect
private javajs.util.SB sb
private int ac
private int maxSerial
private int nUNK
private int nRes
private java.util.Map<java.lang.String,java.lang.String> currentCompnd
private java.lang.String currentGroup3
private java.lang.String currentKey
private int currentResno
private int configurationPtr
private boolean resetKey
private java.lang.String compnd
private int conformationIndex
protected int fileAtomIndex
private char lastAltLoc
private int lastGroup
private char lastInsertion
private int lastSourceSerial
private int lastTargetSerial
private int tlsGroupID
private int atomTypePt0
private int atomTypeLen
private boolean isCourseGrained
private boolean isbiomol
private static final java.lang.String lineOptions
java.util.Map<java.lang.String,java.lang.String> htGroup1
private boolean haveDoubleBonds
private float cryst1
private final float[] dataT
private static final float RAD_PER_DEG
private static final float _8PI2_
private java.util.Map<Atom,float[]> tlsU
private javajs.util.Lst<int[]> vConnect
private int connectNextAtomIndex
private int connectNextAtomSet
private int[] connectLast
protected void initializeReader() throws java.lang.Exception
initializeReader
in class AtomSetCollectionReader
java.lang.Exception
protected boolean checkLine() throws java.lang.Exception
checkLine
in class AtomSetCollectionReader
java.lang.Exception
private void checkDSSR() throws java.lang.Exception
java.lang.Exception
private void seqAdv()
private java.lang.String readHeader(boolean getLine) throws java.lang.Exception
java.lang.Exception
protected void finalizeSubclassReader() throws java.lang.Exception
AtomSetCollectionReader
finalizeSubclassReader
in class AtomSetCollectionReader
java.lang.Exception
protected void finalizeReaderPDB() throws java.lang.Exception
java.lang.Exception
private void checkForResidualBFactors(SymmetryInterface symmetry)
private void header()
private void title()
private void compnd(boolean isSource)
private void setBiomoleculeAtomCounts()
private void remark350() throws java.lang.Exception
java.lang.Exception
private void remark290() throws java.lang.Exception
java.lang.Exception
private int getSerial(int i, int j)
private int getSeqNo(int i, int j)
protected Atom processAtom(Atom atom, java.lang.String name, char altID, java.lang.String group3, int chainID, int seqNo, char insCode, boolean isHetero, java.lang.String sym)
protected void processAtom2(Atom atom, int serial, float x, float y, float z, int charge)
private void atom()
protected boolean filterPDBAtom(Atom atom, int iAtom)
protected void setAdditionalAtomParameters(Atom atom)
atom
- protected java.lang.String deduceElementSymbol(boolean isHetero)
isHetero
- private void conect()
private void structure()
private int getModelNumber()
protected void model(int modelNumber)
private void checkNotPDB()
private void cryst1() throws java.lang.Exception
java.lang.Exception
private float getFloat(int ich, int cch) throws java.lang.Exception
java.lang.Exception
private void scale(int n) throws java.lang.Exception
java.lang.Exception
private void expdta()
private void formul()
private void het()
private void hetnam()
private void anisou()
private void site()
private boolean remarkTls() throws java.lang.Exception
java.lang.Exception
private void handleTlsMissingModels()
private void setTlsGroups(int iGroup, int iModel, SymmetryInterface symmetry)
iGroup
- iModel
- symmetry
- private int findAtomForRange(int atom1, int atom2, int chain, int resno, boolean isLast)
private int findAtom(int atom1, int atom2, int chain, int resno, boolean isTrue)
private void setTlsTensor(Atom atom, java.util.Map<java.lang.String,java.lang.Object> group, SymmetryInterface symmetry)
private void tlsAddError(java.lang.String error)
protected static float fixRadius(float r)
private void addConnection(int[] is)
private void connectAllBad(int maxSerial)
private void connectAll(int maxSerial, boolean isConnectStateBug)