def testQueries(self):
        """ Test the configuration's query functions. """
        config = KMCConfiguration.__new__(KMCConfiguration)

        c0_ref = numpy.random.random()
        c1_ref = numpy.random.random()
        c2_ref = numpy.random.random()

        # Set the backend proxy.
        class BackendProxy(object):
            def __init__(self):
                pass
            def elements(self):
                return ("B", "F", "A")
            def atomIDElements(self):
                return ("A", "B", "F")
            def atomIDCoordinates(self):
                return (Backend.Coordinate(c0_ref,c1_ref,c2_ref),)

        config._KMCConfiguration__backend = BackendProxy()

        # Query and check.
        atom_id_types  = config.atomIDTypes()
        atom_id_coords = config.atomIDCoordinates()
        lattice_types  = config.types()

        self.assertEqual(atom_id_types, ("A","B","F"))
        self.assertEqual(lattice_types, ["B","F","A"])

        self.assertAlmostEqual(atom_id_coords[0][0], c0_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][1], c1_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][2], c2_ref, 10)
Beispiel #2
0
    def testQueries(self):
        """ Test the configuration's query functions. """
        config = KMCConfiguration.__new__(KMCConfiguration)

        c0_ref = numpy.random.random()
        c1_ref = numpy.random.random()
        c2_ref = numpy.random.random()

        # Set the backend proxy.
        class BackendProxy(object):
            def __init__(self):
                pass

            def elements(self):
                return ("B", "F", "A")

            def atomIDElements(self):
                return ("A", "B", "F")

            def atomIDCoordinates(self):
                return (Backend.Coordinate(c0_ref, c1_ref, c2_ref), )

        config._KMCConfiguration__backend = BackendProxy()

        # Query and check.
        atom_id_types = config.atomIDTypes()
        atom_id_coords = config.atomIDCoordinates()
        lattice_types = config.types()

        self.assertEqual(atom_id_types, ("A", "B", "F"))
        self.assertEqual(lattice_types, ["B", "F", "A"])

        self.assertAlmostEqual(atom_id_coords[0][0], c0_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][1], c1_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][2], c2_ref, 10)
Beispiel #3
0
    def testQueries(self):
        """ Test the configuration's query functions. """
        config = KMCConfiguration.__new__(KMCConfiguration)
        config._KMCConfiguration__use_buckets = False

        c0_ref = numpy.random.random()
        c1_ref = numpy.random.random()
        c2_ref = numpy.random.random()

        # Set the backend proxy.
        class BackendProxy(object):
            def __init__(self):
                pass

            def elements(self):
                return ("B", "F", "A")

            def atomIDElements(self):
                return ("A", "B", "F")

            def atomIDCoordinates(self):
                return (Backend.Coordinate(c0_ref, c1_ref, c2_ref), )

            def movedAtomIDs(self):
                return (123, 234)

            def latestEventProcess(self):
                return 995976943

            def latestEventSite(self):
                return 556462676

            def particlesPerType(self):
                return (123, 467, 432)

        config._KMCConfiguration__backend = BackendProxy()

        # Query and check.
        atom_id_types = config.atomIDTypes()
        atom_id_coords = config.atomIDCoordinates()
        lattice_types = config.types()
        moved_atom_ids = config.movedAtomIDs()
        latest_event_process = config.latestEventProcess()
        latest_event_site = config.latestEventSite()
        particles_per_type = config.particlesPerType()

        self.assertEqual(atom_id_types, ("A", "B", "F"))
        self.assertEqual(lattice_types, ["B", "F", "A"])

        self.assertAlmostEqual(atom_id_coords[0][0], c0_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][1], c1_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][2], c2_ref, 10)

        self.assertEqual(moved_atom_ids, (123, 234))
        self.assertEqual(latest_event_process, 995976943)
        self.assertEqual(latest_event_site, 556462676)
        self.assertEqual(particles_per_type, (123, 467, 432))
Beispiel #4
0
    def testQueries(self):
        """ Test the configuration's query functions. """
        config = KMCConfiguration.__new__(KMCConfiguration)
        config._KMCConfiguration__use_buckets = False

        c0_ref = numpy.random.random()
        c1_ref = numpy.random.random()
        c2_ref = numpy.random.random()

        # Set the backend proxy.
        class BackendProxy(object):
            def __init__(self):
                pass
            def elements(self):
                return ("B", "F", "A")
            def atomIDElements(self):
                return ("A", "B", "F")
            def atomIDCoordinates(self):
                return (Backend.Coordinate(c0_ref,c1_ref,c2_ref),)
            def movedAtomIDs(self):
                return (123, 234)
            def latestEventProcess(self):
                return 995976943
            def latestEventSite(self):
                return 556462676
            def particlesPerType(self):
                return (123, 467, 432)

        config._KMCConfiguration__backend = BackendProxy()

        # Query and check.
        atom_id_types        = config.atomIDTypes()
        atom_id_coords       = config.atomIDCoordinates()
        lattice_types        = config.types()
        moved_atom_ids       = config.movedAtomIDs()
        latest_event_process = config.latestEventProcess()
        latest_event_site    = config.latestEventSite()
        particles_per_type   = config.particlesPerType()

        self.assertEqual(atom_id_types, ("A","B","F"))
        self.assertEqual(lattice_types, ["B","F","A"])

        self.assertAlmostEqual(atom_id_coords[0][0], c0_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][1], c1_ref, 10)
        self.assertAlmostEqual(atom_id_coords[0][2], c2_ref, 10)

        self.assertEqual(moved_atom_ids,      (123, 234))
        self.assertEqual(latest_event_process, 995976943)
        self.assertEqual(latest_event_site,    556462676)
        self.assertEqual(particles_per_type,  (123, 467, 432))