public class CastepReader extends AtomSetCollectionReader
Modifier and Type | Field and Description |
---|---|
private float |
a |
private javajs.util.V3[] |
abc |
private int |
ac |
private float |
alpha |
private javajs.util.P3[] |
atomPts |
private float |
b |
private float |
beta |
private float |
c |
private java.lang.String |
chargeType |
private java.lang.String |
desiredQ |
private javajs.util.V3 |
desiredQpt |
private float |
gamma |
private boolean |
haveCharges |
private boolean |
havePhonons |
private boolean |
isAllQ |
private boolean |
isCell |
private boolean |
isOutput |
private boolean |
isPhonon |
private boolean |
isTS |
private java.lang.String |
lastQPt |
private static float[] |
lengthUnitFactors |
private static java.lang.String[] |
lengthUnitIds |
private int |
qpt2 |
private static float |
RAD_TO_DEG |
private java.lang.String[] |
tokens |
private java.lang.String |
tsType |
private static double |
TWOPI |
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 |
---|
CastepReader() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkLine() |
protected void |
finalizeSubclassReader()
optional reader-specific method run first.
|
private java.lang.String |
getFractionalCoord(javajs.util.V3 qvec) |
private void |
getTensor(Atom atom,
java.lang.String line0) |
void |
initializeReader() |
private static boolean |
isInt(float f) |
private void |
readAtomData(float factor) |
private void |
readEnergy(int pt,
java.lang.String prefix) |
private boolean |
readFileData() |
private void |
readLatticeAbc() |
private void |
readLatticeCart() |
private float |
readLengthUnit(java.lang.String units) |
private int |
readOutputAtomIndex() |
private void |
readOutputAtoms() |
private void |
readOutputBornChargeTensors() |
private void |
readOutputCharges()
read Mulliken or Hirshfield charges
|
private void |
readOutputUnitCell() |
private void |
readPhononFractionalCoord() |
private void |
readPhononFrequencies() |
private void |
readPhononTrajectories() |
private void |
readPhononUnitCell() |
private void |
readPositionsAbs() |
private void |
readPositionsFrac() |
private void |
setDesiredQpt(java.lang.String s) |
private void |
setLatticeVectors() |
private void |
setPhononVector(float[] data,
Atom atom,
javajs.util.V3 rTrans,
javajs.util.V3 qvec,
javajs.util.V3 v)
transform complex vibration vector to a real vector by applying the
appropriate translation, storing the results in v
|
private int |
tokenizeCastepCell() |
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 float RAD_TO_DEG
private java.lang.String[] tokens
private boolean isPhonon
private boolean isTS
private boolean isOutput
private boolean isCell
private float a
private float b
private float c
private float alpha
private float beta
private float gamma
private javajs.util.V3[] abc
private int ac
private javajs.util.P3[] atomPts
private boolean havePhonons
private java.lang.String lastQPt
private int qpt2
private javajs.util.V3 desiredQpt
private java.lang.String desiredQ
private java.lang.String chargeType
private boolean isAllQ
private boolean haveCharges
private java.lang.String tsType
private static final java.lang.String[] lengthUnitIds
private static final float[] lengthUnitFactors
private static final double TWOPI
public void initializeReader() throws java.lang.Exception
initializeReader
in class AtomSetCollectionReader
java.lang.Exception
private void setDesiredQpt(java.lang.String s)
private boolean readFileData() throws java.lang.Exception
java.lang.Exception
protected boolean checkLine() throws java.lang.Exception
checkLine
in class AtomSetCollectionReader
java.lang.Exception
private void readOutputUnitCell() throws java.lang.Exception
java.lang.Exception
private void readOutputAtoms() throws java.lang.Exception
java.lang.Exception
private void readEnergy(int pt, java.lang.String prefix) throws java.lang.Exception
java.lang.Exception
private void readPhononTrajectories() throws java.lang.Exception
java.lang.Exception
protected void finalizeSubclassReader() throws java.lang.Exception
AtomSetCollectionReader
finalizeSubclassReader
in class AtomSetCollectionReader
java.lang.Exception
private void setLatticeVectors()
private void readLatticeAbc() throws java.lang.Exception
java.lang.Exception
private void readLatticeCart() throws java.lang.Exception
java.lang.Exception
private void readPositionsFrac() throws java.lang.Exception
java.lang.Exception
private void readPositionsAbs() throws java.lang.Exception
java.lang.Exception
private float readLengthUnit(java.lang.String units) throws java.lang.Exception
java.lang.Exception
private void readAtomData(float factor) throws java.lang.Exception
java.lang.Exception
private int tokenizeCastepCell() throws java.lang.Exception
java.lang.Exception
private void readOutputBornChargeTensors() throws java.lang.Exception
java.lang.Exception
private int readOutputAtomIndex()
private void getTensor(Atom atom, java.lang.String line0) throws java.lang.Exception
java.lang.Exception
private void readOutputCharges() throws java.lang.Exception
java.lang.Exception
private void readPhononUnitCell() throws java.lang.Exception
java.lang.Exception
private void readPhononFractionalCoord() throws java.lang.Exception
java.lang.Exception
private void readPhononFrequencies() throws java.lang.Exception
java.lang.Exception
private java.lang.String getFractionalCoord(javajs.util.V3 qvec)
private static boolean isInt(float f)
private void setPhononVector(float[] data, Atom atom, javajs.util.V3 rTrans, javajs.util.V3 qvec, javajs.util.V3 v)
data
- from .phonon line parsed for floatsatom
- rTrans
- translation vector in unit fractional coordqvec
- q point vectorv
- return vector