def setUp(self): self.calc_cls = CalculationFactory('vasp.base.BasicCalculation') Common.import_paw() Paw = DataFactory('vasp.paw') self.code = Code() self.code.set_computer(self.computer) self.code.set_remote_computer_exec((self.computer, '/bin/foo')) self.paw_in = Paw.load_paw(element='In')[0] self.paw_as = Paw.load_paw(element='As')[0] self.tmp, self.tmpf = tempfile.mkstemp()
def inner(calculation_string, parameters=None): # pylint: disable=missing-docstring from aiida.orm import DataFactory parameters = parameters if parameters else {} process, inputs = get_process_inputs(calculation_string=calculation_string, code_string='vasp') structure = DataFactory('structure')() structure.set_ase(read_vasp(sample('GaAs/POSCAR'))) inputs.structure = structure paw_cls = DataFactory('vasp.paw') ga_paw = paw_cls.load_paw(family='pbe', symbol='Ga')[0] as_paw = paw_cls.load_paw(family='pbe', symbol='As')[0] inputs.paw = {'Ga': ga_paw, 'As': as_paw} kpoints = DataFactory('array.kpoints')() kpoints.set_kpoints_mesh([8, 8, 8]) inputs.kpoints = kpoints parameters_input = DataFactory('parameter')( dict=ChainMap(parameters, dict( nbands=24, gga='PE', gga_compat=False, ismear=0, lorbit=11, lsorbit=True, sigma=0.05, ))) inputs.parameters = parameters_input inputs._options.resources = {'num_machines': 1, 'num_mpiprocs_per_machine': 12} inputs._options.withmpi = True inputs._options.queue_name = 'dphys_compute' inputs._options.max_wallclock_seconds = 600 return process, inputs
'gga_compat': False, 'encut': 280, 'ediff': 1e-5, 'ismear': 0, 'lorbit': 11, 'magmom': 3 * nions * [0.], 'lsorbit': True, 'nbands': nbands, 'sigma': 0.05, 'system': os.path.basename(cifname), 'npar': 8, })) tvc.use_structure(structure) for kind in structure.get_kind_names(): tvc.use_paw(Paw.load_paw(family='LDA', symbol=kind)[0], kind=kind) tvc.use_kpoints(kp) tvc.set_computer(Computer.get('monch')) tvc.set_queue_name('dphys_compute') tvc.set_resources({'num_machines': nbands / 8, 'num_mpiprocs_per_machine': 8}) tvc.set_max_memory_kb(16000000) tvc.set_parser_name('vasp.vasp5') tag = sys.argv[2] q = QueryTool() q.set_class(Tvc) q.add_extra_filter('tag', '=', tag) ql = map(lambda c: c.get_extra('test-nr'), q.run_query())