def test_copy_from_dir(self): out_name = 'FW_copy_from_dir.yaml' fw = VaspFirework(self.input, config_file=self.config_file) fw.copy_files_from_previous('WAVECAR', 'WAVEDER', mode='copy', dir='../../test_files/VASP_INTERFACES_TEST_FILES', ignore_errors=True) fw_dic = fw.Firework.as_dict() for i in ['created_on', 'updated_on', 'fw_id']: del fw_dic[i] gdic = {'name': 'vaspfw', 'spec': {'_tasks': [{'_fw_name': '{{pymatgen.io.vasp.interfaces.WriteVaspInputTask}}', 'custom_params': {'user_kpts_settings': {'kpts': [6, 6, 6], 'kpts_shift': [0, 0, 0], 'kpts_style': 'Gamma'}}, 'input_set_params': {'user_incar_settings': {'ALGO': 'Normal', 'CSHIFT': 0.1, 'LOPTICS': '.TRUE.', 'NEDOS': 4096, 'SIGMA': 0.01}}, 'structure': 'SiC_0.cif', 'vasp_input_set': 'MinimalVaspInputSet'}, {'_fw_name': '{{pymatgen.io.vasp.interfaces.VaspTransferTask}}', 'dir': '../../test_files/VASP_INTERFACES_TEST_FILES', 'files': ['WAVECAR', 'WAVEDER'], 'ignore_errors': True, 'mode': 'copy'}, {'_fw_name': '{{pymatgen.io.vasp.interfaces.RunCustodianTask}}', 'handler_params': {}, 'handlers': []}]}} self.assertDictEqual(fw_dic, gdic, msg=None)
vasp3.LHFCALC='.TRUE.' vasp3.HFSCREEN=0.2 vasp3.LSPECTRAL='False' vasp3.NEDOS=4096 vasp3.NOMEGA=1024 vasp3.NBANDS=nbands vasp3.LOPTICS='False' vasp3.LRPA='.FALSE.' vasp3.LFXC='True' vasp3.NKREDLFX=3 vasp3.NKREDLFY=3 vasp3.NKREDLFZ=3 vasp3.KPAR=kpar_chi vasp3.kpts_style='Gamma' vasp3.kpts=[6,6,6] vasp3.kpts_shift=[0,0,0] fw2=VaspFirework(vasp3, name=mname) fw2.copy_files_from_previous('WAVECAR', 'WAVEDER', mode='copy', ignore_errors=True) # Make Sequential Workflow #wf1 = VASPWorkflow(fw1,fw2,fw3, name=material_file_name.split('.')[0]) wf=VaspWorkflow(fw1,fw2,name=material_file_name.split('.')[0]) wf.to_file(material_file_name) # save specification to yaml file for later inspection # or manual add to lauchpad with lpad script #wf.add_wf_to_launchpad()