def get_surface_area(self, n): """ Surface area of the nth vacancy Args: n: Index of symmetrically distinct vacancies list Returns: floating number representing volume of vacancy """ if not self._sa: self._vol = [] self._sa = [] um = [[1, 0, 0], [0, 1, 0], [0, 0, 1]] supercells = self.make_supercells_with_defects(um)[1:] rad_dict = self.struct_radii for sc in supercells: vol, sa = get_void_volume_surfarea(sc, rad_dict) self._vol.append(vol) self._sa.append(sa) return self._sa[n]
def get_volume(self, n): """ Volume of the nth vacancy Args: n: Index of symmetrically distinct vacancies list Returns: floating number representing volume of vacancy """ if not self._vol: self._vol = [] self._sa = [] um = [[1, 0, 0], [0, 1, 0], [0, 0, 1]] sc = self.make_supercells_with_defects(um)[1:] rad_dict = self.struct_radii for i in range(len(sc)): site_radi = rad_dict[self._defect_sites[i].specie.symbol] vol, sa = get_void_volume_surfarea(sc[i], rad_dict) self._vol.append(vol) self._sa.append(sa) return self._vol[n]
def get_volume(self, n): """ Volume of the nth vacancy Args: n: Index of symmetrically distinct vacancies list Returns: floating number representing volume of vacancy """ if not self._vol: self._vol = [] self._sa = [] um = [[1, 0, 0], [0, 1, 0], [0, 0, 1]] sc = self.make_supercells_with_defects(um)[1:] rad_dict = self.struct_radii for i in range(len(sc)): site_radi = rad_dict[self._defect_sites[i].species_string] vol, sa = get_void_volume_surfarea(sc[i], rad_dict) self._vol.append(vol) self._sa.append(sa) return self._vol[n]
def test_void_volume_surface_area(self): pass vol, sa = get_void_volume_surfarea(self._vac_struct, self._radii) #print "vol: ", vol, "sa: ", sa self.assertIsInstance(vol, float) self.assertIsInstance(sa, float)