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 String |
chargeType |
private 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 String |
lastQPt |
private static float[] |
lengthUnitFactors |
private static String[] |
lengthUnitIds |
private int |
qpt2 |
private static float |
RAD_TO_DEG |
private String[] |
tokens |
private String |
tsType |
private static double |
TWOPI |
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, isSequential, isTrajectory, latticeCells, latticeScaling, line, lstNCS, matUnitCellOrientation, modelNumber, ms, mustFinalizeModelSet, next, out, packingError, prevline, ptLine, ptSupercell, reader, readerName, reverseModels, sgName, stateScriptVersionInt, strSupercell, symmetry, templateAtomCount, thisBiomolecule, trajectorySteps, unitCellOffset, unitCellParams, useAltNames, useFileModelNumbers, 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 String |
getFractionalCoord(javajs.util.V3 qvec) |
private void |
getTensor(Atom atom,
String line0) |
void |
initializeReader() |
private static boolean |
isInt(float f) |
private void |
readAtomData(float factor) |
private void |
readEnergy(int pt,
String prefix) |
private boolean |
readFileData() |
private void |
readLatticeAbc() |
private void |
readLatticeCart() |
private float |
readLengthUnit(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(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, discardPreviousAtoms, doGetModel, doGetVibration, doPreSymmetry, 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
private static final float RAD_TO_DEG
private 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 String lastQPt
private int qpt2
private javajs.util.V3 desiredQpt
private String desiredQ
private String chargeType
private boolean isAllQ
private boolean haveCharges
private String tsType
private static final String[] lengthUnitIds
private static final float[] lengthUnitFactors
private static final double TWOPI
public void initializeReader() throws Exception
initializeReader
in class AtomSetCollectionReader
Exception
private void setDesiredQpt(String s)
protected boolean checkLine() throws Exception
checkLine
in class AtomSetCollectionReader
Exception
protected void finalizeSubclassReader() throws Exception
AtomSetCollectionReader
finalizeSubclassReader
in class AtomSetCollectionReader
Exception
private void setLatticeVectors()
private void readOutputBornChargeTensors() throws Exception
Exception
private int readOutputAtomIndex()
private void readOutputCharges() throws Exception
Exception
private void readPhononFractionalCoord() throws Exception
Exception
private 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