public class SymmetryOperation
extends javajs.util.M4
Modifier and Type | Field and Description |
---|---|
private static javajs.util.P3 |
atomTest |
private javajs.util.V3 |
centering |
private boolean |
doNormalize
"normalization" is the process of adjusting symmetry operator definitions
such that the center of geometry of a molecule is within the 555 unit cell
for each operation.
|
private static java.lang.String[] |
fortyeigths |
(package private) int |
index |
private java.util.Hashtable<java.lang.String,java.lang.Object> |
info |
(package private) boolean |
isBio |
(package private) boolean |
isCenteringOp |
(package private) boolean |
isFinalized |
(package private) static java.lang.String[] |
labelsXn |
(package private) static java.lang.String[] |
labelsXnSub |
(package private) static java.lang.String[] |
labelsXYZ |
(package private) float[] |
linearRotTrans |
private float |
magOp |
(package private) int |
modDim |
private java.lang.String[] |
myLabels |
private int |
opId |
(package private) javajs.util.Matrix |
rsvs |
private javajs.util.Matrix |
sigma |
(package private) java.lang.String |
subsystemCode |
(package private) int |
timeReversal |
private static java.lang.String[] |
twelfths |
private boolean |
unCentered |
(package private) java.lang.String |
xyz |
(package private) java.lang.String |
xyzOriginal |
Constructor and Description |
---|
SymmetryOperation(SymmetryOperation op,
javajs.util.P3[] atoms,
int atomIndex,
int countOrId,
boolean doNormalize) |
Modifier and Type | Method and Description |
---|---|
(package private) static float |
approxF(float f) |
private static javajs.util.M4 |
div12(javajs.util.M4 op) |
(package private) void |
doFinalize() |
(package private) java.lang.String |
dumpInfo() |
(package private) static java.lang.String |
dumpSeitz(javajs.util.M4 s,
boolean isCanonical) |
private static java.lang.String |
fc(float x) |
(package private) static java.lang.String |
fcoord(javajs.util.T3 p) |
(package private) java.lang.String |
fixMagneticXYZ(javajs.util.M4 m,
java.lang.String xyz,
boolean addMag) |
(package private) static java.lang.String |
fortyEighthsOf(float n48ths) |
(package private) javajs.util.V3 |
getCentering()
assumption here is that these are in order of sets, as in ITA
|
java.util.Map<java.lang.String,java.lang.Object> |
getInfo() |
(package private) float |
getMagneticOp()
Magnetic spin is a pseudo (or "axial") vector.
|
(package private) static java.lang.String |
getMatrixFromString(SymmetryOperation op,
java.lang.String xyz,
float[] linearRotTrans,
boolean allowScaling)
Convert the Jones-Faithful notation
"x, -z+1/2, y" or "x1, x3-1/2, x2, x5+1/2, -x6+1/2, x7..."
to a linear array
Also allows a-b,-5a-5b,-c;0,0,0 format
|
static javajs.util.M4 |
getMatrixFromXYZ(java.lang.String xyz) |
(package private) java.lang.String |
getXyz(boolean normalized) |
static java.lang.String |
getXYZFromMatrix(javajs.util.M4 mat,
boolean is12ths,
boolean allPositive,
boolean halfOrLess) |
(package private) static java.lang.String |
getXYZFromRsVs(javajs.util.Matrix rs,
javajs.util.Matrix vs,
boolean is12ths) |
(package private) static void |
newPoint(javajs.util.M4 m,
javajs.util.P3 atom1,
javajs.util.P3 atom2,
int x,
int y,
int z) |
private static float |
normalize48ths(float iValue,
boolean doNormalize) |
private static float |
normalizeTwelfths(float iValue,
boolean doNormalize) |
private static java.lang.String |
plusMinus(java.lang.String strT,
float x,
java.lang.String sx) |
(package private) static java.lang.String |
replaceXn(java.lang.String xyz,
int n) |
(package private) javajs.util.V3[] |
rotateAxes(javajs.util.V3[] vectors,
UnitCell unitcell,
javajs.util.P3 ptTemp,
javajs.util.M3 mTemp) |
(package private) boolean |
setFromMatrix(float[] offset,
boolean isReverse) |
private void |
setGamma(boolean isReverse)
rsvs is the superspace group rotation-translation matrix.
|
private void |
setMatrix(boolean isReverse) |
(package private) boolean |
setMatrixFromXYZ(java.lang.String xyz,
int modDim,
boolean allowScaling) |
private void |
setModDim(int dim) |
static void |
setOffset(javajs.util.M4 m,
javajs.util.P3[] atoms,
int atomIndex,
int count) |
(package private) void |
setSigma(java.lang.String subsystemCode,
javajs.util.Matrix sigma) |
(package private) void |
setTimeReversal(int magRev)
set the time reversal, and indicate internally in xyz as appended ",m" or ",-m"
|
java.lang.String |
toString()
Returns a string that contains the values of this Matrix4f.
|
(package private) static java.lang.String |
twelfthsOf(float n12ths) |
private static java.lang.String |
xyzFraction12(float n12ths,
boolean allPositive,
boolean halfOrLess) |
private static java.lang.String |
xyzFraction48ths(float n48ths,
boolean allPositive,
boolean halfOrLess) |
determinant4, equals, getColumn, getElement, getRotationScale, getRow, getTranslation, hashCode, invert, mul, mul2, newA16, newM4, newMV, rotTrans, rotTrans2, round, scale, setA, setAsXYRotation, setAsXZRotation, setAsYZRotation, setColumn4, setColumnA, setElement, setIdentity, setM4, setMV, setRotationScale, setRowA, setToAA, setToM3, setTranslation, setZero, sub, transform, transform2, transpose
java.lang.String xyzOriginal
java.lang.String xyz
private boolean doNormalize
boolean isFinalized
private int opId
private javajs.util.V3 centering
private static javajs.util.P3 atomTest
private java.lang.String[] myLabels
int modDim
float[] linearRotTrans
javajs.util.Matrix rsvs
boolean isBio
private javajs.util.Matrix sigma
int index
java.lang.String subsystemCode
int timeReversal
private static final java.lang.String[] twelfths
private static final java.lang.String[] fortyeigths
static final java.lang.String[] labelsXYZ
static final java.lang.String[] labelsXn
static final java.lang.String[] labelsXnSub
private boolean unCentered
boolean isCenteringOp
private float magOp
private java.util.Hashtable<java.lang.String,java.lang.Object> info
SymmetryOperation(SymmetryOperation op, javajs.util.P3[] atoms, int atomIndex, int countOrId, boolean doNormalize)
op
- atoms
- atomIndex
- countOrId
- doNormalize
- void setSigma(java.lang.String subsystemCode, javajs.util.Matrix sigma)
private void setGamma(boolean isReverse)
isReverse
- void doFinalize()
private static javajs.util.M4 div12(javajs.util.M4 op)
java.lang.String getXyz(boolean normalized)
static void newPoint(javajs.util.M4 m, javajs.util.P3 atom1, javajs.util.P3 atom2, int x, int y, int z)
java.lang.String dumpInfo()
static final java.lang.String dumpSeitz(javajs.util.M4 s, boolean isCanonical)
boolean setMatrixFromXYZ(java.lang.String xyz, int modDim, boolean allowScaling)
private void setModDim(int dim)
private void setMatrix(boolean isReverse)
boolean setFromMatrix(float[] offset, boolean isReverse)
public static javajs.util.M4 getMatrixFromXYZ(java.lang.String xyz)
static java.lang.String getMatrixFromString(SymmetryOperation op, java.lang.String xyz, float[] linearRotTrans, boolean allowScaling)
op
- xyz
- linearRotTrans
- allowScaling
- static java.lang.String replaceXn(java.lang.String xyz, int n)
private static final java.lang.String xyzFraction12(float n12ths, boolean allPositive, boolean halfOrLess)
private static final java.lang.String xyzFraction48ths(float n48ths, boolean allPositive, boolean halfOrLess)
static final java.lang.String twelfthsOf(float n12ths)
static final java.lang.String fortyEighthsOf(float n48ths)
private static java.lang.String plusMinus(java.lang.String strT, float x, java.lang.String sx)
private static float normalizeTwelfths(float iValue, boolean doNormalize)
private static float normalize48ths(float iValue, boolean doNormalize)
public static final java.lang.String getXYZFromMatrix(javajs.util.M4 mat, boolean is12ths, boolean allPositive, boolean halfOrLess)
public static void setOffset(javajs.util.M4 m, javajs.util.P3[] atoms, int atomIndex, int count)
javajs.util.V3[] rotateAxes(javajs.util.V3[] vectors, UnitCell unitcell, javajs.util.P3 ptTemp, javajs.util.M3 mTemp)
static java.lang.String fcoord(javajs.util.T3 p)
private static java.lang.String fc(float x)
static float approxF(float f)
static java.lang.String getXYZFromRsVs(javajs.util.Matrix rs, javajs.util.Matrix vs, boolean is12ths)
public java.lang.String toString()
javajs.util.M4
toString
in class javajs.util.M4
float getMagneticOp()
void setTimeReversal(int magRev)
magRev
- javajs.util.V3 getCentering()
java.lang.String fixMagneticXYZ(javajs.util.M4 m, java.lang.String xyz, boolean addMag)
public java.util.Map<java.lang.String,java.lang.Object> getInfo()