org.jmol.adapter.readers.xtal
public class CastepReader extends AtomSetCollectionReader
Modifier and Type | Field and Description |
---|---|
private float |
a |
private Vector3f[] |
abc |
private float |
alpha |
private int |
atomCount |
private Point3f[] |
atomPts |
private float |
b |
private float |
beta |
private float |
c |
private String |
desiredQ |
private Vector3f |
desiredQpt |
private float |
gamma |
private boolean |
havePhonons |
private boolean |
isCell |
private boolean |
isOutput |
private boolean |
isPhonon |
private String |
lastQPt |
private static float[] |
lengthUnitFactors |
private static String[] |
lengthUnitIds |
private int |
qpt2 |
private String[] |
tokens |
private static double |
TWOPI |
addVibrations, ANGSTROMS_PER_BOHR, applySymmetryToBonds, atomSetCollection, bsFilter, bsModels, calculationType, continuing, desiredModelNumber, desiredVibrationNumber, doApplySymmetry, doc, doCheckUnitCell, doPackUnitCell, doProcessLines, filter, filterHetero, getHeader, haveModel, havePartialChargeFilter, htParams, ignoreFileSpaceGroupName, ignoreFileSymmetryOperators, ignoreFileUnitCell, iHaveFractionalCoordinates, iHaveSymmetryOperators, iHaveUnitCell, isBinary, isSequential, isTrajectory, latticeCells, line, matUnitCellOrientation, modelNumber, next, notionalUnitCell, os, prevline, ptLine, reader, readerName, readMolecularOrbitals, spaceGroup, stateScriptVersionInt, supercell, symmetry, templateAtomCount, useAltNames, vibrationNumber, viewer
Constructor and Description |
---|
CastepReader() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkLine() |
protected void |
finalizeReader() |
private String |
getFractionalCoord(Vector3f qvec) |
void |
initializeReader() |
private static boolean |
isInt(float f) |
private void |
readAtomData(float factor) |
private boolean |
readFileData() |
private void |
readLatticeAbc() |
private void |
readLatticeCart() |
private float |
readLengthUnit(String units) |
private void |
readOutputAtoms() |
private void |
readOutputCharges() |
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,
Vector3f rTrans,
Vector3f qvec,
Vector3f v)
transform complex vibration vector to a real vector by applying the
appropriate translation, storing the results in v
|
private int |
tokenizeCastepCell() |
addJmolScript, addPrimitiveLatticeVector, addSites, addSiteScript, appendLoadNote, applySymmetryAndSetTrajectory, checkFilter, checkLastModel, checkLineForScript, checkLineForScript, clearUnitCell, cloneLastAtomSet, discardLinesUntilBlank, discardLinesUntilContains, discardLinesUntilContains, discardLinesUntilNonBlank, discardLinesUntilStartsWith, doGetModel, doGetVibration, fillDataBlock, fillDataBlock, fillFloatArray, fillFrequencyData, filterAtom, getElementSymbol, getFortranFormatLengths, getStrings, getSymmetry, getTokens, getTokens, getTokens, getTokensFloat, initializeSymmetry, isLastModel, newAtomSet, parseFloat, parseFloat, parseFloat, parseInt, parseInt, parseInt, parseInt, parseStringInfestedFloatArray, parseToken, parseToken, parseToken, parseTokenNext, parseTrimmed, parseTrimmed, processBinaryDocument, processXml, read3Vectors, readData, readLine, readLines, set2D, setAtomCoord, setAtomCoord, setFilter, setFractionalCoordinates, setIsPDB, setMOData, setPdb, setSpaceGroupName, setSymmetryOperator, setTransform, setUnitCell, setUnitCellItem
private String[] tokens
private boolean isPhonon
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 Vector3f[] abc
private int atomCount
private Point3f[] atomPts
private boolean havePhonons
private String lastQPt
private int qpt2
private Vector3f desiredQpt
private String desiredQ
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 finalizeReader() throws Exception
finalizeReader
in class AtomSetCollectionReader
Exception
private void setLatticeVectors()
private void readPhononFractionalCoord() throws Exception
Exception
private static boolean isInt(float f)
private void setPhononVector(float[] data, Atom atom, Vector3f rTrans, Vector3f qvec, Vector3f v)
data
- from .phonon line parsed for floatsatom
- rTrans
- translation vector in unit fractional coordqvec
- q point vectorv
- return vector