Esempio n. 1
0
 def test_from_defect_structure_complex(self):
     perfect_structure = self.get_structure_by_name(name="MgO64atoms")
     expected = self.MgO_complex.as_dict()
     actual = DefectEntry.from_defect_structure(
         defect_structure=self.initial_structure_complex,
         perfect_structure=perfect_structure,
         defect_name="complex_2").as_dict()
     for d in expected:
         self.assertEqual(expected[d], actual[d])
Esempio n. 2
0
def defect_entry(args):
    if args.print:
        print(DefectEntry.load_json(args.json))
    elif args.make_defect_entry:
        defect_structure = Structure.from_file(args.defect_poscar)
        perfect_structure = Structure.from_file(args.perfect_poscar)

        defect_entry_from_yaml = DefectEntry.from_defect_structure(
            defect_structure=defect_structure,
            perfect_structure=perfect_structure,
            displacement_distance=args.displacement_distance,
            defect_name=args.defect_name)

        defect_entry_from_yaml.to_json_file(args.json)
    else:
        logger.critical("Set make_defect_entry or print option.")