def test_creation_rotation(self):
        symOpPlus = SymmetryOperationFactory.createSymOp("-y,x-y,z")
        symElePlus = SymmetryElementFactory.createSymElement(symOpPlus)

        self.assertEquals(symElePlus.getRotationSense(), SymmetryElement.RotationSense.Positive)

        symOpMinus = SymmetryOperationFactory.createSymOp("-x+y,-x,z")
        symEleMinus = SymmetryElementFactory.createSymElement(symOpMinus)

        self.assertEquals(symEleMinus.getRotationSense(), SymmetryElement.RotationSense.Negative)
Exemple #2
0
    def test_creation_rotation(self):
        symOpPlus = SymmetryOperationFactory.createSymOp("-y,x-y,z")
        symElePlus = SymmetryElementFactory.createSymElement(symOpPlus)

        self.assertEqual(symElePlus.getRotationSense(), SymmetryElement.RotationSense.Positive)

        symOpMinus = SymmetryOperationFactory.createSymOp("-x+y,-x,z")
        symEleMinus = SymmetryElementFactory.createSymElement(symOpMinus)

        self.assertEqual(symEleMinus.getRotationSense(), SymmetryElement.RotationSense.Negative)
    def test_creation_axis(self):
        symOp = SymmetryOperationFactory.createSymOp("x,y,-z")
        symEle = SymmetryElementFactory.createSymElement(symOp)

        self.assertEquals(symEle.getHMSymbol(), "m")
        self.assertEquals(symEle.getAxis(), V3D(0,0,1))

        rotation = SymmetryOperationFactory.createSymOp("x,-y,-z")
        rotationElement = SymmetryElementFactory.createSymElement(rotation)

        self.assertEquals(rotationElement.getHMSymbol(), "2")
        self.assertEquals(rotationElement.getAxis(), V3D(1,0,0))
Exemple #4
0
    def test_creation_axis(self):
        symOp = SymmetryOperationFactory.createSymOp("x,y,-z")
        symEle = SymmetryElementFactory.createSymElement(symOp)

        self.assertEquals(symEle.getHMSymbol(), "m")
        self.assertEquals(symEle.getAxis(), V3D(0, 0, 1))

        rotation = SymmetryOperationFactory.createSymOp("x,-y,-z")
        rotationElement = SymmetryElementFactory.createSymElement(rotation)

        self.assertEquals(rotationElement.getHMSymbol(), "2")
        self.assertEquals(rotationElement.getAxis(), V3D(1, 0, 0))
