Package org.jmol.modelset
Class ModelSet
java.lang.Object
org.jmol.modelset.AtomCollection
org.jmol.modelset.BondCollection
org.jmol.modelset.ModelSet
-
Nested Class Summary
Nested classes/interfaces inherited from class org.jmol.modelset.AtomCollection
AtomCollection.AtomSorter
-
Field Summary
FieldsModifier and TypeFieldDescriptionModel[]
private javajs.util.BS
javajs.util.BS
private final BoxInfo
protected javajs.util.BS
protected javajs.util.BS
protected final Atom[]
private BoxInfo
private boolean
protected javajs.util.BS[]
String[]
boolean
boolean
private static float
private boolean
protected boolean
private final javajs.util.M4
private final javajs.util.M4
private final javajs.util.M3
private final javajs.util.M3
private boolean
int
model countint[]
String[]
protected int[]
String[]
protected String
boolean
private final javajs.util.P3
private final javajs.util.P3
private final javajs.util.P3
private javajs.util.BS
(package private) boolean
protected boolean
protected boolean
protected boolean
javajs.util.Lst<StateScript>
private int
javajs.util.P3[]
protected javajs.util.Lst<javajs.util.V3[]>
private javajs.util.Quat[]
private final javajs.util.V3
Fields inherited from class org.jmol.modelset.BondCollection
bo, BOND_GROWTH_INCREMENT, bondCount, bsAromatic, defaultCovalentMad, freeBonds, haveAtropicBonds, haveHiddenBonds, MAX_BONDS_LENGTH_TO_CACHE, MAX_NUM_TO_CACHE, moleculeCount, molecules, numCached
Fields inherited from class org.jmol.modelset.AtomCollection
aaRet, ac, at, atomNames, atomResnos, atomSeqIDs, atomSerials, atomTensorList, atomTensors, atomTypes, bfactor100s, bioModelset, bondingRadii, bsClickable, bsModulated, bsPartialCharges, bspf, bsVisible, CALC_H_ALLOW_H, CALC_H_DOALL, CALC_H_HAVEH, CALC_H_IGNORE_H, CALC_H_JUSTC, CALC_H_QUICK, canSkipLoad, dssrData, g3d, haveChirality, haveStraightness, hydrophobicities, maxBondingRadius, occupancies, partialCharges, pointGroup, preserveState, surfaceDistance100s, TAINT_ATOMNAME, TAINT_ATOMNO, TAINT_ATOMTYPE, TAINT_BONDINGRADIUS, TAINT_CHAIN, TAINT_COORD, TAINT_ELEMENT, TAINT_FORMALCHARGE, TAINT_HYDROPHOBICITY, TAINT_MAX, TAINT_OCCUPANCY, TAINT_PARTIALCHARGE, TAINT_RESNO, TAINT_SEQID, TAINT_SITE, TAINT_TEMPERATURE, TAINT_VALENCE, TAINT_VANDERWAALS, TAINT_VIBRATION, tainted, trajectory, userSettableValues, vibrations, vwr
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAtom
(int modelIndex, Group group, int atomicAndIsotopeNumber, String atomName, String atomType, int atomSerial, int atomSeqID, int atomSite, javajs.util.P3 xyz, float radius, javajs.util.V3 vib, int formalCharge, float partialCharge, float occupancy, float bfactor, javajs.util.Lst<Object> tensors, boolean isHetero, byte specialAtomID, javajs.util.BS atomSymmetry, float bondRadius) javajs.util.BS
addHydrogens
(javajs.util.Lst<Atom> vConnections, javajs.util.P3[] pts) these are hydrogens that are being added due to a load 2D command and are therefore not to be flagged as NEWaddStateScript
(String script1, javajs.util.BS bsBonds, javajs.util.BS bsAtoms1, javajs.util.BS bsAtoms2, String script2, boolean addFrameNumber, boolean postDefinitions) void
adjustAtomArrays
(int[] map, int i0, int ac) private int
autoBond_Pre_11_9_24
(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsExclude, javajs.util.BS bsBonds, short mad) int
autoBondBs4
(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsExclude, javajs.util.BS bsBonds, short mad, boolean preJmol11_9_24, javajs.util.SB state) private boolean
autoBondCheck
(Atom atomA, Atom atomB, int order, short mad, javajs.util.BS bsBonds) int
autoHbond
(javajs.util.BS bsA, javajs.util.BS bsB, boolean onlyIfHaveCalculated) a generalized formation of HBONDS, carried out in relation to calculate HBONDS {atomsFrom} {atomsTo}.int
calcAtomsMinMax
(javajs.util.BS bs, BoxInfo boxInfo) void
calcBoundBoxDimensions
(javajs.util.BS bs, float scale) void
calcRasmolHydrogenBonds
(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, boolean nucleicOnly, int nMax, boolean dsspIgnoreHydrogens, javajs.util.BS bsHBonds) These are not actual hydrogen bonds.float
calcRotationRadius
(int modelIndex, javajs.util.P3 center, boolean useBoundBox) float
calcRotationRadiusBs
(javajs.util.BS bs) void
void
void
calculateChiralityForAtoms
(javajs.util.BS bsAtoms, boolean withReturn) void
calculateDssrProperty
(String dataType) javajs.util.V3
calculateMolecularDipole
(int modelIndex, javajs.util.BS bsAtoms) calculatePointGroup
(javajs.util.BS bsAtoms) private Object
calculatePointGroupForFirstModel
(javajs.util.BS bsAtoms, boolean doAll, boolean asInfo, String type, int index, float scale, javajs.util.T3[] pts, javajs.util.P3 center, String id) protected void
calculatePolymers
(Group[] groups, int groupCount, int baseGroupIndex, javajs.util.BS modelsExcluded) void
calculateStructures
(javajs.util.BS bsAtoms, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, int version) calculateStructuresAllExcept
(javajs.util.BS alreadyDefined, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, boolean includeAlpha, int version) allows rebuilding of PDB structures; also accessed by ModelManager from Evalint
calculateStruts
(javajs.util.BS bs1, javajs.util.BS bs2) see comments in org.jmol.modelsetbio.AlphaPolymer.java Struts are calculated for atoms in bs1 connecting to atoms in bs2.private void
private static javajs.util.P3
checkMinAttachedAngle
(Atom atom1, float minAngle, javajs.util.V3 v1, javajs.util.V3 v2, boolean haveHAtoms) void
protected void
clearDataFrameReference
(int modelIndex) void
clearDB
(int atomIndex) void
connect
(float[][] connections) void
createModels
(int n) void
void
deleteAtoms
(javajs.util.BS bs) void
deleteBonds
(javajs.util.BS bsBonds, boolean isFullModel) private void
deleteModel
(int modelIndex, javajs.util.BS bsModelAtoms, javajs.util.BS bsBonds) void
deleteModelBonds
(int modelIndex) javajs.util.BS
deleteModels
(javajs.util.BS bsModels) void
fillAtomData
(AtomData atomData, int mode) javajs.util.BS
int
findNearestAtomIndex
(int x, int y, javajs.util.BS bsNot, int min) (package private) void
int
getAltLocCountInModel
(int modelIndex) int
getAltLocIndexInModel
(int modelIndex, char alternateLocationID) getAltLocListInModel
(int modelIndex) protected javajs.util.BS
getAtomBitsMaybeDeleted
(int tokType, Object specInfo) int
getAtomCIPChiralityCode
(Atom atom) Determine the Cahn-Ingold-Prelog R/S chirality of an atomint
getAtomCountInModel
(int modelIndex) javajs.util.Quat[]
getAtomGroupQuaternions
(javajs.util.BS bsAtoms, int nMax, char qtype) float
getAtomicDSSRData
(int i) javajs.util.BS
general lookup for integer type -- from Evaljavajs.util.P3
getAtomSetCenter
(javajs.util.BS bs) javajs.util.BS
getAtomsWithin
(float distance, javajs.util.T3 coord, javajs.util.BS bsResult, int modelIndex) javajs.util.BS
getAtomsWithinRadius
(float distance, javajs.util.BS bs, boolean withinAllModels, RadiusData rd, javajs.util.BS bsSubset) Get atoms within a specific distance of any atom in a specific set of atoms either within all models or within just the model(s) of those atomsgetAuxiliaryInfo
(javajs.util.BS bsModels) Retrieve the main modelset info Hashtable (or a new non-null Hashtable) with an up-to-date "models" key.javajs.util.P3
getBasisAtom
(int iatom) Point3fi[]
int
getBioPolymerCountInModel
(int modelIndex) javajs.util.BS
int
getBondCountInModel
(int modelIndex) for general usejavajs.util.P3
getBoundBoxCenter
(int modelIndex) getBoundBoxCommand
(boolean withOptions) javajs.util.V3
getBoundBoxOrientation
(int type, javajs.util.BS bsAtoms) getBoxInfo
(javajs.util.BS bs, float scale) javajs.util.BS[]
getBsBranches
(float[] dihedralList) float[]
getCellWeights
(javajs.util.BS bsAtoms) javajs.util.P3[][]
getCenterAndPoints
(javajs.util.Lst<Object[]> vAtomSets, boolean addCenters) int
getChainCountInModelWater
(int modelIndex, boolean countWater) javajs.util.BS
getConformation
(int modelIndex, int conformationIndex, boolean doSet, javajs.util.BS bsSelected) private BoxInfo
The default bounding box is created when the LOAD ....getDefaultStructure
(javajs.util.BS bsAtoms, javajs.util.BS bsModified) getDefaultVdwType
(int modelIndex) int[][]
getDihedralMap
(int[] alist) boolean
javajs.util.BS
getElementsPresentBitSet
(int modelIndex) getFileData
(int modelIndex) getFileHeader
(int modelIndex) long
getFrameDelayMs
(int i) javajs.util.P3[]
getFrameOffsets
(javajs.util.BS bsAtoms, boolean isFull) getFrameTitle
(int modelIndex) int
getGroupCountInModel
(int modelIndex) Group[]
In versions earlier than 12.1.51, groups[] was a field of ModelCollection.javajs.util.BS
getGroupsWithin
(int nResidues, javajs.util.BS bs) getHeteroList
(int modelIndex) protected boolean
protected int
getInlineData
(int modelIndex) int
getInsertionCodeIndexInModel
(int modelIndex, char insertionCode) int
getInsertionCountInModel
(int modelIndex) private String
getInsertionListInModel
(int modelIndex) javajs.util.BS
getIterativeModels
(boolean allowJmolData) only some models can be iterated through.int
getJmolDataFrameIndex
(int modelIndex, String type) int
getJmolDataSourceFrame
(int modelIndex) getJmolFrameType
(int modelIndex) int
getLastVibrationVector
(int modelIndex, int tok) javajs.util.BS
getModelAtomBitSetIncludingDeleted
(int modelIndex, boolean asCopy) Note that this method returns all atoms, included deleted ones.javajs.util.BS
getModelAtomBitSetIncludingDeletedBs
(javajs.util.BS bsModels) note -- this method returns ALL atoms, including deleted.getModelAuxiliaryInfo
(int modelIndex) javajs.util.BS
getModelBS
(javajs.util.BS atomList, boolean allTrajectories) Get the set of models associated with a set of atoms.int[]
getModelCellRange
(int modelIndex) getModelDataBaseName
(javajs.util.BS bsAtoms) javajs.util.V3
getModelDipole
(int modelIndex) getModelFileName
(int modelIndex) getModelFileType
(int modelIndex) int
javajs.util.BS
getModelKitStateBitset
(javajs.util.BS bs, javajs.util.BS bsDeleted) getModelName
(int modelIndex) int
getModelNumber
(int modelIndex) getModelNumberDotted
(int modelIndex) getModelNumberForAtomLabel
(int modelIndex) int
getModelNumberIndex
(int modelNumber, boolean useModelNumber, boolean doSetTrajectory) getModelOrientation
(int modelIndex) getModelProperty
(int modelIndex, String property) int
getModelSymmetryCount
(int modelIndex) getModelTitle
(int modelIndex) javajs.util.Lst<Object>
getModulationList
(javajs.util.BS bs, char type, javajs.util.P3 t456) javajs.util.BS
getMoleculeBitSet
(javajs.util.BS bs) return cumulative sum of all atoms in molecules containing these atomsjavajs.util.BS
getMoleculeBitSetForAtom
(int atomIndex) int
getMoleculeCountInModel
(int modelIndex) int
getMoleculeIndex
(int atomIndex, boolean inModel) boolean
getMSInfoB
(String keyName) private javajs.util.BS
getNotInCentroid
(javajs.util.BS bs, int[] minmax) getPDBHeader
(int modelIndex) getPointGroupAsString
(javajs.util.BS bsAtoms, String type, int index, float scale, javajs.util.P3[] pts, javajs.util.P3 center, String id) getPointGroupInfo
(javajs.util.BS bsAtoms) void
getPointTransf
(int i, Atom a, javajs.util.Quat q, javajs.util.P3 pTemp) pick up the appropriate value for this atomvoid
getPolymerPointsAndVectors
(javajs.util.BS bs, javajs.util.Lst<javajs.util.P3[]> vList, boolean isTraceAlpha, float sheetSmoothing) getProteinStructureState
(javajs.util.BS bsAtoms, int mode) private javajs.util.BS
getSelectCodeRange
(int[] info) getSelectedAtomIterator
(javajs.util.BS bsSelected, boolean isGreaterOnly, boolean modelZeroBased, boolean hemisphereOnly, boolean isMultiModel) javajs.util.BS
getSequenceBits
(String specInfo, javajs.util.BS bsAtoms, javajs.util.BS bsResult) javajs.util.M4[]
getSymMatrices
(int modelIndex) javajs.util.BS
getSymmetryEquivAtoms
(javajs.util.BS bs) int[]
getSymmetryInvariant
(int iatom) javajs.util.P3
getTranslation
(int iModel) getUnitCell
(int modelIndex) getUnitCellForAtom
(int index) float[]
deprecated due to multimodel issues, but required by an interface -- do NOT remove.getUnitCellPointsWithin
(float distance, javajs.util.BS bs, javajs.util.P3 pt, boolean asMap) protected void
growAtomArrays
(int newLength) boolean
private void
includeAllRelatedFrames
(javajs.util.BS bsModels) protected void
protected void
initializeBspt
(int modelIndex) void
invertSelected
(javajs.util.P3 pt, javajs.util.P4 plane, int iAtom, javajs.util.BS bsAtoms) Carries out a stereochemical inversion through a point, across a plane, or at a chirality center.boolean
isAtomPDB
(int i) boolean
isBondable
(float bondingRadiusA, float bondingRadiusB, float distance2, float minBondDistance2, float bondTolerance) private boolean
isJmolDataFrameForAtom
(Atom atom) boolean
isJmolDataFrameForModel
(int modelIndex) boolean
isTrajectory
(int modelIndex) could be the base model or one of the subframesboolean
isTrajectoryMeasurement
(int[] countPlusIndices) boolean
isTrajectorySubFrame
(int i) int[]
makeConnections
(float minDistance, float maxDistance, int order, int connectOperation, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsBonds, boolean isBonds, boolean addGroup, float energy) int[]
makeConnections2
(float minD, float maxD, int order, int connectOperation, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsBonds, boolean isBonds, boolean addGroup, float energy, javajs.util.SB state) protected void
mergeModelArrays
(ModelSet mergeModelSet) initial transfer of model data from old to new model set.static int
modelFileNumberFromFloat
(float fDotM) void
morphTrajectories
(int m1, int m2, float f) void
moveAtoms
(javajs.util.M4 m4, javajs.util.M3 mNew, javajs.util.M3 rotation, javajs.util.V3 translation, javajs.util.BS bs, javajs.util.P3 center, boolean isInternal, boolean translationOnly) void
recalculateLeadMidpointsAndWingVectors
(int modelIndex) void
recalculatePolymers
(javajs.util.BS bsModelsExcluded) void
recalculatePositionDependentQuantities
(javajs.util.BS bs, javajs.util.M4 mat) protected void
private void
void
void
saveModelOrientation
(int modelIndex, Orientation orientation) private static int
selectSeqcodeRange
(Group[] groups, int n, int index, int seqcodeA, int seqcodeB, javajs.util.BS bs) protected void
setAPm
(javajs.util.BS bs, int tok, int iValue, float fValue, String sValue, float[] values, String[] list) void
setAtomCoords
(javajs.util.BS bs, int tokType, Object xyzValues) void
setAtomCoordsRelative
(javajs.util.T3 offset, javajs.util.BS bs) void
setAtomNamesAndNumbers
(int iFirst, int baseAtomIndex, AtomCollection mergeSet, boolean isModelKit) void
setAtomProperty
(javajs.util.BS bs, int tok, int iValue, float fValue, String sValue, float[] values, String[] list) void
setBoundBox
(javajs.util.T3 pt1, javajs.util.T3 pt2, boolean byCorner, float scale) void
setCentroid
(javajs.util.BS bs, int[] minmax) deletes molecules based on: CENTROID -- molecular centroid is not in unit cell CENTROID PACKED -- all molecule atoms are not in unit celljavajs.util.BS
setConformation
(javajs.util.BS bsAtoms) boolean
void
setDihedrals
(float[] dihedralList, javajs.util.BS[] bsBranches, float f) void
setEchoStateActive
(boolean TF) void
setFrameDelayMs
(long millis, javajs.util.BS bsModels) void
setFrameTitle
(javajs.util.BS bsFrames, Object title) void
void
setIteratorForAtom
(AtomIndexIterator iterator, int modelIndex, int atomIndex, float distance, RadiusData rd) void
setIteratorForPoint
(AtomIndexIterator iterator, int modelIndex, javajs.util.T3 pt, float distance) void
setJmolDataFrame
(String type, int modelIndex, int modelDataIndex) void
setModelCage
(int modelIndex, SymmetryInterface simpleCage) void
setModulation
(javajs.util.BS bs, boolean isOn, javajs.util.P3 qtOffset, boolean isQ) Sets the modulation for all atoms in bs.void
setPdbConectBonding
(int baseAtomIndex, int baseModelIndex, javajs.util.BS bsExclude) void
setProteinType
(javajs.util.BS bs, STR type) boolean
setRotationRadius
(int modelIndex, float angstroms) void
setSpaceGroup
(int mi, SymmetryInterface sg, javajs.util.BS basis) void
void
setStructureList
(Map<STR, float[]> structureList) void
setTrajectory
(int modelIndex) void
setTrajectoryBs
(javajs.util.BS bsModels) static void
setUnitCellOffset
(SymmetryInterface unitCell, javajs.util.T3 pt, int ijk) void
translateModel
(int iModel, javajs.util.T3 pt) move atoms by vector pt; used for co-centering with FRAME ALIGN {atoms} TRUEvoid
updateBasisFromSite
(int imodel) Methods inherited from class org.jmol.modelset.BondCollection
addHBond, allowAromaticBond, assignAromaticBondsBs, bondAtoms, bondMutually, dBb, deleteAllBonds2, deleteConnections, displayBonds, fixD, getAtomBitsMDb, getAtomsConnected, getBondColix1, getBondColix2, getBondIterator, getBondIteratorForType, getBondsForSelectedAtoms, getDefaultMadFromOrder, getOrAddBond, isInRange, releaseModelSetBC, removeUnnecessaryBonds, resetAromatic, setBond, setupBC
Methods inherited from class org.jmol.modelset.AtomCollection
addTensor, calculateHydrogens, calculateSurface, calculateVolume, chainToUpper, clearBfactorRange, clearVisibleSets, deleteModelAtoms, fillADa, findMaxRadii, findNearest2, fixFormalCharges, generateCrystalClass, getAllAtomTensors, getAtom, getAtomBitsMDa, getAtomicCharges, getAtomIdentityInfo, getAtomIndices, getAtomInfo, getAtomPointVector, getAtomsFromAtomNumberInFrame, getAtomsInFrame, getAtomsNearPlane, getAtomTensor, getAtomTensorList, getAtomTypes, getBfactor100Hi, getBfactor100Lo, getBFactors, getBondingRadii, getChainBits, getClickableSet, getElementName, getFirstAtomIndexFromAtomNumber, getHybridizationAndAxes, getHydrophobicity, getLabeler, getMaxVanderwaalsRadius, getMissingHydrogenCount, getModulation, getOccupancyFloat, getPartialCharges, getQuaternion, getRadiusVdwJmol, getSeqcodeBits, getSpecNameOrNull, getSurfaceDistance100, getSurfaceDistanceMax, getTaintedAtoms, getUserSettableType, getVibCoord, getVibration, getVisibleSet, isAtomHidden, isCursorOnTopOf, isDeleted, isModulated, mergeAtomArrays, modelSetHasVibrationVectors, releaseModelSetAC, scaleVectorsToMax, setAPa, setAtomCoord, setAtomCoord2, setAtomCoordRelative, setAtomData, setAtomName, setAtomNumber, setAtomsCoordRelative, setAtomTensors, setBFactor, setBondingRadius, setBsHidden, setCapacity, setElement, setFormalCharges, setOccupancy, setPartialCharge, setPreserveState, setSite, setTaintedAtoms, setupAC, setVibrationVector, taintAtom, taintAtoms, unTaintAtoms, validateBspf, validateBspfForModel
-
Field Details
-
haveBioModels
public boolean haveBioModels -
bsSymmetry
protected javajs.util.BS bsSymmetry -
modelSetName
-
am
-
mc
public int mcmodel count -
unitCells
-
haveUnitCells
public boolean haveUnitCells -
closest
-
modelNumbers
protected int[] modelNumbers -
modelFileNumbers
public int[] modelFileNumbers -
modelNumbersForAtomLabel
-
modelNames
-
frameTitles
-
elementsPresent
protected javajs.util.BS[] elementsPresent -
isXYZ
protected boolean isXYZ -
modelSetProperties
-
msInfo
-
someModelsHaveSymmetry
protected boolean someModelsHaveSymmetry -
someModelsHaveAromaticBonds
protected boolean someModelsHaveAromaticBonds -
someModelsHaveFractionalCoordinates
protected boolean someModelsHaveFractionalCoordinates -
isBbcageDefault
private boolean isBbcageDefault -
bboxModels
public javajs.util.BS bboxModels -
bboxAtoms
private javajs.util.BS bboxAtoms -
boxInfo
-
stateScripts
-
thisStateModel
private int thisStateModel -
vibrationSteps
protected javajs.util.Lst<javajs.util.V3[]> vibrationSteps -
selectedMolecules
private javajs.util.BS selectedMolecules -
showRebondTimes
boolean showRebondTimes -
bsAll
protected javajs.util.BS bsAll -
sm
-
hbondMinRasmol
private static float hbondMinRasmol -
proteinStructureTainted
public boolean proteinStructureTainted -
htPeaks
-
vOrientations
private javajs.util.Quat[] vOrientations -
ptTemp
private final javajs.util.P3 ptTemp -
ptTemp1
private final javajs.util.P3 ptTemp1 -
ptTemp2
private final javajs.util.P3 ptTemp2 -
matTemp
private final javajs.util.M3 matTemp -
matInv
private final javajs.util.M3 matInv -
mat4
private final javajs.util.M4 mat4 -
mat4t
private final javajs.util.M4 mat4t -
vTemp
private final javajs.util.V3 vTemp -
echoShapeActive
private boolean echoShapeActive -
modelSetTypeName
-
translations
public javajs.util.P3[] translations -
defaultBBox
-
maxBondWarned
private boolean maxBondWarned
-
-
Constructor Details
-
ModelSet
- Parameters:
vwr
-name
-
-
-
Method Details
-
getBoxInfo
-
releaseModelSet
protected void releaseModelSet() -
getEchoStateActive
public boolean getEchoStateActive() -
setEchoStateActive
public void setEchoStateActive(boolean TF) -
getModelSetTypeName
-
getModelNumberIndex
public int getModelNumberIndex(int modelNumber, boolean useModelNumber, boolean doSetTrajectory) - Parameters:
modelNumber
- can be a PDB MODEL number or a simple index number, or a fffnnnnnn f.n numberuseModelNumber
-doSetTrajectory
-- Returns:
- index
-
getModelDataBaseName
-
setTrajectory
public void setTrajectory(int modelIndex) -
getBitSetTrajectories
public javajs.util.BS getBitSetTrajectories() -
setTrajectoryBs
public void setTrajectoryBs(javajs.util.BS bsModels) -
morphTrajectories
public void morphTrajectories(int m1, int m2, float f) -
getTranslation
public javajs.util.P3 getTranslation(int iModel) -
translateModel
public void translateModel(int iModel, javajs.util.T3 pt) move atoms by vector pt; used for co-centering with FRAME ALIGN {atoms} TRUE- Parameters:
iModel
-pt
-
-
getFrameOffsets
public javajs.util.P3[] getFrameOffsets(javajs.util.BS bsAtoms, boolean isFull) -
getAtoms
general lookup for integer type -- from Eval- Parameters:
tokType
-specInfo
-- Returns:
- bitset; null only if we mess up with name
-
findNearestAtomIndex
public int findNearestAtomIndex(int x, int y, javajs.util.BS bsNot, int min) -
calculatePointGroup
-
getPointGroupInfo
-
getPointGroupAsString
-
calculatePointGroupForFirstModel
-
getDefaultStructure
-
deleteModelBonds
public void deleteModelBonds(int modelIndex) -
makeConnections
public int[] makeConnections(float minDistance, float maxDistance, int order, int connectOperation, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsBonds, boolean isBonds, boolean addGroup, float energy) -
setPdbConectBonding
public void setPdbConectBonding(int baseAtomIndex, int baseModelIndex, javajs.util.BS bsExclude) -
deleteAllBonds
public void deleteAllBonds() -
includeAllRelatedFrames
private void includeAllRelatedFrames(javajs.util.BS bsModels) -
deleteModels
public javajs.util.BS deleteModels(javajs.util.BS bsModels) -
resetMolecules
public void resetMolecules() -
resetChirality
private void resetChirality() -
deleteModel
private void deleteModel(int modelIndex, javajs.util.BS bsModelAtoms, javajs.util.BS bsBonds) -
setAtomProperty
-
getFileData
-
addHydrogens
these are hydrogens that are being added due to a load 2D command and are therefore not to be flagged as NEW- Parameters:
vConnections
-pts
-- Returns:
- BitSet of new atoms
-
mergeModelArrays
initial transfer of model data from old to new model set. Note that all new models are added later, AFTER thfe old ones. This is very important, because all of the old atom numbers must map onto the same numbers in the new model set, or the state script will not run properly, among other problems.- Parameters:
mergeModelSet
-
-
getUnitCell
-
setSpaceGroup
-
setModelCage
-
getModelName
-
getModelTitle
-
getModelFileName
-
getModelFileType
-
setFrameTitle
-
getFrameTitle
-
getModelNumberForAtomLabel
-
getGroups
In versions earlier than 12.1.51, groups[] was a field of ModelCollection. But this is not necessary, and it was wasting space. This method is only called when polymers are recreated.- Returns:
- full array of groups in modelSet
-
getUnitCellParams
public float[] getUnitCellParams()deprecated due to multimodel issues, but required by an interface -- do NOT remove.- Returns:
- just the first unit cell
-
setCrystallographicDefaults
public boolean setCrystallographicDefaults() -
getBoundBoxCenter
public javajs.util.P3 getBoundBoxCenter(int modelIndex) -
getBoundBoxCornerVector
public javajs.util.V3 getBoundBoxCornerVector() -
getBBoxVertices
-
setBoundBox
public void setBoundBox(javajs.util.T3 pt1, javajs.util.T3 pt2, boolean byCorner, float scale) -
getBoundBoxCommand
-
findAtomsInRectangle
-
getDefaultVdwType
-
setRotationRadius
public boolean setRotationRadius(int modelIndex, float angstroms) -
calcRotationRadius
public float calcRotationRadius(int modelIndex, javajs.util.P3 center, boolean useBoundBox) -
calcBoundBoxDimensions
public void calcBoundBoxDimensions(javajs.util.BS bs, float scale) -
getDefaultBoundBox
The default bounding box is created when the LOAD .... FILL BOUNDBOX or FILL UNITCELL is use.- Returns:
- default bounding box, possibly null
-
getBoxInfo
-
calcAtomsMinMax
-
calcUnitCellMinMax
private void calcUnitCellMinMax() -
calcRotationRadiusBs
public float calcRotationRadiusBs(javajs.util.BS bs) -
getCenterAndPoints
public javajs.util.P3[][] getCenterAndPoints(javajs.util.Lst<Object[]> vAtomSets, boolean addCenters) - Parameters:
vAtomSets
-addCenters
-- Returns:
- array of two lists of points, centers first if desired
-
getAtomSetCenter
public javajs.util.P3 getAtomSetCenter(javajs.util.BS bs) -
getAverageAtomPoint
public javajs.util.P3 getAverageAtomPoint() -
setAPm
-
addStateScript
public StateScript addStateScript(String script1, javajs.util.BS bsBonds, javajs.util.BS bsAtoms1, javajs.util.BS bsAtoms2, String script2, boolean addFrameNumber, boolean postDefinitions) -
freezeModels
void freezeModels() -
getStructureList
-
getInfoM
-
getMSInfoB
-
isTrajectory
public boolean isTrajectory(int modelIndex) could be the base model or one of the subframes- Parameters:
modelIndex
-- Returns:
- is any part of a trajectory
-
isTrajectorySubFrame
public boolean isTrajectorySubFrame(int i) -
isTrajectoryMeasurement
public boolean isTrajectoryMeasurement(int[] countPlusIndices) -
getModelBS
public javajs.util.BS getModelBS(javajs.util.BS atomList, boolean allTrajectories) Get the set of models associated with a set of atoms. This must allow for appended models.- Parameters:
atomList
-allTrajectories
-- Returns:
- bit set of models
-
getIterativeModels
public javajs.util.BS getIterativeModels(boolean allowJmolData) only some models can be iterated through. models for which trajectoryBaseIndexes[i] != i are trajectories only- Parameters:
allowJmolData
-- Returns:
- bitset of models
-
fillAtomData
-
getModelNumberDotted
-
getModelNumber
public int getModelNumber(int modelIndex) -
getModelProperty
-
getModelAuxiliaryInfo
-
setInfo
-
getInfo
-
getInfoB
-
getInfoI
-
getInsertionCountInModel
public int getInsertionCountInModel(int modelIndex) -
modelFileNumberFromFloat
public static int modelFileNumberFromFloat(float fDotM) -
getChainCountInModelWater
public int getChainCountInModelWater(int modelIndex, boolean countWater) -
getGroupCountInModel
public int getGroupCountInModel(int modelIndex) -
calcSelectedGroupsCount
public void calcSelectedGroupsCount() -
isJmolDataFrameForModel
public boolean isJmolDataFrameForModel(int modelIndex) -
isJmolDataFrameForAtom
-
setJmolDataFrame
-
getJmolDataFrameIndex
-
clearDataFrameReference
protected void clearDataFrameReference(int modelIndex) -
getJmolFrameType
-
getJmolDataSourceFrame
public int getJmolDataSourceFrame(int modelIndex) -
saveModelOrientation
-
getModelOrientation
-
getPDBHeader
-
getFileHeader
-
getAltLocCountInModel
public int getAltLocCountInModel(int modelIndex) -
getAltLocIndexInModel
public int getAltLocIndexInModel(int modelIndex, char alternateLocationID) -
getInsertionCodeIndexInModel
public int getInsertionCodeIndexInModel(int modelIndex, char insertionCode) -
getAltLocListInModel
-
getInsertionListInModel
-
getModelSymmetryCount
public int getModelSymmetryCount(int modelIndex) -
getModelCellRange
public int[] getModelCellRange(int modelIndex) -
getLastVibrationVector
public int getLastVibrationVector(int modelIndex, int tok) -
getModulationList
-
getElementsPresentBitSet
public javajs.util.BS getElementsPresentBitSet(int modelIndex) -
getMoleculeIndex
public int getMoleculeIndex(int atomIndex, boolean inModel) -
getMoleculeBitSet
public javajs.util.BS getMoleculeBitSet(javajs.util.BS bs) return cumulative sum of all atoms in molecules containing these atoms- Parameters:
bs
-- Returns:
- bitset of atoms
-
getMoleculeBitSetForAtom
public javajs.util.BS getMoleculeBitSetForAtom(int atomIndex) -
getModelDipole
public javajs.util.V3 getModelDipole(int modelIndex) -
calculateMolecularDipole
public javajs.util.V3 calculateMolecularDipole(int modelIndex, javajs.util.BS bsAtoms) throws JmolAsyncException - Throws:
JmolAsyncException
-
getMoleculeCountInModel
public int getMoleculeCountInModel(int modelIndex) -
calcSelectedMoleculesCount
public void calcSelectedMoleculesCount() -
setCentroid
public void setCentroid(javajs.util.BS bs, int[] minmax) deletes molecules based on: CENTROID -- molecular centroid is not in unit cell CENTROID PACKED -- all molecule atoms are not in unit cell- Parameters:
bs
-minmax
- fractional [xmin, ymin, zmin, xmax, ymax, zmax, 1=packed]
-
getNotInCentroid
private javajs.util.BS getNotInCentroid(javajs.util.BS bs, int[] minmax) -
getMolecules
-
initializeBspf
protected void initializeBspf() -
initializeBspt
protected void initializeBspt(int modelIndex) -
setIteratorForPoint
public void setIteratorForPoint(AtomIndexIterator iterator, int modelIndex, javajs.util.T3 pt, float distance) -
setIteratorForAtom
public void setIteratorForAtom(AtomIndexIterator iterator, int modelIndex, int atomIndex, float distance, RadiusData rd) -
getSelectedAtomIterator
public AtomIndexIterator getSelectedAtomIterator(javajs.util.BS bsSelected, boolean isGreaterOnly, boolean modelZeroBased, boolean hemisphereOnly, boolean isMultiModel) - Parameters:
bsSelected
-isGreaterOnly
-modelZeroBased
-hemisphereOnly
-isMultiModel
-- Returns:
- an iterator
-
getBondCountInModel
public int getBondCountInModel(int modelIndex) Description copied from class:BondCollection
for general use- Overrides:
getBondCountInModel
in classBondCollection
- Parameters:
modelIndex
- the model of interest or -1 for all- Returns:
- the actual number of connections
-
getAtomCountInModel
public int getAtomCountInModel(int modelIndex) -
getModelAtomBitSetIncludingDeletedBs
public javajs.util.BS getModelAtomBitSetIncludingDeletedBs(javajs.util.BS bsModels) note -- this method returns ALL atoms, including deleted.- Parameters:
bsModels
-- Returns:
- bitset of atoms
-
getModelAtomBitSetIncludingDeleted
public javajs.util.BS getModelAtomBitSetIncludingDeleted(int modelIndex, boolean asCopy) Note that this method returns all atoms, included deleted ones. If you don't want deleted atoms, then use vwr.getModelAtomBitSetUndeleted(modelIndex, TRUE)- Parameters:
modelIndex
-asCopy
- MUST BE TRUE IF THE BITSET IS GOING TO BE MODIFIED!- Returns:
- either the actual bitset or a copy
-
getAtomBitsMaybeDeleted
-
getSelectCodeRange
private javajs.util.BS getSelectCodeRange(int[] info) -
selectSeqcodeRange
private static int selectSeqcodeRange(Group[] groups, int n, int index, int seqcodeA, int seqcodeB, javajs.util.BS bs) -
getAtomsWithinRadius
public javajs.util.BS getAtomsWithinRadius(float distance, javajs.util.BS bs, boolean withinAllModels, RadiusData rd, javajs.util.BS bsSubset) Get atoms within a specific distance of any atom in a specific set of atoms either within all models or within just the model(s) of those atoms- Parameters:
distance
-bs
-withinAllModels
-rd
-bsSubset
- limit selection to this subset of atoms- Returns:
- the set of atoms
-
getAtomsWithin
public javajs.util.BS getAtomsWithin(float distance, javajs.util.T3 coord, javajs.util.BS bsResult, int modelIndex) -
deleteBonds
public void deleteBonds(javajs.util.BS bsBonds, boolean isFullModel) -
makeConnections2
public int[] makeConnections2(float minD, float maxD, int order, int connectOperation, javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsBonds, boolean isBonds, boolean addGroup, float energy, javajs.util.SB state) -
autoBondBs4
public int autoBondBs4(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsExclude, javajs.util.BS bsBonds, short mad, boolean preJmol11_9_24, javajs.util.SB state) -
isBondable
public boolean isBondable(float bondingRadiusA, float bondingRadiusB, float distance2, float minBondDistance2, float bondTolerance) -
autoBondCheck
-
autoBond_Pre_11_9_24
private int autoBond_Pre_11_9_24(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.BS bsExclude, javajs.util.BS bsBonds, short mad) -
autoHbond
public int autoHbond(javajs.util.BS bsA, javajs.util.BS bsB, boolean onlyIfHaveCalculated) a generalized formation of HBONDS, carried out in relation to calculate HBONDS {atomsFrom} {atomsTo}. The calculation can create pseudo-H bonds for files that do not contain H atoms.- Parameters:
bsA
- "from" set (must contain H if that is desired)bsB
- "to" setonlyIfHaveCalculated
-- Returns:
- negative number of pseudo-hbonds or number of actual hbonds formed
-
checkMinAttachedAngle
private static javajs.util.P3 checkMinAttachedAngle(Atom atom1, float minAngle, javajs.util.V3 v1, javajs.util.V3 v2, boolean haveHAtoms) -
setStructureIndexes
public void setStructureIndexes() -
getModelInfoAsString
-
getSymmetryInfoAsString
-
createModels
public void createModels(int n) -
deleteAtoms
public void deleteAtoms(javajs.util.BS bs) -
clearDB
public void clearDB(int atomIndex) -
adjustAtomArrays
public void adjustAtomArrays(int[] map, int i0, int ac) -
growAtomArrays
protected void growAtomArrays(int newLength) -
addAtom
public Atom addAtom(int modelIndex, Group group, int atomicAndIsotopeNumber, String atomName, String atomType, int atomSerial, int atomSeqID, int atomSite, javajs.util.P3 xyz, float radius, javajs.util.V3 vib, int formalCharge, float partialCharge, float occupancy, float bfactor, javajs.util.Lst<Object> tensors, boolean isHetero, byte specialAtomID, javajs.util.BS atomSymmetry, float bondRadius) -
getInlineData
-
isAtomPDB
public boolean isAtomPDB(int i) -
haveModelKit
public boolean haveModelKit() -
getModelKitStateBitset
public javajs.util.BS getModelKitStateBitset(javajs.util.BS bs, javajs.util.BS bsDeleted) -
setAtomNamesAndNumbers
public void setAtomNamesAndNumbers(int iFirst, int baseAtomIndex, AtomCollection mergeSet, boolean isModelKit) - Parameters:
iFirst
- 0 from ModelLoader.freeze; -1 from Viewer.assignAtombaseAtomIndex
-mergeSet
-isModelKit
-
-
setUnitCellOffset
-
connect
public void connect(float[][] connections) -
setFrameDelayMs
public void setFrameDelayMs(long millis, javajs.util.BS bsModels) -
getFrameDelayMs
public long getFrameDelayMs(int i) -
getModelIndexFromId
-
getAuxiliaryInfo
Retrieve the main modelset info Hashtable (or a new non-null Hashtable) with an up-to-date "models" key.- Parameters:
bsModels
-- Returns:
- Map
-
getDihedralMap
public int[][] getDihedralMap(int[] alist) -
setModulation
public void setModulation(javajs.util.BS bs, boolean isOn, javajs.util.P3 qtOffset, boolean isQ) Sets the modulation for all atoms in bs.- Parameters:
bs
-isOn
-qtOffset
- multiples of q or just t.isQ
- true if multiples of q.
-
getBoundBoxOrientation
- Parameters:
type
- volume, best, x, y, z, unitcellbsAtoms
-- Returns:
- quaternion for best rotation or, for volume, string with volume \t{dx dy dz}
-
getUnitCellForAtom
-
clearCache
public void clearCache() -
getSymMatrices
public javajs.util.M4[] getSymMatrices(int modelIndex) -
getSymmetryInvariant
public int[] getSymmetryInvariant(int iatom) -
getBsBranches
public javajs.util.BS[] getBsBranches(float[] dihedralList) -
recalculatePositionDependentQuantities
public void recalculatePositionDependentQuantities(javajs.util.BS bs, javajs.util.M4 mat) -
moveAtoms
public void moveAtoms(javajs.util.M4 m4, javajs.util.M3 mNew, javajs.util.M3 rotation, javajs.util.V3 translation, javajs.util.BS bs, javajs.util.P3 center, boolean isInternal, boolean translationOnly) -
setDihedrals
public void setDihedrals(float[] dihedralList, javajs.util.BS[] bsBranches, float f) -
setAtomCoordsRelative
public void setAtomCoordsRelative(javajs.util.T3 offset, javajs.util.BS bs) -
setAtomCoords
-
invertSelected
public void invertSelected(javajs.util.P3 pt, javajs.util.P4 plane, int iAtom, javajs.util.BS bsAtoms) Carries out a stereochemical inversion through a point, across a plane, or at a chirality center.- Parameters:
pt
- point to invert around if not nullplane
- plane to invert across if not nulliAtom
- atom to switch two groups on if >= 0bsAtoms
- atoms to switch for the atom option
-
getCellWeights
public float[] getCellWeights(javajs.util.BS bsAtoms) -
getAtomGroupQuaternions
public javajs.util.Quat[] getAtomGroupQuaternions(javajs.util.BS bsAtoms, int nMax, char qtype) -
getConformation
public javajs.util.BS getConformation(int modelIndex, int conformationIndex, boolean doSet, javajs.util.BS bsSelected) -
getSequenceBits
public javajs.util.BS getSequenceBits(String specInfo, javajs.util.BS bsAtoms, javajs.util.BS bsResult) -
getBioPolymerCountInModel
public int getBioPolymerCountInModel(int modelIndex) -
getPolymerPointsAndVectors
public void getPolymerPointsAndVectors(javajs.util.BS bs, javajs.util.Lst<javajs.util.P3[]> vList, boolean isTraceAlpha, float sheetSmoothing) -
recalculateLeadMidpointsAndWingVectors
public void recalculateLeadMidpointsAndWingVectors(int modelIndex) -
calcRasmolHydrogenBonds
public void calcRasmolHydrogenBonds(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, boolean nucleicOnly, int nMax, boolean dsspIgnoreHydrogens, javajs.util.BS bsHBonds) These are not actual hydrogen bonds. They are N-O bonds in proteins and nucleic acids The method is called by AminoPolymer and NucleicPolymer methods, which are indirectly called by ModelCollection.autoHbond- Parameters:
bsA
-bsB
-vHBonds
- vector of bonds to fill; if null, creates the HBondsnucleicOnly
-nMax
-dsspIgnoreHydrogens
-bsHBonds
-
-
calculateStraightnessAll
public void calculateStraightnessAll() -
calculateStruts
public int calculateStruts(javajs.util.BS bs1, javajs.util.BS bs2) see comments in org.jmol.modelsetbio.AlphaPolymer.java Struts are calculated for atoms in bs1 connecting to atoms in bs2. The two bitsets may overlap.- Parameters:
bs1
-bs2
-- Returns:
- number of struts found
-
getGroupsWithin
public javajs.util.BS getGroupsWithin(int nResidues, javajs.util.BS bs) -
getProteinStructureState
-
calculateStructures
public String calculateStructures(javajs.util.BS bsAtoms, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, int version) -
calculateStructuresAllExcept
public String calculateStructuresAllExcept(javajs.util.BS alreadyDefined, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, boolean includeAlpha, int version) allows rebuilding of PDB structures; also accessed by ModelManager from Eval- Parameters:
alreadyDefined
- set to skip calculationasDSSP
-doReport
-dsspIgnoreHydrogen
-setStructure
-includeAlpha
-version
- TODO- Returns:
- report
-
recalculatePolymers
public void recalculatePolymers(javajs.util.BS bsModelsExcluded) -
calculatePolymers
protected void calculatePolymers(Group[] groups, int groupCount, int baseGroupIndex, javajs.util.BS modelsExcluded) -
calcSelectedMonomersCount
public void calcSelectedMonomersCount() -
setProteinType
-
setStructureList
-
setConformation
public javajs.util.BS setConformation(javajs.util.BS bsAtoms) -
getHeteroList
-
getUnitCellPointsWithin
public Object getUnitCellPointsWithin(float distance, javajs.util.BS bs, javajs.util.P3 pt, boolean asMap) -
calculateDssrProperty
-
getAtomicDSSRData
public float getAtomicDSSRData(int i) -
getAtomCIPChiralityCode
Determine the Cahn-Ingold-Prelog R/S chirality of an atom- Parameters:
atom
-- Returns:
- [0:none, 1:R, 2:S]
-
calculateChiralityForAtoms
-
getPointTransf
pick up the appropriate value for this atom- Parameters:
i
-a
-q
-pTemp
-
-
getSymmetryEquivAtoms
public javajs.util.BS getSymmetryEquivAtoms(javajs.util.BS bs) -
getBasisAtom
-
updateBasisFromSite
public void updateBasisFromSite(int imodel)
-