本文整理汇总了Python中pymatgen.entries.compatibility.MITCompatibility.process_entries方法的典型用法代码示例。如果您正苦于以下问题:Python MITCompatibility.process_entries方法的具体用法?Python MITCompatibility.process_entries怎么用?Python MITCompatibility.process_entries使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pymatgen.entries.compatibility.MITCompatibility
的用法示例。
在下文中一共展示了MITCompatibility.process_entries方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_same_potcar_symbol
# 需要导入模块: from pymatgen.entries.compatibility import MITCompatibility [as 别名]
# 或者: from pymatgen.entries.compatibility.MITCompatibility import process_entries [as 别名]
def test_same_potcar_symbol(self):
# Same symbol different hash thus a different potcar
#Correct Hash Correct Symbol
entry = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [{'titel':'PAW_PBE Fe 06Sep2000',
'hash': '9530da8244e4dac17580869b4adab115'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
#Incorrect Hash Correct Symbol
entry2 = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [{'titel':'PAW_PBE Fe 06Sep2000',
'hash': 'DifferentHash'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
compat = MITCompatibility()
self.assertEqual(len(compat.process_entries([entry, entry2])), 2)
self.assertEqual(len(self.compat.process_entries([entry, entry2])), 1)
示例2: MITCompatibilityTest
# 需要导入模块: from pymatgen.entries.compatibility import MITCompatibility [as 别名]
# 或者: from pymatgen.entries.compatibility.MITCompatibility import process_entries [as 别名]
#.........这里部分代码省略.........
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': False,
'hubbards': None,
'run_type': 'GGA',
'potcar_spec': [{'titel':'PAW_PBE Fe 06Sep2000',
'hash': '9530da8244e4dac17580869b4adab115'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
self.assertIsNone(self.compat.process_entry(entry))
self.assertIsNotNone(self.ggacompat.process_entry(entry))
def test_wrong_psp(self):
#Wrong psp
entry = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [{'titel':'PAW_PBE Fe_pv 06Sep2000',
'hash': '994537de5c4122b7f1b77fb604476db4'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
self.assertIsNone(self.compat.process_entry(entry))
def test_element_processing(self):
#Testing processing of elements.
entry = ComputedEntry(
'O', -1, 0.0,
parameters={'is_hubbard': False, 'hubbards': {},
'potcar_spec': [{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}],
'run_type': 'GGA'})
entry = self.compat.process_entry(entry)
self.assertAlmostEqual(entry.energy, -1)
def test_same_potcar_symbol(self):
# Same symbol different hash thus a different potcar
#Correct Hash Correct Symbol
entry = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [{'titel':'PAW_PBE Fe 06Sep2000',
'hash': '9530da8244e4dac17580869b4adab115'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
#Incorrect Hash Correct Symbol
entry2 = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [{'titel':'PAW_PBE Fe 06Sep2000',
'hash': 'DifferentHash'},
{'titel': 'PAW_PBE O 08Apr2002',
'hash': '7a25bc5b9a5393f46600a4939d357982'}]})
compat = MITCompatibility()
self.assertEqual(len(compat.process_entries([entry, entry2])), 2)
self.assertEqual(len(self.compat.process_entries([entry, entry2])), 1)
def test_revert_to_symbols(self):
#Test that you can revert to potcar_symbols if potcar_spec is not present
compat = MITCompatibility()
entry = ComputedEntry(
'Fe2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_symbols': ['PAW_PBE Fe 06Sep2000', 'PAW_PBE O 08Apr2002']})
self.assertIsNotNone(compat.process_entry(entry))
#raise if check_potcar_hash is set
self.assertRaises(ValueError, self.compat.process_entry, entry)
def test_potcar_doenst_match_structure(self):
compat = MITCompatibility()
entry = ComputedEntry(
'Li2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_symbols': ['PAW_PBE Fe_pv 06Sep2000',
'PAW_PBE O 08Apr2002']})
self.assertIsNone(compat.process_entry(entry))
def test_potcar_spec_is_none(self):
compat = MITCompatibility(check_potcar_hash=True)
entry = ComputedEntry(
'Li2O3', -1, 0.0,
parameters={'is_hubbard': True,
'hubbards': {'Fe': 4.0, 'O': 0},
'run_type': 'GGA+U',
'potcar_spec': [None, None]})
self.assertIsNone(compat.process_entry(entry))