def test_VaspInterface(self): """ Testing the VASP code interface """ interface = get_code_interface('VASP') self.assertIsInstance(interface, VaspInterface) self.assertEqual(len(interface.conv_pars), 3) self.assertEqual(len(interface.supported_methods), 4) self.assertFalse(interface.hartree_parameters) self.assertIsNone(interface.read_ps_dir())
def __init__(self): self.data = { 'code': 'ABINIT', 'source': 'mp-vasp', 'mode': 'ceci', 'test': False, 'converge': False, 'functional': 'PBE', 'prec': 'm', 'kp_grid_dens': 500, 'tol': 0.0001 } self.warnings = [] self.errors = [] self.code_interface = get_code_interface(self.get_code())
def __init__(self, structure, spec): self.structure = structure self.spec = spec self.data = {} self.code_interface = get_code_interface(spec['code']) self.conv_res = {'control': {}, 'values': {}, 'derivatives': {}} self.full_res = {'all_done': False, 'grid': 0} self.final_values = () if structure is not None: self.name = s_name(structure) else: self.name = 'notknown' self.type = { 'parm_scr': False, 'full': False, 'single': False, 'test': False }
def test_AbinitInterface(self): """ Testing the ABINIT code interface """ interface = get_code_interface('ABINIT') self.assertIsInstance(interface, AbinitInterface) self.assertEqual(len(interface.conv_pars), 3) self.assertEqual(len(interface.supported_methods), 2) self.assertFalse(interface.all_done) self.assertEqual(interface.grid, 0) self.assertTrue(interface.hartree_parameters) self.assertFalse(interface.converged) self.assertEqual(len(interface.other_vars), 1166) self.assertEqual(interface.gw_data_file, 'out_SIGRES.nc') w_path = os.path.join('HTGW', 'test_files', 'SiC_test_case', 'ref_res', 'SiC_SiC.cif', 'w0', 't0', 'outdata') os.listdir(w_path) print(interface.read_convergence_data(w_path)) self.assertEqual(len(interface.read_convergence_data(w_path)), 4) self.assertTrue(interface.read_convergence_data(w_path)['full_width'] > 0.0) self.assertIsNone(interface.workdir) conv_res = {'values': {'nbands': 10, 'ecut': 10, 'ecuteps': 10}} self.assertEqual(interface.conv_res_string(conv_res), "{'nscf_nbands': 10, 'ecut': 10, 'ecuteps': 10}") self.assertEqual(interface.test_methods({'jobs': ['prep', 'G0W0']}), []) self.assertEqual(interface.test_methods({'jobs': ['scGW']}), ['scGW is not supported'])
def update_code_interface(self): self.code_interface = get_code_interface(self.get_code())