def test_interpolate(self): coords = list() coords.append([0, 0, 0]) coords.append([0.75, 0.5, 0.75]) struct = Structure(self.lattice, [self.si, self.si], coords) coords2 = list() coords2.append([0, 0, 0]) coords2.append([0.5, 0.5, 0.5]) struct2 = Structure(self.struct.lattice, [self.si, self.si], coords2) int_s = struct.interpolate(struct2, 10) for s in int_s: self.assertIsNotNone(s, "Interpolation Failed!") self.assertTrue((int_s[1][1].frac_coords == [ 0.725, 0.5, 0.725]).all()) badlattice = [[ 1, 0.00, 0.00], [0, 1, 0.00], [0.00, 0, 1]] struct2 = Structure(badlattice, [self.si, self.si], coords2) self.assertRaises(ValueError, struct.interpolate, struct2) coords2 = list() coords2.append([0, 0, 0]) coords2.append([0.5, 0.5, 0.5]) struct2 = Structure(self.struct.lattice, [self.si, Element("Fe")], coords2) self.assertRaises(ValueError, struct.interpolate, struct2)