Package org.jmol.adapter.smarter
Class AtomSetCollectionReader
- java.lang.Object
-
- org.jmol.adapter.smarter.AtomSetCollectionReader
-
- All Implemented Interfaces:
javajs.api.GenericLineReader
- Direct Known Subclasses:
AbinitReader
,AimsReader
,AlchemyReader
,AmpacReader
,BasisFunctionReader
,BilbaoReader
,BinaryDcdReader
,CastepReader
,CgdReader
,CifReader
,CrystalReader
,CubeReader
,DmolReader
,EspressoReader
,FAHReader
,FoldingXyzReader
,ForceFieldReader
,GaussianWfnReader
,GhemicalMMReader
,GromacsReader
,GulpReader
,HyperChemReader
,InputReader
,JanaReader
,JmeReader
,JSONReader
,MagresReader
,MdCrdReader
,MolReader
,MopacReader
,OptimadeReader
,PdbReader
,PWmatReader
,ShelxReader
,SiestaReader
,TlsDataOnlyReader
,VaspOutcarReader
,VaspPoscarReader
,Wien2kReader
,XcrysdenReader
,XmlReader
,XyzReader
public abstract class AtomSetCollectionReader extends java.lang.Object implements javajs.api.GenericLineReader
-
-
Field Summary
Fields Modifier and Type Field Description java.lang.String
addedData
java.lang.String
addedDataKey
protected boolean
addVibrations
boolean
allow_a_len_1
protected boolean
allowPDBFilter
static float
ANGSTROMS_PER_BOHR
boolean
applySymmetryToBonds
AtomSetCollection
asc
int
baseAtomIndex
first atom index for this collection, current modelset.acint
baseBondIndex
protected javajs.api.GenericBinaryDocument
binaryDoc
protected javajs.util.BS
bsFilter
protected javajs.util.BS
bsModels
java.lang.String
calculationType
protected static java.lang.String
CELL_TYPE_CONVENTIONAL
protected static java.lang.String
CELL_TYPE_PRIMITIVE
boolean
centroidPacked
boolean
continuing
boolean
debugging
protected int
desiredModelNumber
int
desiredSpaceGroupIndex
int
desiredVibrationNumber
boolean
doApplySymmetry
protected boolean
doCentralize
boolean
doCentroidUnitCell
protected boolean
doCheckUnitCell
boolean
doConvertToFractional
private java.lang.Object
domains
boolean
doPackUnitCell
boolean
doProcessLines
boolean
doReadMolecularOrbitals
private boolean
doSetOrientation
java.lang.Object
dssr
(package private) boolean
fileCoordinatesAreFractional
protected java.lang.String
fileName
protected javajs.util.P3
fileOffset
private javajs.util.P3
fileOffsetFractional
protected java.lang.String
filePath
protected javajs.util.P3
fileScaling
java.lang.Object
fillRange
java.lang.String
filter
private java.lang.String
filter1
private java.lang.String
filter1Cased
private java.lang.String
filter2
private java.lang.String
filter2Cased
private boolean
filterAltLoc
private boolean
filterAtomName
private java.lang.String
filterAtomNameTerminator
private boolean
filterAtomType
private java.lang.String
filterAtomTypeStr
java.lang.String
filterCased
private boolean
filterChain
private boolean
filterElement
private boolean
filterEveryNth
private boolean
filterGroup3
protected boolean
filterHetero
private int
filterN
(package private) java.lang.String
filterSymop
private int[]
firstLastStep
boolean
fixJavaFloat
protected boolean
forcePacked
protected boolean
getHeader
boolean
haveAtomFilter
protected boolean
haveModel
protected boolean
havePartialChargeFilter
java.util.Map<java.lang.String,java.lang.Object>
htParams
protected boolean
ignoreFileSpaceGroupName
protected boolean
ignoreFileSymmetryOperators
protected boolean
ignoreFileUnitCell
protected boolean
ignoreStructure
protected boolean
iHaveFractionalCoordinates
boolean
iHaveSymmetryOperators
boolean
iHaveUnitCell
boolean
isBinary
protected boolean
isConcatenated
protected boolean
isDSSP1
protected boolean
isFinalized
boolean
isMolecular
protected boolean
isPrimitive
protected boolean
isSequential
protected boolean
isTrajectory
private int
lastModelNumber
int[]
latticeCells
protected float
latticeScaling
protected java.lang.String
latticeType
java.lang.String
line
private javajs.util.SB
loadNote
javajs.util.Lst<javajs.util.M4>
lstNCS
private javajs.util.M3
matRot
protected javajs.util.M3
matUnitCellOrientation
protected boolean
merging
int
modDim
int
modelNumber
private javajs.util.Lst<java.lang.String>
moreUnitCellInfo
MSInterface
ms
protected boolean
mustFinalizeModelSet
private java.lang.String
nameRequired
protected int[]
next
private int
nFiltered
private int
nMatrixElements
protected boolean
noPack
protected javajs.util.OC
out
float
packingError
boolean
paramsCentroid
javajs.util.T3
paramsLattice
private boolean
paramsPacked
private boolean
polymerX
private java.lang.String
previousScript
private java.lang.String
previousSpaceGroup
private float[]
previousUnitCell
java.lang.String
prevline
javajs.util.M3
primitiveToCrystal
protected int
ptLine
protected javajs.util.P3
ptSupercell
protected java.io.BufferedReader
reader
protected java.lang.String
readerName
protected boolean
requiresBSFilter
protected boolean
reverseModels
protected boolean
rotateHexCell
protected java.lang.String
sgName
private java.lang.String
siteScript
boolean
slabXY
protected int
stateScriptVersionInt
java.lang.String
strSupercell
SymmetryInterface
symmetry
(package private) float
symmetryRange
protected int
templateAtomCount
java.util.Map<java.lang.String,java.lang.Object>
thisBiomolecule
javajs.util.Lst<javajs.util.P3[]>
trajectorySteps
float[]
ucItems
protected javajs.util.P3
unitCellOffset
private boolean
unitCellOffsetFractional
float[]
unitCellParams
protected boolean
useAltNames
protected boolean
useFileModelNumbers
java.lang.Object
validation
int
vibrationNumber
boolean
vibsFractional
Viewer
vwr
-
Constructor Summary
Constructors Constructor Description AtomSetCollectionReader()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Atom
addAtomXYZSymName(java.lang.String[] tokens, int i, java.lang.String sym, java.lang.String name)
void
addExplicitLatticeVector(int i, float[] xyz, int i0)
void
addJmolScript(java.lang.String script)
void
addSites(java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Object>> htSites)
protected void
addSiteScript(java.lang.String script)
private boolean
allowAtomName(java.lang.String atomName, java.lang.String f)
void
appendLoadNote(java.lang.String info)
void
appendUunitCellInfo(java.lang.String info)
void
applySymmetryAndSetTrajectory()
SymmetryInterface
applySymTrajASCR()
boolean
checkAndRemoveFilterKey(java.lang.String key)
void
checkCurrentLineForScript()
private boolean
checkFilter(Atom atom, java.lang.String f, java.lang.String fCased)
boolean
checkFilterKey(java.lang.String key)
boolean
checkLastModel()
sets continuing and doProcessLinesprotected boolean
checkLine()
protected void
checkLineForScript(java.lang.String line)
private boolean
checkUnitCell(int n)
private void
checkUnitCellOffset()
void
clearUnitCell()
protected int
cloneLastAtomSet(int ac, javajs.util.P3[] pts)
java.lang.String
discardLinesUntilBlank()
java.lang.String
discardLinesUntilContains(java.lang.String containsMatch)
java.lang.String
discardLinesUntilContains2(java.lang.String s1, java.lang.String s2)
java.lang.String
discardLinesUntilNonBlank()
java.lang.String
discardLinesUntilStartsWith(java.lang.String startsWith)
protected void
discardPreviousAtoms()
boolean
doGetModel(int modelNumber, java.lang.String title)
boolean
doGetVibration(int vibrationNumber)
protected void
doPreSymmetry()
protected double[][]
fill3x3(java.lang.String[] tokens, int pt)
fills a double[3][3]protected void
fillDataBlock(java.lang.String[][] data, int minLineLen)
fills an array with a pre-defined number of lines of token data, skipping blank lines in the processprotected void
fillDataBlockFixed(java.lang.String[][] data, int col0, int colWidth, int minLineLen)
Fills an array with a predefined number of lines of data that is arranged in fixed FORTRAN-like column format.protected float[]
fillFloatArray(java.lang.String s, int width, float[] data)
fills a float array with string data from a fileprotected void
fillFrequencyData(int iAtom0, int ac, int modelAtomCount, boolean[] ignore, boolean isWide, int col0, int colWidth, int[] atomIndexes, int minLineLen, java.lang.String[][] data)
Extracts a block of frequency data from a file.protected boolean
filterAtom(Atom atom, int iAtom)
protected boolean
filterReject(java.lang.String f, java.lang.String code, java.lang.String atomCode)
void
finalizeMOData(java.util.Map<java.lang.String,java.lang.Object> moData)
void
finalizeModelSet()
protected void
finalizeReaderASCR()
protected void
finalizeSubclassReader()
optional reader-specific method run first.protected void
finalizeSubclassSymmetry(boolean haveSymmetry)
private java.lang.Object
finish()
private void
fixBaseIndices()
void
forceSymmetry(boolean andPack)
protected void
fractionalizeCoordinates(boolean toFrac)
static java.lang.String
getElementSymbol(int elementNumber)
java.lang.String
getFilter(java.lang.String key)
java.lang.String
getFilterWithCase(java.lang.String key)
protected static javajs.util.Lst<java.lang.Integer>
getFortranFormatLengths(java.lang.String s)
get all integers after letters negative entries are spaces (1Xn)java.lang.Object
getInterface(java.lang.String className)
protected SymmetryInterface
getNewSymmetry()
protected static java.lang.String[]
getStrings(java.lang.String sinfo, int nFields, int width)
SymmetryInterface
getSymmetry()
java.lang.String[]
getTokens()
static float[]
getTokensFloat(java.lang.String s, float[] f, int n)
private void
initialize()
private void
initializeCartesianToFractional()
protected void
initializeReader()
protected void
initializeSymmetry()
protected void
initializeSymmetryOptions()
protected void
initializeTrajectoryFile()
boolean
isLastModel(int modelNumber)
after reading a model, Q: Is this the last model?protected void
newAtomSet(java.lang.String name)
protected float
parseFloat()
protected float
parseFloatRange(java.lang.String s, int iStart, int iEnd)
float
parseFloatStr(java.lang.String s)
protected int
parseInt()
int
parseIntAt(java.lang.String s, int iStart)
protected int
parseIntRange(java.lang.String s, int iStart, int iEnd)
int
parseIntStr(java.lang.String s)
protected java.lang.String
parseToken()
protected java.lang.String
parseTokenNext(java.lang.String s)
protected java.lang.String
parseTokenRange(java.lang.String s, int iStart, int iEnd)
protected java.lang.String
parseTokenStr(java.lang.String s)
protected void
processBinaryDocument()
protected void
processDOM(java.lang.Object DOMNode)
java.lang.String
rd()
protected javajs.util.V3[]
read3Vectors(boolean isBohr)
read three vectors, as for unit cube definitions allows for non-numeric data preceding the number block(package private) java.lang.Object
readData()
protected java.lang.Object
readDataObject(java.lang.Object node)
protected java.lang.String
readLines(int nLines)
java.lang.String
readNextLine()
boolean
rejectAtomName(java.lang.String name)
java.lang.String
RL()
protected void
set2D()
void
setAtomCoord(Atom atom)
Atom
setAtomCoordScaled(Atom atom, java.lang.String[] tokens, int i, float f)
protected void
setAtomCoordTokens(Atom atom, java.lang.String[] tokens, int i)
void
setAtomCoordXYZ(Atom atom, float x, float y, float z)
void
setChainID(Atom atom, java.lang.String label)
protected void
setElementAndIsotope(Atom atom, java.lang.String str)
allow 13C, 15N, 2H, etc.private void
setError(java.lang.Throwable e)
protected void
setFilter(java.lang.String filter0)
protected void
setFilterAtomTypeStr(java.lang.String s)
void
setFractionalCoordinates(boolean TF)
void
setIsPDB()
protected java.lang.String
setLoadNote()
protected void
setModelPDB(boolean isPDB)
void
setSpaceGroupName(java.lang.String name)
int
setSymmetryOperator(java.lang.String xyz)
void
setTransform(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3)
void
setUnitCell(float a, float b, float c, float alpha, float beta, float gamma)
void
setUnitCellItem(int i, float x)
protected void
setup(java.lang.String fullPath, java.util.Map<java.lang.String,java.lang.Object> htParams, java.lang.Object readerOrDocument)
protected void
setupASCR(java.lang.String fullPath, java.util.Map<java.lang.String,java.lang.Object> htParams, java.lang.Object readerOrDocument)
-
-
-
Field Detail
-
ANGSTROMS_PER_BOHR
public static final float ANGSTROMS_PER_BOHR
- See Also:
- Constant Field Values
-
CELL_TYPE_CONVENTIONAL
protected static final java.lang.String CELL_TYPE_CONVENTIONAL
- See Also:
- Constant Field Values
-
CELL_TYPE_PRIMITIVE
protected static final java.lang.String CELL_TYPE_PRIMITIVE
- See Also:
- Constant Field Values
-
isBinary
public boolean isBinary
-
debugging
public boolean debugging
-
requiresBSFilter
protected boolean requiresBSFilter
-
primitiveToCrystal
public javajs.util.M3 primitiveToCrystal
-
asc
public AtomSetCollection asc
-
reader
protected java.io.BufferedReader reader
-
binaryDoc
protected javajs.api.GenericBinaryDocument binaryDoc
-
readerName
protected java.lang.String readerName
-
htParams
public java.util.Map<java.lang.String,java.lang.Object> htParams
-
trajectorySteps
public javajs.util.Lst<javajs.util.P3[]> trajectorySteps
-
domains
private java.lang.Object domains
-
validation
public java.lang.Object validation
-
dssr
public java.lang.Object dssr
-
isConcatenated
protected boolean isConcatenated
-
addedData
public java.lang.String addedData
-
addedDataKey
public java.lang.String addedDataKey
-
fixJavaFloat
public boolean fixJavaFloat
-
thisBiomolecule
public java.util.Map<java.lang.String,java.lang.Object> thisBiomolecule
-
lstNCS
public javajs.util.Lst<javajs.util.M4> lstNCS
-
line
public java.lang.String line
-
prevline
public java.lang.String prevline
-
next
protected int[] next
-
ptLine
protected int ptLine
-
latticeType
protected java.lang.String latticeType
-
latticeCells
public int[] latticeCells
-
fillRange
public java.lang.Object fillRange
-
doProcessLines
public boolean doProcessLines
-
iHaveUnitCell
public boolean iHaveUnitCell
-
iHaveSymmetryOperators
public boolean iHaveSymmetryOperators
-
continuing
public boolean continuing
-
vwr
public Viewer vwr
-
doApplySymmetry
public boolean doApplySymmetry
-
ignoreFileSymmetryOperators
protected boolean ignoreFileSymmetryOperators
-
isTrajectory
protected boolean isTrajectory
-
applySymmetryToBonds
public boolean applySymmetryToBonds
-
doCheckUnitCell
protected boolean doCheckUnitCell
-
getHeader
protected boolean getHeader
-
isSequential
protected boolean isSequential
-
isMolecular
public boolean isMolecular
-
templateAtomCount
protected int templateAtomCount
-
modelNumber
public int modelNumber
-
vibrationNumber
public int vibrationNumber
-
desiredVibrationNumber
public int desiredVibrationNumber
-
bsModels
protected javajs.util.BS bsModels
-
useFileModelNumbers
protected boolean useFileModelNumbers
-
havePartialChargeFilter
protected boolean havePartialChargeFilter
-
calculationType
public java.lang.String calculationType
-
sgName
protected java.lang.String sgName
-
ignoreFileUnitCell
protected boolean ignoreFileUnitCell
-
ignoreFileSpaceGroupName
protected boolean ignoreFileSpaceGroupName
-
unitCellParams
public float[] unitCellParams
-
desiredModelNumber
protected int desiredModelNumber
-
symmetry
public SymmetryInterface symmetry
-
out
protected javajs.util.OC out
-
iHaveFractionalCoordinates
protected boolean iHaveFractionalCoordinates
-
doPackUnitCell
public boolean doPackUnitCell
-
ptSupercell
protected javajs.util.P3 ptSupercell
-
mustFinalizeModelSet
protected boolean mustFinalizeModelSet
-
forcePacked
protected boolean forcePacked
-
packingError
public float packingError
-
rotateHexCell
protected boolean rotateHexCell
-
isPrimitive
protected boolean isPrimitive
-
modDim
public int modDim
-
loadNote
private javajs.util.SB loadNote
-
doConvertToFractional
public boolean doConvertToFractional
-
fileCoordinatesAreFractional
boolean fileCoordinatesAreFractional
-
merging
protected boolean merging
-
symmetryRange
float symmetryRange
-
firstLastStep
private int[] firstLastStep
-
lastModelNumber
private int lastModelNumber
-
desiredSpaceGroupIndex
public int desiredSpaceGroupIndex
-
fileScaling
protected javajs.util.P3 fileScaling
-
latticeScaling
protected float latticeScaling
-
fileOffset
protected javajs.util.P3 fileOffset
-
fileOffsetFractional
private javajs.util.P3 fileOffsetFractional
-
unitCellOffset
protected javajs.util.P3 unitCellOffset
-
unitCellOffsetFractional
private boolean unitCellOffsetFractional
-
moreUnitCellInfo
private javajs.util.Lst<java.lang.String> moreUnitCellInfo
-
paramsLattice
public javajs.util.T3 paramsLattice
-
paramsCentroid
public boolean paramsCentroid
-
paramsPacked
private boolean paramsPacked
-
filePath
protected java.lang.String filePath
-
fileName
protected java.lang.String fileName
-
baseAtomIndex
public int baseAtomIndex
first atom index for this collection, current modelset.ac
-
baseBondIndex
public int baseBondIndex
-
stateScriptVersionInt
protected int stateScriptVersionInt
-
isFinalized
protected boolean isFinalized
-
noPack
protected boolean noPack
-
haveModel
protected boolean haveModel
-
previousSpaceGroup
private java.lang.String previousSpaceGroup
-
previousUnitCell
private float[] previousUnitCell
-
nMatrixElements
private int nMatrixElements
-
ucItems
public float[] ucItems
-
matUnitCellOrientation
protected javajs.util.M3 matUnitCellOrientation
-
bsFilter
protected javajs.util.BS bsFilter
-
filter
public java.lang.String filter
-
filterCased
public java.lang.String filterCased
-
haveAtomFilter
public boolean haveAtomFilter
-
filterAltLoc
private boolean filterAltLoc
-
filterGroup3
private boolean filterGroup3
-
filterChain
private boolean filterChain
-
filterAtomName
private boolean filterAtomName
-
filterAtomType
private boolean filterAtomType
-
filterAtomTypeStr
private java.lang.String filterAtomTypeStr
-
filterAtomNameTerminator
private java.lang.String filterAtomNameTerminator
-
filterElement
private boolean filterElement
-
filterHetero
protected boolean filterHetero
-
filterEveryNth
private boolean filterEveryNth
-
filterSymop
java.lang.String filterSymop
-
filterN
private int filterN
-
nFiltered
private int nFiltered
-
doSetOrientation
private boolean doSetOrientation
-
doCentralize
protected boolean doCentralize
-
addVibrations
protected boolean addVibrations
-
useAltNames
protected boolean useAltNames
-
ignoreStructure
protected boolean ignoreStructure
-
isDSSP1
protected boolean isDSSP1
-
allowPDBFilter
protected boolean allowPDBFilter
-
doReadMolecularOrbitals
public boolean doReadMolecularOrbitals
-
reverseModels
protected boolean reverseModels
-
nameRequired
private java.lang.String nameRequired
-
doCentroidUnitCell
public boolean doCentroidUnitCell
-
centroidPacked
public boolean centroidPacked
-
strSupercell
public java.lang.String strSupercell
-
allow_a_len_1
public boolean allow_a_len_1
-
slabXY
public boolean slabXY
-
polymerX
private boolean polymerX
-
filter1
private java.lang.String filter1
-
filter2
private java.lang.String filter2
-
filter1Cased
private java.lang.String filter1Cased
-
filter2Cased
private java.lang.String filter2Cased
-
matRot
private javajs.util.M3 matRot
-
ms
public MSInterface ms
-
vibsFractional
public boolean vibsFractional
-
previousScript
private java.lang.String previousScript
-
siteScript
private java.lang.String siteScript
-
-
Method Detail
-
setup
protected void setup(java.lang.String fullPath, java.util.Map<java.lang.String,java.lang.Object> htParams, java.lang.Object readerOrDocument)
-
setupASCR
protected void setupASCR(java.lang.String fullPath, java.util.Map<java.lang.String,java.lang.Object> htParams, java.lang.Object readerOrDocument)
-
readData
java.lang.Object readData() throws java.lang.Exception
- Throws:
java.lang.Exception
-
fixBaseIndices
private void fixBaseIndices()
-
readDataObject
protected java.lang.Object readDataObject(java.lang.Object node) throws java.lang.Exception
- Throws:
java.lang.Exception
-
processDOM
protected void processDOM(java.lang.Object DOMNode)
- Parameters:
DOMNode
-
-
processBinaryDocument
protected void processBinaryDocument() throws java.lang.Exception
- Throws:
java.lang.Exception
-
initializeReader
protected void initializeReader() throws java.lang.Exception
- Throws:
java.lang.Exception
-
checkLine
protected boolean checkLine() throws java.lang.Exception
- Returns:
- true if need to read new line
- Throws:
java.lang.Exception
-
checkLastModel
public boolean checkLastModel()
sets continuing and doProcessLines- Returns:
- TRUE if continuing, FALSE if not
-
isLastModel
public boolean isLastModel(int modelNumber)
after reading a model, Q: Is this the last model?- Parameters:
modelNumber
-- Returns:
- Yes/No
-
appendLoadNote
public void appendLoadNote(java.lang.String info)
-
initializeTrajectoryFile
protected void initializeTrajectoryFile()
-
finalizeSubclassReader
protected void finalizeSubclassReader() throws java.lang.Exception
optional reader-specific method run first.- Throws:
java.lang.Exception
-
finalizeReaderASCR
protected void finalizeReaderASCR() throws java.lang.Exception
- Throws:
java.lang.Exception
-
setLoadNote
protected java.lang.String setLoadNote()
-
setIsPDB
public void setIsPDB()
-
setModelPDB
protected void setModelPDB(boolean isPDB)
-
finish
private java.lang.Object finish()
-
setError
private void setError(java.lang.Throwable e)
- Parameters:
e
-
-
initialize
private void initialize()
-
initializeSymmetryOptions
protected void initializeSymmetryOptions()
-
doGetModel
public boolean doGetModel(int modelNumber, java.lang.String title)
-
discardPreviousAtoms
protected void discardPreviousAtoms()
-
initializeSymmetry
protected final void initializeSymmetry()
-
newAtomSet
protected void newAtomSet(java.lang.String name)
-
cloneLastAtomSet
protected int cloneLastAtomSet(int ac, javajs.util.P3[] pts) throws java.lang.Exception
- Throws:
java.lang.Exception
-
setSpaceGroupName
public void setSpaceGroupName(java.lang.String name)
-
setSymmetryOperator
public int setSymmetryOperator(java.lang.String xyz)
-
initializeCartesianToFractional
private void initializeCartesianToFractional()
-
clearUnitCell
public void clearUnitCell()
-
setUnitCellItem
public void setUnitCellItem(int i, float x)
-
setUnitCell
public void setUnitCell(float a, float b, float c, float alpha, float beta, float gamma)
-
addExplicitLatticeVector
public void addExplicitLatticeVector(int i, float[] xyz, int i0)
-
checkUnitCell
private boolean checkUnitCell(int n)
-
getSymmetry
public SymmetryInterface getSymmetry()
-
checkUnitCellOffset
private void checkUnitCellOffset()
-
fractionalizeCoordinates
protected void fractionalizeCoordinates(boolean toFrac)
-
getNewSymmetry
protected SymmetryInterface getNewSymmetry()
-
setFractionalCoordinates
public void setFractionalCoordinates(boolean TF)
-
setFilterAtomTypeStr
protected void setFilterAtomTypeStr(java.lang.String s)
-
setFilter
protected void setFilter(java.lang.String filter0)
-
getFilterWithCase
public java.lang.String getFilterWithCase(java.lang.String key)
-
getFilter
public java.lang.String getFilter(java.lang.String key)
-
checkFilterKey
public boolean checkFilterKey(java.lang.String key)
-
checkAndRemoveFilterKey
public boolean checkAndRemoveFilterKey(java.lang.String key)
- Parameters:
key
-- Returns:
- true if the key existed; filter is set null if this is the only key
-
filterAtom
protected boolean filterAtom(Atom atom, int iAtom)
- Parameters:
atom
-iAtom
-- Returns:
- true if we want this atom
-
checkFilter
private boolean checkFilter(Atom atom, java.lang.String f, java.lang.String fCased)
- Parameters:
atom
-f
-fCased
-- Returns:
- true if a filter is found
-
rejectAtomName
public boolean rejectAtomName(java.lang.String name)
-
allowAtomName
private boolean allowAtomName(java.lang.String atomName, java.lang.String f)
-
filterReject
protected boolean filterReject(java.lang.String f, java.lang.String code, java.lang.String atomCode)
-
set2D
protected void set2D()
-
doGetVibration
public boolean doGetVibration(int vibrationNumber)
-
setTransform
public void setTransform(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3)
-
setAtomCoordXYZ
public void setAtomCoordXYZ(Atom atom, float x, float y, float z)
-
setAtomCoordScaled
public Atom setAtomCoordScaled(Atom atom, java.lang.String[] tokens, int i, float f)
-
setAtomCoordTokens
protected void setAtomCoordTokens(Atom atom, java.lang.String[] tokens, int i)
-
addAtomXYZSymName
public Atom addAtomXYZSymName(java.lang.String[] tokens, int i, java.lang.String sym, java.lang.String name)
-
setAtomCoord
public void setAtomCoord(Atom atom)
-
addSites
public void addSites(java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Object>> htSites)
-
applySymmetryAndSetTrajectory
public void applySymmetryAndSetTrajectory() throws java.lang.Exception
- Throws:
java.lang.Exception
-
applySymTrajASCR
public SymmetryInterface applySymTrajASCR() throws java.lang.Exception
- Throws:
java.lang.Exception
-
finalizeSubclassSymmetry
protected void finalizeSubclassSymmetry(boolean haveSymmetry) throws java.lang.Exception
- Parameters:
haveSymmetry
-- Throws:
java.lang.Exception
-
doPreSymmetry
protected void doPreSymmetry() throws java.lang.Exception
- Throws:
java.lang.Exception
-
finalizeMOData
public void finalizeMOData(java.util.Map<java.lang.String,java.lang.Object> moData)
-
getElementSymbol
public static java.lang.String getElementSymbol(int elementNumber)
-
fillDataBlock
protected void fillDataBlock(java.lang.String[][] data, int minLineLen) throws java.lang.Exception
fills an array with a pre-defined number of lines of token data, skipping blank lines in the process- Parameters:
data
-minLineLen
- TODO- Throws:
java.lang.Exception
-
fill3x3
protected double[][] fill3x3(java.lang.String[] tokens, int pt) throws java.lang.Exception
fills a double[3][3]- Parameters:
tokens
- or null if to read each line for three values (as last 3 on line)pt
- initial index; if tokens == null, then negative index is from end of each line- Returns:
- double[3][3]
- Throws:
java.lang.Exception
-
fillFloatArray
protected float[] fillFloatArray(java.lang.String s, int width, float[] data) throws java.lang.Exception
fills a float array with string data from a file- Parameters:
s
- string data containing floatswidth
- column width or 0 to read tokensdata
- result data to be filled- Returns:
- data
- Throws:
java.lang.Exception
-
fillFrequencyData
protected void fillFrequencyData(int iAtom0, int ac, int modelAtomCount, boolean[] ignore, boolean isWide, int col0, int colWidth, int[] atomIndexes, int minLineLen, java.lang.String[][] data) throws java.lang.Exception
Extracts a block of frequency data from a file. This block may be of two types -- either X Y Z across a row or each of X Y Z on a separate line. Data is presumed to be in fixed FORTRAN-like column format, not space-separated columns.- Parameters:
iAtom0
- the first atom to be assigned a frequencyac
- the number of atoms to be assignedmodelAtomCount
- the number of atoms in each modelignore
- the frequencies to ignore because the user has selected only certain vibrations to be read or for whatever reason; length serves to set the number of frequencies to be readisWide
- when TRUE, this is a table that has X Y Z for each mode within the same row; when FALSE, this is a table that has X Y Z for each mode on a separate line.col0
- the column in which data startscolWidth
- the width of the data columnsatomIndexes
- an array either null or indicating exactly which atoms get the frequencies (used by CrystalReader)minLineLen
- TODOdata
- TODO- Throws:
java.lang.Exception
-
fillDataBlockFixed
protected void fillDataBlockFixed(java.lang.String[][] data, int col0, int colWidth, int minLineLen) throws java.lang.Exception
Fills an array with a predefined number of lines of data that is arranged in fixed FORTRAN-like column format. Used exclusively for frequency data- Parameters:
data
-col0
-colWidth
-minLineLen
- or -ptNonblank- Throws:
java.lang.Exception
-
readLines
protected java.lang.String readLines(int nLines) throws java.lang.Exception
- Throws:
java.lang.Exception
-
discardLinesUntilStartsWith
public java.lang.String discardLinesUntilStartsWith(java.lang.String startsWith) throws java.lang.Exception
- Throws:
java.lang.Exception
-
discardLinesUntilContains
public java.lang.String discardLinesUntilContains(java.lang.String containsMatch) throws java.lang.Exception
- Throws:
java.lang.Exception
-
discardLinesUntilContains2
public java.lang.String discardLinesUntilContains2(java.lang.String s1, java.lang.String s2) throws java.lang.Exception
- Throws:
java.lang.Exception
-
discardLinesUntilBlank
public java.lang.String discardLinesUntilBlank() throws java.lang.Exception
- Throws:
java.lang.Exception
-
discardLinesUntilNonBlank
public java.lang.String discardLinesUntilNonBlank() throws java.lang.Exception
- Throws:
java.lang.Exception
-
checkLineForScript
protected void checkLineForScript(java.lang.String line)
-
checkCurrentLineForScript
public void checkCurrentLineForScript()
-
addJmolScript
public void addJmolScript(java.lang.String script)
-
addSiteScript
protected void addSiteScript(java.lang.String script)
-
rd
public java.lang.String rd() throws java.lang.Exception
- Throws:
java.lang.Exception
-
RL
public java.lang.String RL() throws java.lang.Exception
- Throws:
java.lang.Exception
-
getStrings
protected static final java.lang.String[] getStrings(java.lang.String sinfo, int nFields, int width)
-
getTokens
public java.lang.String[] getTokens()
-
getTokensFloat
public static float[] getTokensFloat(java.lang.String s, float[] f, int n)
-
parseFloat
protected float parseFloat()
-
parseFloatStr
public float parseFloatStr(java.lang.String s)
-
parseFloatRange
protected float parseFloatRange(java.lang.String s, int iStart, int iEnd)
-
parseInt
protected int parseInt()
-
parseIntStr
public int parseIntStr(java.lang.String s)
-
parseIntAt
public int parseIntAt(java.lang.String s, int iStart)
-
parseIntRange
protected int parseIntRange(java.lang.String s, int iStart, int iEnd)
-
parseToken
protected java.lang.String parseToken()
-
parseTokenStr
protected java.lang.String parseTokenStr(java.lang.String s)
-
parseTokenNext
protected java.lang.String parseTokenNext(java.lang.String s)
-
parseTokenRange
protected java.lang.String parseTokenRange(java.lang.String s, int iStart, int iEnd)
-
getFortranFormatLengths
protected static javajs.util.Lst<java.lang.Integer> getFortranFormatLengths(java.lang.String s)
get all integers after letters negative entries are spaces (1Xn)- Parameters:
s
-- Returns:
- Vector of integers
-
read3Vectors
protected javajs.util.V3[] read3Vectors(boolean isBohr) throws java.lang.Exception
read three vectors, as for unit cube definitions allows for non-numeric data preceding the number block- Parameters:
isBohr
-- Returns:
- three vectors
- Throws:
java.lang.Exception
-
setElementAndIsotope
protected void setElementAndIsotope(Atom atom, java.lang.String str)
allow 13C, 15N, 2H, etc. for isotopes- Parameters:
atom
-str
-
-
finalizeModelSet
public void finalizeModelSet()
-
setChainID
public void setChainID(Atom atom, java.lang.String label)
-
readNextLine
public java.lang.String readNextLine() throws java.lang.Exception
- Specified by:
readNextLine
in interfacejavajs.api.GenericLineReader
- Throws:
java.lang.Exception
-
appendUunitCellInfo
public void appendUunitCellInfo(java.lang.String info)
-
getInterface
public java.lang.Object getInterface(java.lang.String className)
-
forceSymmetry
public void forceSymmetry(boolean andPack)
-
-