public class ShelxReader extends AtomSetCollectionReader
A reader for SHELX files. It currently supports SHELXL.
The SHELX format is described on the net: http://www.msg.ucsf.edu/local/programs/shelxl/ch_07.html. modified by Bob Hanson 2006/04 to allow variant CrystalMaker .cmdf file reading -- but by 2/2010 looks like these ASCII CrystalMaker files aren't used anymore by CrystalMaker, and instead it uses a binary format. CrystalMaker2.2.3 seems to attempt to read the files, but actually cannot. At least not for the file given at http://www.ch.ic.ac.uk/chemime/
Modifier and Type | Field and Description |
---|---|
private boolean |
isCmdf |
private java.lang.String[] |
sfacElementSymbols |
private static java.lang.String[] |
supportedRecordTypes |
(package private) java.lang.String[] |
tokens |
private static java.lang.String |
unsupportedRecordTypes |
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 |
---|
ShelxReader() |
Modifier and Type | Method and Description |
---|---|
private void |
assumeAtomRecord() |
private void |
cell() |
protected boolean |
checkLine() |
private java.lang.String |
getSymbol(java.lang.String sym) |
void |
initializeReader() |
static boolean |
isValidElementSymbolNoCaseSecondChar(java.lang.String str) |
private void |
parseLattRecord() |
private void |
parseSfacCoefficients(java.lang.String[] sfacTokens) |
private void |
parseSfacElementSymbols(java.lang.String[] sfacTokens) |
private void |
parseSfacRecord() |
private void |
parseSymmRecord() |
private void |
processCmdfAtoms() |
private void |
processSupportedRecord(int recordIndex) |
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, finalizeSubclassReader, 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 java.lang.String[] sfacElementSymbols
private boolean isCmdf
java.lang.String[] tokens
private static final java.lang.String unsupportedRecordTypes
private static final java.lang.String[] supportedRecordTypes
public void initializeReader()
initializeReader
in class AtomSetCollectionReader
protected boolean checkLine() throws java.lang.Exception
checkLine
in class AtomSetCollectionReader
java.lang.Exception
private void processSupportedRecord(int recordIndex) throws java.lang.Exception
java.lang.Exception
private void parseLattRecord() throws java.lang.Exception
java.lang.Exception
private void parseSymmRecord() throws java.lang.Exception
java.lang.Exception
private void cell() throws java.lang.Exception
java.lang.Exception
private void parseSfacRecord()
private void parseSfacElementSymbols(java.lang.String[] sfacTokens)
private void parseSfacCoefficients(java.lang.String[] sfacTokens)
private void assumeAtomRecord() throws java.lang.Exception
java.lang.Exception
private void processCmdfAtoms() throws java.lang.Exception
java.lang.Exception
private java.lang.String getSymbol(java.lang.String sym)
public static boolean isValidElementSymbolNoCaseSecondChar(java.lang.String str)