VaspPoscarReader
Date: 2019-10-22

org.jmol.adapter.readers.xtal

## Class VaspPoscarReader

- java.lang.Object
- - org.jmol.adapter.smarter.AtomSetCollectionReader
  - - org.jmol.adapter.readers.xtal.VaspPoscarReader

- All Implemented Interfaces:
    javajs.api.GenericLineReader
  Direct Known Subclasses:
    AFLOWReader, VaspChgcarReader

      public class VaspPoscarReader
      extends AtomSetCollectionReader

  adjusted for AFLOW options - adding element names, environment radius on atom line http://cms.mpi.univie.ac.at/vasp/
  Version:
    1.0
  Author:
    Pieremanuele Canepa, Wake Forest University, Department of Physics Winston Salem, NC 27106, canepap@wfu.edu (pcanepa@mit.edu), Bob Hanson

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `ac`
    `protected javajs.util.Lst<java.lang.String>` | `atomLabels`
    `private boolean` | `atomsLabeledInline`
    `protected java.lang.String[]` | `defaultLabels`
    `protected java.lang.String[]` | `elementLabel`
    `(package private) int` | `elementPt`
    `private boolean` | `haveAtomLabels`
    `protected boolean` | `quiet`
    `(package private) int` | `radiusPt`
    `private float` | `scaleFac`
    `protected java.lang.String` | `title`

    - ### Fields inherited from class org.jmol.adapter.smarter.AtomSetCollectionReader

      `addedData, addedDataKey, addVibrations, allowPDBFilter, ANGSTROMS_PER_BOHR, applySymmetryToBonds, asc, baseAtomIndex, binaryDoc, bsFilter, bsModels, calculationType, continuing, debugging, desiredModelNumber, desiredSpaceGroupIndex, desiredVibrationNumber, doApplySymmetry, doCentralize, doCheckUnitCell, doConvertToFractional, doPackUnitCell, doProcessLines, doReadMolecularOrbitals, dssr, fileName, fileOffset, filePath, fileScaling, fillRange, filter, filterHetero, fixJavaFloat, forcePacked, getHeader, haveAtomFilter, haveModel, havePartialChargeFilter, htParams, ignoreFileSpaceGroupName, ignoreFileSymmetryOperators, ignoreFileUnitCell, ignoreStructure, iHaveFractionalCoordinates, iHaveSymmetryOperators, iHaveUnitCell, isBinary, isConcatenated, isDSSP1, isFinalized, isMolecular, isPrimitive, isSequential, isTrajectory, latticeCells, latticeScaling, latticeType, line, lstNCS, matUnitCellOrientation, modDim, modelNumber, ms, mustFinalizeModelSet, next, out, packingError, prevline, primitiveToCrystal, ptLine, ptSupercell, reader, readerName, requiresBSFilter, reverseModels, rotateHexCell, sgName, stateScriptVersionInt, strSupercell, symmetry, templateAtomCount, thisBiomolecule, trajectorySteps, unitCellOffset, unitCellParams, useAltNames, useFileModelNumbers, validation, vibrationNumber, vibsFractional, vwr`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `VaspPoscarReader()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `finalizeSubclassReader()` optional reader-specific method run first.
    `protected java.lang.String` | `getElement(java.lang.String token)` allow for any number of characters, for which the first one or two are an element symbol.
    `protected void` | `initializeReader()`
    `protected java.lang.String` | `rdline()`
    `protected void` | `readCoordinates()`
    `protected void` | `readMolecularFormula()` try various ways to read the optional atom labels.
    `protected void` | `readStructure(java.lang.String titleMsg)`
    `protected void` | `readUnitCellVectors()`

    - ### Methods inherited from class org.jmol.adapter.smarter.AtomSetCollectionReader

      `addAtomXYZSymName, addExplicitLatticeVector, addJmolScript, addSites, addSiteScript, appendLoadNote, appendUunitCellInfo, applySymmetryAndSetTrajectory, applySymTrajASCR, checkCurrentLineForScript, checkFilterKey, checkLastModel, checkLine, checkLineForScript, clearUnitCell, cloneLastAtomSet, discardLinesUntilBlank, discardLinesUntilContains, discardLinesUntilContains2, discardLinesUntilNonBlank, discardLinesUntilStartsWith, discardPreviousAtoms, doGetModel, doGetVibration, doPreSymmetry, fill3x3, fillDataBlock, fillDataBlockFixed, fillFloatArray, fillFrequencyData, filterAtom, filterReject, finalizeMOData, finalizeModelSet, finalizeReaderASCR, finalizeSubclassSymmetry, forceSymmetry, fractionalizeCoordinates, 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, 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`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### atomLabels

          protected javajs.util.Lst<java.lang.String> atomLabels

    - #### haveAtomLabels

          private boolean haveAtomLabels

    - #### atomsLabeledInline

          private boolean atomsLabeledInline

    - #### scaleFac

          private float scaleFac

    - #### ac

          protected int ac

    - #### title

          protected java.lang.String title

    - #### quiet

          protected boolean quiet

    - #### defaultLabels

          protected java.lang.String[] defaultLabels

    - #### elementLabel

          protected java.lang.String[] elementLabel

    - #### radiusPt

          int radiusPt

    - #### elementPt

          int elementPt

  - ### Constructor Detail

    - #### VaspPoscarReader

          public VaspPoscarReader()

  - ### Method Detail

    - #### initializeReader

          protected void initializeReader()
                                   throws java.lang.Exception

      Overrides:
        `initializeReader` in class `AtomSetCollectionReader`
      Throws:
        `java.lang.Exception`

    - #### readStructure

          protected void readStructure(java.lang.String titleMsg)
                                throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### finalizeSubclassReader

          protected void finalizeSubclassReader()
                                         throws java.lang.Exception

      Description copied from class: `AtomSetCollectionReader`
      optional reader-specific method run first.
      Overrides:
        `finalizeSubclassReader` in class `AtomSetCollectionReader`
      Throws:
        `java.lang.Exception`

    - #### readUnitCellVectors

          protected void readUnitCellVectors()
                                      throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### readMolecularFormula

          protected void readMolecularFormula()
                                       throws java.lang.Exception

      try various ways to read the optional atom labels. There is no convention here.
      Throws:
        `java.lang.Exception`

    - #### readCoordinates

          protected void readCoordinates()
                                  throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### getElement

          protected java.lang.String getElement(java.lang.String token)

      allow for any number of characters, for which the first one or two are an element symbol.
      Parameters:
        `token` -
      Returns:
        element symbol

    - #### rdline

          protected java.lang.String rdline()
                                     throws java.lang.Exception

      Throws:
        `java.lang.Exception`