コード例 #1
0
    def test_constructor_assertions(self):
        with self.assertRaises(ValueError):
            # noinspection PyUnusedLocal
            poor_tester = AbinsModules.KpointsData(num_k=0.1, num_atoms=2)

        with self.assertRaises(ValueError):
            # noinspection PyUnusedLocal
            poor_tester = AbinsModules.KpointsData(num_k=1, num_atoms=-2)
コード例 #2
0
    def _rearrange_data(self, data=None):
        """
        This method rearranges data read from input ab initio file.
        :param data: dictionary with the data to rearrange
        :returns: Returns an object of type AbinsData
        """

        k_points = AbinsModules.KpointsData(num_atoms=self._num_atoms,
                                            num_k=self._num_k)

        # 1D [k] (one entry corresponds to weight of one k-point)
        k_points.set({
            "weights": data["weights"],
            # 2D [k][3] (one entry corresponds to one coordinate of particular k-point)
            "k_vectors": data["k_vectors"],
            # 2D  array [k][freq] (one entry corresponds to one frequency for the k-point k)
            "frequencies": data["frequencies"],
            # 4D array [k][atom_n][freq][3] (one entry corresponds to
            # one coordinate for atom atom_n, frequency  freq and k-point k )
            "atomic_displacements": data["atomic_displacements"],
            "unit_cell": data["unit_cell"]
        })

        atoms = AbinsModules.AtomsDaTa(num_atoms=self._num_atoms)
        atoms.set(data["atoms"])

        result_data = AbinsModules.AbinsData()
        result_data.set(k_points_data=k_points, atoms_data=atoms)
        return result_data
コード例 #3
0
 def setUp(self):
     self.tester = AbinsModules.KpointsData(num_k=3, num_atoms=2)