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)
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
def setUp(self): self.tester = AbinsModules.KpointsData(num_k=3, num_atoms=2)