Package org.jmol.adapter.smarter
Class XtalSymmetry.FileSymmetry
java.lang.Object
org.jmol.symmetry.Symmetry
org.jmol.adapter.smarter.XtalSymmetry.FileSymmetry
- All Implemented Interfaces:
SymmetryInterface
- Enclosing class:
XtalSymmetry
A class only used by adapter.smarter.XtalSymmetry while building the
file-based model.
-
Field Summary
FieldsFields inherited from class org.jmol.symmetry.Symmetry
id, isBio, spaceGroup, spinFrameToCartXYZ, unitCell -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleanaddMagLatticeVectors(Lst<float[]> lattvecs) voidbooleancreateSpaceGroup(int desiredSpaceGroupIndex, String name, Object data, int modDim) voidgetRotTransArrayAndXYZ(String xyz, float[] rotTransMatrix) MMCifReader onlygetSpaceGroupOperationCode(int iOp) voidprotected intpostSymmetrySetMagneticMoments(AtomSetCollection asc, boolean isCartesian) At the end, we need to rescale the vectors using SpinFramePp.protected voidpreSymmetryFinalizeMoments(AtomSetCollectionReader acr, AtomSetCollection asc, String spinFrameStr, String spinFrameExt) Scale the magnetic moments of magCIF and spinCIF files.V3[]rotateAxes(int iop, V3[] axes, P3 ptTemp, M3 mTemp) voidsetPrecision(float prec) setSpinList(String configuration) voidtoFractionalM(M4 m) voidtoUnitCellRnd(T3 pt, T3 offset) voidtwelfthify(P3 pt) Methods inherited from class org.jmol.symmetry.Symmetry
addBioMoleculeOperation, addSpaceGroupOperation, adjustRangeMinMax, calculateCIPChiralityForAtoms, calculateCIPChiralityForSmiles, checkPeriodic, convertTransform, findSpaceGroup, fixUnitCell, geCIFWriterValue, generateCrystalClass, getAdditionalOperations, getAdditionalOperationsCount, getCanonicalCopy, getCartesianOffset, getCellRange, getCellWeight, getConstrainableEquivAtom, getCoordinatesAreFractional, getDimensionality, getEquivPointList, getEquivPoints, getFinalOperationCount, getFractionalOffset, getFractionalOrigin, getGroupType, getIntTableIndex, getIntTableNumber, getIntTableTransform, getInvariantSymops, getIterator, getLatticeCentering, getLatticeDesignation, getLatticeOp, getLatticeType, getMoreInfo, getOperationRsVs, getPeriodicity, getPointGroupInfo, getPointGroupName, getPrecision, getQuaternionRotation, getSiteMultiplicity, getSpaceGroup, getSpaceGroupClegId, getSpaceGroupInfo, getSpaceGroupInfoObj, getSpaceGroupJmolId, getSpaceGroupJSON, getSpaceGroupName, getSpaceGroupOperation, getSpaceGroupOperationCount, getSpaceGroupXyzOriginal, getSpinIndex, getSpinOp, getSpinSym, getState, getSubgroupJSON, getSymmetryInfoAtom, getSymmetryInfoStr, getSymmetryOperations, getSymopList, getTransform, getUnitCell, getUnitCellAsArray, getUnitCellCenter, getUnitCellDisplayName, getUnitCellInfo, getUnitCellInfoMap, getUnitCellInfoStr, getUnitCellInfoType, getUnitCellMultiplied, getUnitCellMultiplier, getUnitCellParams, getUnitCellState, getUnitCellVectors, getUnitCellVerticesNoOffset, getV0abc, getWyckoffPosition, haveUnitCell, initializeOrientation, isBio, isPolymer, isSimple, isSlab, isSupercell, isSymmetryCell, isWithinUnitCell, newSpaceGroupPoint, notInCentroid, removeDuplicates, saveOrRetrieveTransformMatrix, setFinalOperations, setLattice, setOffset, setOffsetPt, setPointGroup, setSpaceGroup, setSpaceGroupName, setSpaceGroupTo, setSpinAxisAngle, setSymmetryInfoFromFile, setUnitCell, setUnitCellFromParams, setViewer, staticCleanTransform, staticConvertOperation, staticGetMatrixTransform, staticGetTransformABC, staticToRationalXYZ, staticTransformSpaceGroup, toCartesian, toCartesianSpin, toFractional, toFractionalSpin, toFromPrimitive, toSupercell, toUnitCell, transformUnitCell, unitCellEquals, unitize, updatePointGroup
-
Field Details
-
spinFrameStr
-
nSpins
protected int nSpins
-
-
Constructor Details
-
FileSymmetry
public FileSymmetry()
-
-
Method Details
-
mapSpins
-
addMagLatticeVectors
-
addSpinLattice
-
setSpinList
-
createSpaceGroup
- Parameters:
desiredSpaceGroupIndex-name-data- a Lstor Lst modDim- in [3+d] modulation dimension- Returns:
- true if a known space group
-
fcoord
-
getRotTransArrayAndXYZ
MMCifReader only- Parameters:
xyz-rotTransMatrix-
-
getSpaceGroupOperationCode
-
getTensor
-
getSpaceGroupTitle
-
setPrecision
public void setPrecision(float prec) -
toFractionalM
-
toUnitCellRnd
-
twelfthify
-
addInversion
public void addInversion() -
rotateAxes
-
preSymmetryFinalizeMoments
protected void preSymmetryFinalizeMoments(AtomSetCollectionReader acr, AtomSetCollection asc, String spinFrameStr, String spinFrameExt) Scale the magnetic moments of magCIF and spinCIF files. magCIF files have moments expressed as Bohr magnetons along the crystallographic axes. These have to be "fractionalized" in order to be properly handled by symmetry operations, then, in the end, turned into Cartesians (in setSpinVectors) It is not clear to me at all how this would be handled if there are subsystems. This method must be run PRIOR to applying symmetry and thus prior to creation of modulation sets.- Parameters:
acr-asc-spinFrameStr-spinFrameExt-
-
postSymmetrySetMagneticMoments
At the end, we need to rescale the vectors using SpinFramePp.- Parameters:
asc-isCartesian- true only for FindSpinGroup JSON (FSGOutputReader)- Returns:
- number of nonzero or incommensurate spins
-