Exemple #5
0
    def test_apply(self):
        symOp = SymmetryOperationFactory.createSymOp("x,y,-z")

        hkl1 = V3D(1, 1, 1)
        hkl2 = symOp.apply(hkl1)

        self.assertEquals(hkl2, V3D(1, 1, -1))
        self.assertEquals(symOp.transformHKL(hkl2), hkl1)
    def test_apply(self):
        symOp = SymmetryOperationFactory.createSymOp("x,y,-z")

        hkl1 = V3D(1, 1, 1)
        hkl2 = symOp.apply(hkl1)

        self.assertEquals(hkl2, V3D(1, 1, -1))
        self.assertEquals(symOp.transformHKL(hkl2), hkl1)
	def _symmetrize_by_generators(self, mdws, axisAligned, basis0, basis1, basis2, basis3,
		normalizeBasisVectors, translation, outputExtents, outputBins,
		numOp, symOp1, symOp2, symOp3, symOp4, symOp5):
		
		unit0, basisVec0 = self._destringify(basis0)
		unit1, basisVec1 = self._destringify(basis1)
		unit2, basisVec2 = self._destringify(basis2)
		unit3, basisVec3 = self._destringify(basis3)

		symOpList = [symOp1, symOp2, symOp3, symOp4, symOp5]
		for i in range(numOp):
			basisVec0_str = None
			basisVec1_str = None
			basisVec2_str = None
			basisVec3_str = None

			symOp = SymmetryOperationFactory.createSymOp(symOpList[i])

			if basisVec0 is not None:
				coordinatesPrime = symOp.transformCoordinates(basisVec0)
				basisVec0_str = unit0[0] + ',' + unit0[1] + ',' + str(coordinatesPrime.getX()) \
							+ ',' + str(coordinatesPrime.getY()) + ',' + str(coordinatesPrime.getZ()) + ',' + '0'
			if basisVec1 is not None:
				coordinatesPrime = symOp.transformCoordinates(basisVec1)
				basisVec1_str = unit1[0] + ',' + unit1[1] + ',' + str(coordinatesPrime.getX()) \
							+ ',' + str(coordinatesPrime.getY()) + ',' + str(coordinatesPrime.getZ()) + ',' + '0'
			if basisVec2 is not None:
				coordinatesPrime = symOp.transformCoordinates(basisVec2)
				basisVec2_str = unit2[0] + ',' + unit2[1] + ',' + str(coordinatesPrime.getX()) \
							+ ',' + str(coordinatesPrime.getY()) + ',' + str(coordinatesPrime.getZ()) + ',' + '0'
			if basisVec3 is not None:
				coordinatesPrime = symOp.transformCoordinates(basisVec3)
				basisVec3_str = unit3[0] + ',' + unit3[1] + ',' + str(coordinatesPrime.getX()) \
							+ ',' + str(coordinatesPrime.getY()) + ',' + str(coordinatesPrime.getZ()) + ',' + '0'

			self._binned_ws += BinMD(InputWorkspace=mdws, AxisAligned=axisAligned,
				BasisVector0=basisVec0_str, BasisVector1=basisVec1_str,
				BasisVector2=basisVec2_str, BasisVector3=basisVec3_str,
				NormalizeBasisVectors=normalizeBasisVectors, Translation=translation,
				OutputExtents=outputExtents, OutputBins=outputBins)

		return
Exemple #8
0
    def test_creation(self):
        self.assertRaises(RuntimeError, SymmetryOperationFactory.createSymOp,
                          "none")

        SymmetryOperationFactory.createSymOp("x,y,-z")
Exemple #9
0
 def test_getInfo(self):
     symOp = SymmetryOperationFactory.createSymOp("x, y, -z")
     self.assertEquals(symOp.getOrder(), 2)
     self.assertEquals(symOp.getIdentifier(), "x,y,-z")
    def test_creation_no_rotation(self):
        symOpNone = SymmetryOperationFactory.createSymOp("-x,-y,-z")
        symEleNone = SymmetryElementFactory.createSymElement(symOpNone)

        self.assertEquals(symEleNone.getRotationSense(), SymmetryElement.RotationSense.NoRotation)
    def test_creation_no_axis(self):
        symOp = SymmetryOperationFactory.createSymOp("-x,-y,-z")
        symEle = SymmetryElementFactory.createSymElement(symOp)

        self.assertEquals(symEle.getHMSymbol(), "-1")
        self.assertEquals(symEle.getAxis(), V3D(0,0,0))
Exemple #12
0
    def test_creation_no_rotation(self):
        symOpNone = SymmetryOperationFactory.createSymOp("-x,-y,-z")
        symEleNone = SymmetryElementFactory.createSymElement(symOpNone)

        self.assertEquals(symEleNone.getRotationSense(),
                          SymmetryElement.RotationSense.NoRotation)
Exemple #13
0
    def test_creation_no_axis(self):
        symOp = SymmetryOperationFactory.createSymOp("-x,-y,-z")
        symEle = SymmetryElementFactory.createSymElement(symOp)

        self.assertEquals(symEle.getHMSymbol(), "-1")
        self.assertEquals(symEle.getAxis(), V3D(0, 0, 0))
    def test_creation(self):
        self.assertRaises(RuntimeError, SymmetryOperationFactory.createSymOp, "none")

        SymmetryOperationFactory.createSymOp("x,y,-z")
 def test_getInfo(self):
     symOp = SymmetryOperationFactory.createSymOp("x, y, -z")
     self.assertEquals(symOp.getOrder(), 2)
     self.assertEquals(symOp.getIdentifier(), "x,y,-z")