Exemple #1
0
 def testElementsAfter(self):
     """ Test the elements after query function. """
     process = KMCProcess.__new__(KMCProcess)
     ref = ["123"]
     process.__elements_after = ref
     # Check by reference.
     self.assertTrue( process.__elements_after == ref )
Exemple #2
0
 def testElementsBefore(self):
     """ Test the elements before query function. """
     process = KMCProcess.__new__(KMCProcess)
     ref = ["123"]
     process.__elements_before = ref
     # Check by reference.
     self.assertTrue( process.__elements_before == ref )
Exemple #3
0
 def testElementsAfter(self):
     """ Test the elements after query function. """
     process = KMCProcess.__new__(KMCProcess)
     ref = ["123"]
     process.__elements_after = ref
     # Check by reference.
     self.assertTrue(process.__elements_after == ref)
Exemple #4
0
 def testElementsBefore(self):
     """ Test the elements before query function. """
     process = KMCProcess.__new__(KMCProcess)
     ref = ["123"]
     process.__elements_before = ref
     # Check by reference.
     self.assertTrue(process.__elements_before == ref)
Exemple #5
0
    def testReconstructMoveVectors(self):
        """ Test that the helper function to reconstruct move vectors works as intended. """
        # Get an empty process.
        process = KMCProcess.__new__(KMCProcess)

        # Give it coordinate values.
        coordinates = [[ 0.0, 0.0, 0.0],
                       [ 1.0, 2.0, 3.0],
                       [-1.0, 1.0, 5.0],
                       [ 8.0, 4.0, 7.0]]
        process._coordinates = coordinates

        # Give it element values.
        process._elements_before = ["A","B","D","F"]
        process._elements_after  = ["A","F","D","B"]

        move_vectors = process._KMCProcess__reconstructMoveVectors()

        self.assertTrue( move_vectors is not None )
        self.assertEqual( len(move_vectors), 2 )

        self.assertEqual( move_vectors[0][0], 1 )
        self.assertEqual( move_vectors[1][0], 3 )

        ref_v1 = numpy.array([ 7.,  2.,  4.])
        norm = numpy.linalg.norm(move_vectors[0][1] - ref_v1)
        self.assertAlmostEqual( norm, 0.0, 10 )

        ref_v2 = numpy.array([-7., -2., -4.])
        norm = numpy.linalg.norm(move_vectors[1][1] - ref_v2)
        self.assertAlmostEqual( norm, 0.0, 10 )

        # Give it  new element values.
        process._elements_before = ["A","B","G","F"]
        process._elements_after  = ["A","F","D","B"]

        move_vectors = process._KMCProcess__reconstructMoveVectors()

        self.assertTrue( move_vectors is None )
Exemple #6
0
    def testReconstructMoveVectors(self):
        """ Test that the helper function to reconstruct move vectors works as intended. """
        # Get an empty process.
        process = KMCProcess.__new__(KMCProcess)

        # Give it coordinate values.
        coordinates = [[ 0.0, 0.0, 0.0],
                       [ 1.0, 2.0, 3.0],
                       [-1.0, 1.0, 5.0],
                       [ 8.0, 4.0, 7.0]]
        process._KMCProcess__coordinates = coordinates

        # Give it element values.
        process._KMCProcess__elements_before = ["A","B","D","F"]
        process._KMCProcess__elements_after  = ["A","F","D","B"]

        move_vectors = process._KMCProcess__reconstructMoveVectors()

        self.assertTrue( move_vectors is not None )
        self.assertEqual( len(move_vectors), 2 )

        self.assertEqual( move_vectors[0][0], 1 )
        self.assertEqual( move_vectors[1][0], 3 )

        ref_v1 = numpy.array([ 7.,  2.,  4.])
        norm = numpy.linalg.norm(move_vectors[0][1] - ref_v1)
        self.assertAlmostEqual( norm, 0.0, 10 )

        ref_v2 = numpy.array([-7., -2., -4.])
        norm = numpy.linalg.norm(move_vectors[1][1] - ref_v2)
        self.assertAlmostEqual( norm, 0.0, 10 )

        # Give it  new element values.
        process._KMCProcess__elements_before = ["A","B","G","F"]
        process._KMCProcess__elements_after  = ["A","F","D","B"]

        move_vectors = process._KMCProcess__reconstructMoveVectors()

        self.assertTrue( move_vectors is None )